Hello everyone,
Today, I wanted to cover some basics of cloud storage. So let me casually throw away the most basic definition first.
The basic definition:
Cloud storage is a service that allows individuals and organizations to store and access their data, applications, and other resources over the internet. Instead of storing data on a local hard drive or server, cloud storage enables users to store and access data on remote servers that are managed by a cloud storage provider.
Now since the basic definition of cloud storage is out in the open, let's take a look at a diagram that shows a generic architecture of cloud storage. We'll try to dive into this diagram in detail.
Cloud storage architectures are primarily about the delivery of storage on demand in a highly scalable and multi-tenant way. Generically, cloud storage architectures consist of a front end that exports an API to access the storage. Behind the front end is a layer of middleware that is called the storage logic.
Storage logic layer implements a variety of features, such as replication and data reduction. Finally, the back end implements the physical storage for data. This may be an internal protocol that implements specific features or a traditional back end to the physical disks.
In the above diagram, you can see some of the characteristics of current cloud storage architectures. Let's dive into these:
Manageability: The ability to manage a system with minimal resources
Access method: Protocol through which cloud storage is exposed
Performance: Performance as measured by bandwidth and latency
Multi-tenancy: Support for multiple users
Scalability: Ability to scale to meet higher demands or load
Data availability: Measure of a system's uptime
Control: Ability to control a system — in particular, to configure for cost, performance
Storage efficiency: Measurement of how efficiently the raw storage is used
Cost: Measure of the cost of the storage (commonly in dollars per gigabyte)
The importance of cloud storage
Cloud storage can deliver cost-effective, scalable, and elastic storage. It eliminates the need for:
1. Worrying about running out of capacity
2. Maintaining storage area networks
3. Replacing failed devices
4. Adding infrastructure to scale up with demand
5. Operating underutilized hardware when demand decreases
Since it's elastic, you can scale up and down with demand and pay only for what you use. It is a way for organizations to save data securely online so that it can be accessed anytime from any location by those with permission.
Cloud storage can deliver the agility, cost savings, security, and simplicity to focus on your core business growth.
Small businesses can avoid using valuable resources to manage storage, and cloud storage can give them the ability to scale as the business grows.
Large enterprises with billions of files and petabytes of data can rely on the scalability, durability, and cost savings of cloud storage to create centralized data lakes to make data accessible to all who need it.
How does cloud storage work?
Cloud storage is delivered by a cloud services provider that owns and operates data storage capacity by maintaining large data centers in multiple locations around the world.
Cloud storage providers manage capacity, security, and durability to make data accessible to your applications over the internet in a pay-as-you-go model.
Pay-as-you-go cloud computing (PAYG cloud computing) is a payment method for cloud computing that charges based on usage. The practice is similar to that of utility bills, using only resources that are needed.
We'll discuss more about the costs in the later posts. For now, let's jump back to the working of cloud storage.
Typically, you connect to the storage cloud either through the internet or through a dedicated private connection, using a web portal, website, or a mobile app.
Your applications access cloud storage through traditional storage protocols or directly using an application programming interface (API). The cloud storage provider might also offer services designed to help collect, manage, secure, and analyse data at a massive scale.
Types of cloud storage
There are three main cloud storage types: object storage, file storage, and block storage. Each offers its own advantages and has its own use cases.
1. Object Storage
2. File Storage
3. Block Storage
Object Storage
Organizations have to store a massive and growing amount of unstructured data, such as photos, videos, sensor data, audio files, and other types of web content, and finding scalable, efficient, and affordable ways to store them can be a challenge. Object storage is a data storage architecture for large stores of unstructured data.
Objects store data in the format it arrives in and makes it possible to customize metadata in ways that make the data easier to access and analyze. Instead of being organized in files or folder hierarchies, objects are kept in secure buckets that deliver virtually unlimited scalability.
File Storage
File-based storage or file storage is widely used among applications and stores data in a hierarchical folder and file format. This type of storage is often known as a network-attached storage (NAS) server with common file level protocols of Server Message Block (SMB) used in Windows instances and Network File System (NFS) found in Linux.
Block Storage
Enterprise applications like databases often require dedicated, low-latency storage for each host. This is analogous to direct-attached storage (DAS) or a storage area network (SAN). In this case, you can use a cloud storage service that stores data in the form of blocks. Each block has its own unique identifier for quick storage and retrieval.
In the upcoming posts, we'll dive more into these types of storage. We'll cover them in detail and dive more into cloud storage.
Meanwhile, meet Maguna. She's my cat. In a couple of years, when I revisit this post, I will still be able to see her. Some social media giants tend to keep old media files on ice for sustainability. We'll also discuss how cold storages work in depth and we'll also look into Amazon S3 Glacier.
Until then, have a wonderful day ahead.
Bye! Bye! Bye!
AutoRegex: An AI tool that can write your Regex Hi, Hope you are having a terrific day. As a developer, one of the most excruciating things that I have to do from time to time is writing Regular Expressions. The amount of time that I have spent on just writing Regex is insane. I was working on a project recently where I had to write some Regex and I wondered if there was an AI tool to help me. To my surprise, there was. One of those tools is called AutoRegex.xyz
Code example: The use hook RFC Hey, In the last post, I talked about the use hook RFC. In today's post, I will share a code example.