Guide

The Definitive Guide to Cloud Computing

In a world where seemingly everything is run as a service, cloud computing stands tall as one of the most ubiquitous buzzwords in tech. But what exactly is cloud computing, and why is it so essential to digital transformation? In this guide, we’ll cover everything you need to know about cloud computing so that you can get started leveraging this technology in your business. 

What Is Cloud Computing?

Cloud computing is the on-demand delivery of storage, networking, and compute resources over “the cloud”—the global network of servers and data centers cloud service providers such as Amazon, Microsoft and Google have made accessible to the public via apps and APIs on the internet. 

Instead of relying on your own on-premises servers, computers, and networking infrastructure, cloud computing allows you to power analytics pipelines, software, and other application workloads with hardware housed in remote data centers.

How Does Cloud Computing Work?

The core idea behind cloud computing is the ability to outsource technology infrastructure requirements to cloud service providers that are better equipped to handle computational workloads or capacity needs. You pay subscription fees to these providers through service level agreements (SLAs) in return for use of their services. Cloud service providers are increasingly giving their customers greater flexibility and granular control over how they pay. OPEX payment models allow you to pay for storage and compute resources as you use them, giving you greater control over your budget. 

IaaS vs. PaaS vs. SaaS: What’s the Difference?

We use cloud computing for a wide range of purposes, for example, to: 

  • Collaborate remotely on projects using software-as-a-service (SaaS) apps like Slack
  • Simplify app deployments with platform-as-a-service (PaaS) apps like Heroku 
  • Scale compute and capacity efficiently with infrastructure-as-a-service (IaaS) apps like Amazon EC2

Together, SaaS, PaaS, and IaaS make up a cloud computing stack. The core difference between SaaS, PaaS, and IaaS lies in which components of the application technology stack are outsourced to a cloud service provider:

Cloud Computing vs. Cloud Storage

IaaS

PaaS

SaaS

Applications

Data

Runtime

Middleware

Operating System

Virtualization

Networking

Storage

Servers

Software as a Service 

In a SaaS deployment, you outsource all the underlying infrastructure to a cloud service provider. All you need to start using a SaaS app is a browser and an internet connection. You don’t really build anything; you just use the service as designed by the cloud provider. 

Platform as a Service 

PaaS is a cloud-powered development and deployment environment. The advantage here is you can build an app to your specifications without worrying about managing software licenses, development tools, and other infrastructure. 

Infrastructure as a Service

IaaS providers deliver instant access to storage and compute resources and infrastructure that can be provisioned over the internet. For example, storage as a service (STaaS) is a type of IaaS that helps abstract away the management of storage resources within your organization. This option makes sense if you’re mostly building an application from scratch but don’t have the on-premises infrastructure needed to support it.

What Are the Benefits of Cloud Computing?

Decoupling storage and compute resources from underlying software and hardware environments comes with a number of benefits, most notably greater resource management agility. Common benefits of cloud computing include:

  • Elastic scalability. Scale storage and compute resources up and down with natural fluctuations in service demand. 
  • Reduced capital costs. Save money on installation, maintenance, energy, and labor costs associated with purchasing physical racks of servers and other hardware.
  • Improved performance and reliability. Stand on the shoulders of giants by leveraging the data center resources of large cloud service providers like Google, Amazon, and Microsoft. 
  • Greater productivity. Cloud computing abstracts away the details of underlying software and hardware environments, making it easier to manage your storage and compute resources across a variety of devices.

Cloud Computing vs. Cloud Storage: What’s the Difference?

Cloud computing and cloud storage may be used interchangeably across the web, but there is a subtle but distinct difference between them:

  • Cloud storage refers to the storage of images, videos, files, and other data in the cloud. Data is stored on remote servers in a data center usually operated by a cloud service provider. 
  • Cloud computing refers to the running of applications in the cloud. You leverage the processing power of remote servers to handle the computational tasks needed to run part or all of your application logic. 

Cloud storage is technically a type of cloud computing, which can be thought of as just one type of application that can run within the cloud. A cloud application will often use both storage and compute resources from a cloud service provider to function. 

Learn more about the differences between cloud computing and cloud storage.

Public Cloud vs. Private Cloud vs. Hybrid Cloud vs. Multicloud

The National Institute of Standards and Technology (NIST) officially recognizes four main cloud deployment models. In true cloud fashion, these deployment models are less about where cloud services are physically located and more about how their resources are shared. Let’s take a closer look at the differences between public, private, hybrid, and multicloud deployments.

Public Cloud

A public cloud is a type of cloud deployment model where a third-party provider provides cloud services or resources to your organization via the internet. The underlying infrastructure is shared between your organization and thousands of other users. 

Private Cloud

A private cloud is a type of cloud deployment model where the underlying infrastructure behind cloud services or resources is dedicated to a single organization. The private cloud may be hosted on-premises within your organization or remotely through a third-party cloud provider. 

Hybrid Cloud

A hybrid cloud uses encryption to securely unify your public and private clouds for enhanced data portability. The clouds remain separate but share well-defined touch points that allow storage and compute resources across both clouds to be devoted to the same task. 

Multicloud

A multicloud refers to the use of multiple on-premises and cloud deployments for different tasks within your organization. Multicloud deployments may be public, private, or hybrid. They can come from different cloud providers performing separate functions within your technology stack. 

Learn more about the different types of cloud services.

What Are Cloud-Native Applications? 

Cloud-native is a modern approach to application development and deployment that harnesses the power of the cloud computing delivery model. The idea is to develop and deploy applications in dynamic environments such as public, private, and hybrid clouds where resources can be scaled up and down as needed. 

Cloud-native applications are generally containerized, deployed as loosely coupled microservices running in the cloud. They embody the principles of Agile and DevOps methodologies and are typically deployed as continuous integration and delivery (CI/CD) pipelines. Let’s take a look at some of the core technologies and concepts that make an app cloud-native.

Containers

Containers take virtualization to the operating system level. They allow you to package all the code and dependencies, including binaries, libraries, and configuration files, needed for a process, app, or service to run. Containerized software can run reliably from one computing environment to another. Fast, portable, and lightweight, containers can be orchestrated dynamically to optimize performance and resource consumption. 

Microservices Architecture

A microservices architecture is a modular approach to developing software systems. Instead of building one big monolithic application, you build a suite of single-function services with well-defined operations and interfaces. This modular approach to app development leads to improved scalability, flexibility, and testability. Containers are a natural fit with microservices architectures. 

DevOps

DevOps is a combination of methodologies, automation technologies, and best practices aimed at streamlining the software development lifecycle by improving integration and communication between development and operations teams. The end goal is a CI/CD pipeline for faster product development and deployment. Containers can help simplify and accelerate the development, testing and deployment process. 

Learn more about cloud-native applications.

Bridging the Cloud Divide with Pure Storage 

Multicloud ecosystems typically develop organically when an organization takes the leap from on-premises or private cloud to public- and/or hybrid-cloud deployments. The moment you sign an SLA with a cloud service provider for only part of your application stack, you’re technically running a multicloud deployment. 

The siloed nature of traditional multicloud deployments can get quite complex as an organization picks up more SLAs over time. That complexity can be difficult to manage, and the inefficiencies between siloed storage and compute resources across different cloud deployments can start to add up. In other words, improving data mobility between cloud and on-premises infrastructure is the key to unlocking the true potential of cloud computing. 

Pure Storage® unifies hybrid and multicloud ecosystems into a single agile data plane that delivers a Modern Data Experience™. Pure offers a true hybrid cloud that provides:

  • All the benefits of multicloud but with the flexibility to operate as a hybrid cloud
  • Effortless data and app mobility across public and private clouds
  • The native performance of Pure’s on-premises NVMe all-flash storage arrays
  • A single unified interface for all cloud resources with Pure Cloud Block Store

Eliminate the complexity of siloed private- and public-cloud environments today with Pure Storage.

800-379-7873 +44 20 3870 2633 +43 720882474 +32 (0) 7 84 80 560 +33 9 75 18 86 78 +49 89 12089 253 +353 1 485 4307 +39 02 9475 9422 +31 (0) 20 201 49 65 +46-101 38 93 22 +45 2856 6610 +47 2195 4481 +351 210 006 108 +966112118066 +27 87551 7857 +34 51 889 8963 +41 31 52 80 624 +90 850 390 21 64 +971 4 5513176 +7 916 716 7308 +65 3158 0960 +603 2298 7123 +66 (0) 2624 0641 +84 43267 3630 +62 21235 84628 +852 3750 7835 +82 2 6001-3330 +886 2 8729 2111 +61 1800 983 289 +64 21 536 736 +55 11 2655-7370 +52 55 9171-1375 +56 2 2368-4581 +57 1 383-2387