Flexible and scalable data storage is a basic requirement for most application-based businesses and services nowadays. With today's complexity of deployments, containers, and ephemeral infrastructure, storing data is not as easy as it used to be. Cloud providers meet the storage needs of modern application deployments, by providing services that mostly fit into two categories: object storage and block storage.
Do you know what is the difference between Block Storage and Object Storage? Which one is best suited for your needs? What types of storages do different Cloud providers offer?
Block storage is the simplest way of storing data. Imagine a traditional storage device — like a hard drive — provided to you over the network. Data is stored in fixed-size chunks called ‘blocks’. Public Cloud providers offer products that can provision a block storage device of any size and attach it to your virtual machine.
A single 'block' typically only stores a portion of the data. The application makes requests to find the correct address of the blocks. There is no metadata associated with blocks, and the requested address is the only identifying part of a block.
This structure leads to faster performance when the application and storage are local, but can cause increased latency the further apart they are. The granular control that block storage offers makes it an ideal fit for applications that require high performance, such as transactional or database applications.
Due to its fast IO characteristics, block storage services are well suited for storing data in traditional databases. Additionally, many legacy applications that require normal filesystem storage will need to use a block storage device.
SSD storages are generally more expensive but have better performance. Customers can pay a premium option to get a certain amount of guaranteed input/output per second (IOPs), which basically is an indication of how fast the storage will read/write new information.
Amazon AWS - 'Elastic Block Store' (EBS) that is the product of Amazon. There are two options you can choose from. Cold HDD, which are traditional magnetic spinning-disk. General Purpose SSD are next-generation drives and at last Provisioned IOPS SSD, which Amazon present them as a designed for latency-sensitive transactional workloads.
Google Cloud Platform- Google named it 'Persistent Disks' (PDs), which is standard storage or SSD storage.
Microsoft Azure - Azure’s block storage offer storage that is called Managed Disks and Microsoft presents it in standard or premium version with the latter based on SSDs.
Object storage is much newer in comparison to block storage. Here, data is bundled with customizable metadata tags and a unique identifier to form objects. Objects are stored in a flat address space and there is no limit to the number of objects stored, making it much easier to scale out. The main advantage of using object storage are metadata tags, which allow for much better identification and classification.
Search capabilities and unlimited scaling make object storage ideal for unstructured data.
Because of these properties, object storage is useful for hosting static assets, saving user-generated content such as images and movies, storing backup files, and storing logs, for example.
Each Cloud provider has different types of storages available to you. They are classified by how often the customer will access it. “Hot” storage is data that needs to be accessible almost all the time. “Cool” storage is accessed more frequently, and "cold" storages can be used for archiving data that are rarely accessed. The 'colder' the storage is, the less expensive it gets.
Amazon AWS - Amazon AWS’s primary object storage is the 'Simple Storage Service' (S3). It offers Standard-Infrequent Access for cool storage and Glacier for cold storage. AWS has a 5TB object size per account limit and publicizes 99.999999999% durability for objects stored in their storage.
Google Cloud Platform - Google has Google Cloud Storage, GCS Nearline for cool storage and GCS Coldline for archiving data. Google Cloud Platform has a 5TB object size limit per account limit and publicizes 99.999999999% durability for objects stored in their storage.
Microsoft Azure - Azure only has a hot and cool option with Azure Hot and Cool Storage Blobs. Customers have to use cool storage for archiving data. Microsoft Azure has a 500TB object size per account limit. Azure does not publish durability.
For a clearer side-by-side comparison, take a look at the table below:
OBJECT STORAGE |
BLOCK STORAGE |
|
PERFORMANCE |
Performs best for big content and high stream throughput |
The strong performance with database and transactional data |
GEOGRAPHY |
Data can be stored across multiple regions |
The further the distance between storage and application, the higher the latency |
SCALABILITY |
Can scale infinitely to petabytes and beyond |
Addressing requirements limit scalability |
ANALYTICS |
Customisable metadata allows data to be easily organized and retrieved |
No metadata |
This is just a general overview of the differences between object storage and block storage. Block storage has many uses within enterprises, but object storage is best equipped to handle the explosive growth of unstructured data. Hope this explanation was useful. For more interesting content check out our other blog posts, and if you want to be updated about our most recent content don't forget to subscribe to the newsletter.