Cloud storage is an online storage model in which data is stored on multiple servers distributed over a network and shared with clients. It is usually maintained by a cloud provider.
To put it simply, cloud storage is the space on remote servers that are allocated for a user to store their information and access it anytime, anywhere, and on a variety of devices. Essentially, an individual or company can store and access data in this online space, using the Internet. Most likely, you are already using cloud storage, for example, Dropbox, Google Drive, etc. Even media-sharing apps such as Instagram and YouTube fall into this category – these services store your data in the cloud.
How cloud storage works
Regardless of whether the cloud storage system is private or public, the way they work is the same – the cloud service provider provides its IT infrastructure, which ensures the reliable and secure management of the required storage servers.
Public cloud is a virtualized storage system operated by an external provider. Its data center stores the data of many customers, on a multi-tenancy basis, without affecting each other. Cost efficiency is achieved through optimal and centralized use of resources.
Private Cloud is a virtualized storage system hosted within the enterprise. It has a dedicated data center that stores data and runs enterprise applications on a virtualized infrastructure. In this case, the role of the cloud service provider is most often performed by the enterprise IT department.
Servers in a private or public cloud do not operate as independent systems within the cloud storage structure but as a single group of servers. For this purpose, disk space together with other server components (e.g. CPUs or RAM) is virtualized using hypervisors. On top of the hypervisor is virtual servers with VMs within them. In terms of functionality, they are similar to physical hardware. Yet they also have the remarkable feature of being able to adapt to specific requirements, and can quickly migrate between physical servers and even data centers.
This creates a level of abstraction between the real hardware and the virtual storage functions on which the hypervisor operates.
Types of cloud storage
The principle of block storage is at the core of a traditional hard disk or magnetic tape. Files are split into blocks of the same size, each with its address but without any metadata. As an example, the HDD driver writes and reads blocks at the addresses on the formatted drive. Many applications use block storage, such as most relational DBMS like Oracle, DB2, and others. In networks, access to block hosts is organized through a SAN using Fibre Channel, iSCSI, or AoE protocols.
A file system is an intermediate between block storage and application input/output. The most common example is the NAS. Here, data is stored as files and folders assembled in a hierarchical structure and accessible through client interfaces by name, directory name, etc.
As for object storages, they differ from file and block ones in the absence of a file system. The tree-like structure of file storage is replaced by flat address space. No hierarchy – just objects with unique identifiers that allow the user or client to retrieve data.
Most object storages allow you to attach metadata to objects and aggregate them into containers. Thus, each object in the system consists of three elements: data, metadata, and a unique identifier - an assigned address. The object storage does not limit metadata to file attributes – here they can be customized.
S3 Object storage systems are designed for unstructured data, which is not a fixed format and consists of files of different sizes.
Here are some typical characteristics of object-based storage systems:
Data is stored as objects rather than traditional blocks, or files consisting of the same blocks
Objects can include a variety of formats: backups, archives, videos, images, log files, HTML files, etc.
They are unstructured in nature because there is no single format for the way such data is stored.
Unlike the directory structure of traditional file-based storage systems, it uses a simple list of objects stored in buckets.
The objects are stored with unique identifiers rather than filenames.
Objects are stored with user-defined metadata, making it easier to find objects when scaling data.
Objects can be terabytes in size, or just a few kilobytes, or one batch containing billions of objects.
Developers can easily access objects using simple commands via APIs using "GET" and "PUT" queries without complex directory structures.
Object storage is not suitable for all data volumes and scenarios, but it certainly has many possible use cases. It is reasonable to use object-based storage systems for the following:
Long-term archiving - e.g. regulatory data, WORM data
Backups – database dumps, log files, backups of existing software
DevOps development environment - a single global namespace that is easily accessible using simple PUT and GET queries to manage various objects: images, media files, etc.
Unstructured data – multimedia files, documents, static images, audio and video files.
Industries with large data sets:
Healthcare - electronic medical records, digital images, PACS data
Financial and trading platforms, email data, messengers, regulatory filing system data
Static web content - large HTML files and images for websites.
When you rely on a third-party provider to handle corporate data, you obviously may have concerns. Most of them are related to reliability and security issues.
The use of redundancy by most professional cloud providers, especially those operating multiple data centers in different geographic locations, means that reliability is not an issue. In most cases, cloud storage provides much more reliability than any on-premises system:
storage capacity is unlimited;
regular backups; in the event of a disaster, data is recovered instantly;
even if the entire data center fails, another data center remains available.
Therefore a cloud provider can guarantee an SLA level of 99.95%. For the customer, the risks are insured by penalties.
Cloud storage offers an ideal option for businesses looking for an enterprise-level and cost-competitive storage solution. Storage as a service with a pay-as-you-go billing model offers flexible scalability, high availability, security, and other benefits.