Hacker News new | ask | show | jobs
by fake44637 4023 days ago
I'm new to the concept of object storage. Is the thing which distinguishes object storage from key-value storage the ability to also store metadata?

I.e., Instead of providing (key: value), it provides (key: (metadata, value))?

2 comments

I've seen this an an outgrowth of the file storage world:

1. Flat data model – i.e. no directories, just a single globally-unique identifier 2. Much larger sizes than many key:value stores are designed to handle, typically bounded only by physical storage 3. Updates are complete and atomic: you don't have to support all of the crazy permutations like streaming writes from a file handle which could be kept open for years, dealing with simultaneous writes, etc. which make life interesting for filesystem implementers 4. None of the more complicated filesystem behaviour like locking, alternate data streams, etc. which add so many edge cases

You can think of object storage as a type of key value storage optimized for storing unstructured data at scale. These include but are not limited to images, video, backups, and binary blobs.

You can contrast this to other key value stores such as memcache which is designed to cache data in memory or Cassandra which is designed for storing large quantities of small, structured data.