The Vation Ventures Glossary

Cloud Computing: Definition, Explanation, and Use Cases

Cloud computing is a term that has significantly transformed the landscape of Information Technology (IT) and business processes in the last decade. It refers to the delivery of computing services over the internet, also known as the "cloud", instead of using local servers or personal devices. These services include servers, storage, databases, networking, software, analytics, artificial intelligence, and more.

Cloud computing offers faster innovation, flexible resources, and economies of scale. It allows companies to avoid the upfront cost and complexity of owning and maintaining their own IT infrastructure, and instead simply pay for what they use, when they use it. In this article, we will delve into the intricate details of cloud computing, its definition, explanation, and use cases.

Definition of Cloud Computing

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.

The five essential characteristics of cloud computing include on-demand self-service, broad network access, resource pooling, rapid elasticity, and measured service. The three service models are Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS). The four deployment models include private cloud, community cloud, public cloud, and hybrid cloud.

Essential Characteristics

On-demand self-service means a consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider. Broad network access capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, laptops, and PDAs).

Resource pooling involves the provider's computing resources being pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. Rapid elasticity capabilities can be rapidly and elastically provisioned, in some cases automatically, to quickly scale out and rapidly released to quickly scale in. Measured service cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts).

Service Models

Software as a Service (SaaS) is a software distribution model in which a third-party provider hosts applications and makes them available to customers over the Internet. Platform as a Service (PaaS) is a category of cloud computing services that provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app.

Infrastructure as a Service (IaaS) is a form of cloud computing that provides virtualized computing resources over the Internet. IaaS is one of the three main categories of cloud computing services, alongside Software as a Service (SaaS) and Platform as a Service (PaaS).

Deployment Models

Private cloud refers to a model of cloud computing where IT services are provisioned over private IT infrastructure for the dedicated use of a single organization. A private cloud is usually managed via internal resources. The terms private cloud and virtual private cloud (VPC) are often used interchangeably.

Public cloud is a type of computing in which a service provider makes resources available to the public via the internet. Resources vary by provider but may include storage capabilities, applications, or virtual machines. Public cloud allows for scalability and resource sharing that would not be possible with a private cloud.

Community cloud involves sharing of computing infrastructure in between organizations of the same community. For example, all government organizations within the state of California may decide to share computing infrastructure, to manage data related to citizens residing in California.

Hybrid cloud is a solution that combines a private cloud with one or more public cloud services, with proprietary software enabling communication between each distinct service. A hybrid cloud strategy provides businesses with greater flexibility by moving workloads between cloud solutions as needs and costs fluctuate.

Explanation of Cloud Computing

Cloud computing is a big shift from the traditional way businesses think about IT resources. It eliminates the capital expense of buying hardware and software and setting up and running on-site datacenters—the racks of servers, the electricity for power and cooling, and the IT experts for managing the infrastructure. It adds up fast.

Most cloud computing services are provided self service and on demand, so even vast amounts of computing resources can be provisioned in minutes, typically with just a few mouse clicks, giving businesses a lot of flexibility and taking the pressure off capacity planning. The benefits of cloud computing services include the ability to scale elastically. In cloud speak, that means delivering the right amount of IT resources—for example, more or less computing power, storage, bandwidth—right when it’s needed, and from the right geographic location.

Cloud Computing Stack

Cloud computing services are broken down into three major categories: software-as-a-service (SaaS), platform-as-a-service (PaaS), and infrastructure-as-a-service (IaaS). Each of these services are interconnected and stacked on top of one another, hence the term "cloud computing stack".

SaaS is software that is centrally hosted and managed for the end customer. It is usually based on an architecture where one version of the application is used for all customers, and licensed through a monthly or annual subscription. Office 365, Google Apps, Salesforce, Citrix GoToMeeting, Cisco WebEx and Netflix are popular examples of SaaS.

PaaS provides the platform and environment to allow developers to build applications and services. This can include developer tools that are offered as a service to build services, or data which is also offered as a service. Examples include: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine, Apache Stratos.

IaaS is where the hardware and infrastructure is offered as a service. The hardware can include servers, computers, storage, etc. Some popular examples of IaaS are: AWS, Azure, Google Compute Engine, Rackspace, and IBM SmartCloud.

Use Cases of Cloud Computing

Cloud computing has a myriad of use cases across various industries. It is used for data backup, disaster recovery, email, virtual desktops, software development and testing, big data analytics, and customer-facing web applications. For example, healthcare organizations are using the cloud to develop more personalized treatments for patients. Financial services companies are using the cloud to power real-time fraud detection and prevention.

Furthermore, video game makers are using the cloud to deliver online games to millions of players around the world. In the public sector, governments are using the cloud to transform services, improving how they interact with citizens, share information and increase internal efficiencies. The possibilities are truly endless with cloud computing, and it continues to evolve and revolutionize the way we interact with digital technology.

Data Backup and Disaster Recovery

One of the primary uses of cloud computing is for data backup and disaster recovery. Due to its inherent off-site, inherently redundant nature, cloud computing is ideally suited for disaster recovery. Instead of maintaining a bunch of hard drives and other storage devices, a company can instead use the cloud to securely store its data.

Cloud-based backup systems provide a degree of insurance against disasters, whether they are natural or man-made. They can automatically duplicate your data and store it in a separate location. So if your business gets hit by a flood, fire, or a targeted cyber attack, you can use your backups to restore your system.

Email and Communication

Cloud computing has also revolutionized communication within and between organizations. Instead of relying on in-house email servers and complicated protocols, companies can use cloud-based email and communication services. This not only reduces the cost and complexity of maintaining an in-house system, but it also increases efficiency and productivity.

Cloud-based email systems can be accessed from anywhere, at any time, and from any device. This means that employees can access their emails, calendars, and contacts whether they are in the office, on the road, or working from home. This flexibility and accessibility can lead to improved collaboration and communication among employees.

Software Development and Testing

Cloud computing has also had a significant impact on software development and testing. Developers can use cloud-based platforms to build and test their applications. This eliminates the need for expensive hardware and infrastructure, and allows developers to work from anywhere.

Cloud-based development platforms provide a complete, integrated development environment with resources, tools, and services that developers need to develop, test, and run applications. They support a range of programming languages, databases, and development tools, making it easier for developers to use the technologies they are familiar with and prefer.

Big Data Analytics

Cloud computing is also used for big data analytics. Companies can use cloud-based analytics services to analyze their data and gain insights into their operations, customers, and markets. This can help them make more informed decisions, improve their products and services, and gain a competitive edge.

Cloud-based analytics services provide all the necessary tools and infrastructure for data analysis, so companies don't have to invest in their own hardware and software. They can also scale their analytics capabilities as their data grows, without having to worry about storage, processing power, or IT resources.

Customer-Facing Web Applications

Finally, cloud computing is used to power customer-facing web applications. These applications can be anything from a simple website to a complex, data-intensive web app. By hosting these applications in the cloud, companies can ensure they are always available, scalable, and secure.

Cloud-based web applications are easy to deploy and update, so companies can get their applications up and running quickly and keep them up to date with the latest features and security patches. They are also scalable, so they can handle sudden spikes in traffic without crashing or slowing down.

In conclusion, cloud computing is a versatile technology that has a wide range of uses. Whether it's for data backup and disaster recovery, email and communication, software development and testing, big data analytics, or customer-facing web applications, the cloud offers a flexible, scalable, and cost-effective solution.