What is Cloud Computing?
Cloud computing is the practice of using a network of remote servers hosted on the internet to store, manage, and process data, rather than a local server or a personal computer. It is the driving force behind companies like Facebook, Netflix, YouTube, and Skype. The advantages are so compelling that even desktop-based stalwarts like Adobe Photoshop and Microsoft Office have transitioned to cloud-based delivery models.
Examples of Cloud Computing
“Cloud computing” is actually a broad term that can encompass many different cloud-provisioned services. The most familiar is cloud storage, the provisioning of storage space through the internet, accessible from anywhere and scalable to any size. Dropbox, Google Drive, and Box are examples of services that are built primarily around this aspect of cloud computing. Cloud computing, however, can also involve the provisioning of processing power, memory space, and other server components through the internet, the net result of which is Software-as-a-Service (Saas), or entire applications that are delivered exclusively through the cloud. Salesforce.com, Gmail, and Slack are all examples of complete SaaS products, software that offers the full functionality of the local desktop- or server-based products they’re intended to replace.
Advantages of Cloud Computing
The advantages of cloud computing cut across every aspect of how software is made, delivered, and used:
By using a cloud provider of storage and computing horsepower (e.g., Amazon Web Services), software developers can focus on functionality and user experience instead of infrastructure setup, maintenance, security, redundancy, and upgrading or downgrading capabilities as demands dictate (i.e., “scalability”). This drastically reduces the barriers to entry, making it possible for any talented engineer with a good idea to spin up fully functional, secure, scalable software with minimal expense.
With a common infrastructure underpinning the software, developers can architect around those capabilities rather than having to accommodate the myriad potential configurations of end-user systems. They can also call on special services built by cloud computing providers—such as the transcoding tools available on Amazon Web Services, or the machine translation tools provided as part of the Google Cloud Platform—to seamlessly incorporate those technologies into their offering without having to build them from scratch. All of this makes for a far more efficient development process.
Once the SaaS application is built, it can be deployed to end users through the most ubiquitous software of all: a web browser. That browser might be on a desktop computer, laptop computer, tablet, or smartphone, and it could be accessed from anywhere on the planet. This simplicity and flexibility makes SaaS far more accessible than traditional software.
Cloud computing resources are designed to scale up and down, seamlessly and efficiently, as demands dictate. This frees both developers and end users from worrying about whether and when they might reach the limits of the hardware available to them, or whether they’re paying for more than they need (e.g., idle servers).
Because all patches and upgrades are managed by the SaaS application provider, end users enjoy a maintenance-free experience while also knowing that they are always using the latest and greatest version. This is a boon to developers, too, as they no longer have to contemplate how a potential change will affect users clinging to older versions of the software, or even how to deliver updates to those users. Managing one codebase, in one cloud location, lets them use their development resources much more efficiently.
Since they call on resources that are shared, distributed, and available on demand, SaaS applications reach economies of scale far faster than traditional software. This means that they can provide cost-effective solutions even to lower-value problems.
Given that the users of a given SaaS application are all connected to the same cloud servers by design, SaaS applications lend themselves to collaboration in a way that traditional software does not.
The massive economies of scale enjoyed by cloud computing providers allow for greater investment in both physical and logical security, creating environments that are far more secure than what a single application developer would be able to achieve with only their own resources.
Ediscovery & Cloud Computing
In ediscovery, cloud computing has completely changed the software landscape. The boom-or-bust nature of litigation—in which a single matter can balloon from a few gigabytes to terabytes overnight with the reception of a new production, and then disappear again overnight following a settlement—makes the cloud’s scalability, and lack of advance hardware commitment, that much more appealing. All of the most cutting-edge ediscovery technology is exclusively cloud-based, taking full advantage of the increased efficiency, scalability, simplicity, and connectivity to tackle everything from processing to analytics to collaborative case building. In particular, cloud computing has made it possible to take the most powerful tools and make them accessible to any litigant, on matters of any size, from small-scale investigations to complex multi-district litigation.
This is the fourth in our multi-part series covering our ediscovery chapter of a legal informatics textbook. In this series, we’re covering the ediscovery basics, including the history of the EDRM, core technical ediscovery concepts, the technologies powering ediscovery, and the future of ediscovery. Our next post focuses on encryption in ediscovery.