What is Object storage really?

990 views Asked by At

I searched about object storage a lot, all the articles say the same thing. Object storage is a data storage architecture that manages data as objects, it includes the data itself, and a variable amount of metadata.
Object storage is the future of how data being stored.
But how does a object store in a disk. Or it's just an idea, I can use a file storage along with a MySQL to store the metadata, and claim it is a object storage. Or if it is compatible with the AWS S3, it's an object storage system.
I am very confused about this idea, or it's just another fancy word like ajax.

2

There are 2 answers

2
BryceH On

This post sums it up fairly well - https://www.druva.com/blog/object-storage-versus-block-storage-understanding-technology-differences/

Typical differences you'll see between object storage and traditional file systems/block stores are -

  • slower response from object stores due to network latency
  • object stores don't implement file hierarchies although S3, for example, mimics a file hierarchy in the AWS Console
  • object stores are typically eventually consistent where block stores provide strong/immediate consistency

In the case of S3, each object/file is created with an object key. This allows you to mimic a file system hierarchy and is helpful for uses such as embedding metadata in the key name. This is also beneficial for use cases such as using S3 in place of HDFS with Hadoop based systems. Additionally, S3 allows you to tag objects with key value pairs similar to other AWS services.

0
Bex T. On

I completely understand your confusion.

Imagine a bowl. Into the bowl, you put differently-sized balls that are uniquely labeled. The balls would fall into the bowl without any structure, and they are only differentiable by their unique labels.

You can think of object storage systems like that. Each ball in the bowl represents one piece of data such as video, audio, text, email, etc. The size of the ball corresponds to the file size. Each object (i. e., file) is given a unique global 128-bit identifier in object storage, so the ball's label is its identifier.

You can think of the bowl itself as the object storage provider. Nowadays, it is mainly AWS S3 buckets that use such organizational schema. I have also read through your comments. You suggest storing the file itself in file storage and storing the metadata in a database table.

However, object storage systems came into existence solely to avoid such operations as storing data into tables. You see, to store anything in a table, you need a cleverly-designed database schema that makes data retrieval easier for future operations. All these extra details and requirements for storing data into tables are cost-heavy and entirely unnecessary for people who just want to store their files somewhere without thinking about structure.