How cloud storage works
In the past, enterprise storage was defined by physical constraints. It meant managing hard disks on servers. You had to predict the space you needed in advance and replace hardware before it wore out. If you ran out of room for new servers or drives, you risked seeing your systems grind to a halt. But the cloud changed this model.
When you connect to the cloud, it looks like a single disk. But storage services are made up of networked servers running in data centers. Software takes these servers and makes them look like that one disk.
Cloud storage architecture
Cloud storage divides data into three layers:
1. Storage nodes
This is the hardware the storage sits on. If a client needs high-speed storage, they get fast solid-state disks. For applications that need space more than speed, they have slower hard disks.
2. Storage approaches
This layer controls how applications interact with the storage.
Objects: Data is individual units with unique names. Objects contain raw data, metadata, and a unique identifier. The identifier combines the storage instance, namespace information, and the object name.
Blocks: Arranges data in raw, fixed-sized volumes of blocks. Each block has an address but, like a physical disk, no metadata. Block storage acts like a disk attached to a computer.
Files: Contents look like a directory tree on a computer. It has folders and files, with features that allow more than one user to read and write to the files at a time.
3. Metadata services
This layer divides a file's info, like name, attributes, and permissions, from its contents. The system stores it in fast, distributed databases so clients have access to it as quickly as the files.
Access protocols
Each storage type uses a different approach for talking to clients:
Object storage uses Representational State Transfer (REST), a protocol for managing data on a server. The API for Amazon's S3 file service serves as a standard for these services.
File storage uses standard operating system protocols. For Linux, there's the Network File System (NFS). For Windows and Mac, there's Server Message Block (SMB), the standard for Windows servers.
Block storage uses the protocols required for connecting servers directly to disk hardware. They allow the systems to talk to the cloud storage with hardware protocols.
These are three different ways to use cloud storage, but they share the underlying system. So, the data they manage has a common life cycle:
Login and access: Every message from the client has a cryptographic signature. It identifies the sender so the service knows what they are allowed to do.
Ingestion and chunking: Requests to a cloud service can be large. So, the gateway removes the extra header information and splits the data into pieces.
Encryption and striping: Most cloud storage systems encrypt data before writing it to disks. Then it distributes it across different systems to spread the risk.
Acknowledgment: First, the system writes the data to disk and verifies that it's sound. Then it sends the okay to the client.
Durability and redundancy
Cloud storage is reliable because providers use sophisticated distribution and failure-recovery mechanisms.
Multi-zone replication: Cloud storage duplicates writes between physical facilities. These “availability zones” have their own power, HVAC, and networking resources. So, if a center fails, data remains safe, online, and accessible.
Object versioning: Cloud storage uses versions to protect clients from deletion and ransomware. It creates read-only versions for every change a client makes to files.
What are the advantages of cloud storage?
Cloud storage offers significant advantages over on-premises storage solutions.
1. Scalability
On-premises storage requires capacity planning. If you overestimate, you end up with costly hardware sitting idle. If you underestimate, you risk problems down the road.
Cloud storage removes this risk. You can scale disk sizes up and down on demand. So, you can let your storage grow organically or adjust it on the fly.