4 ms·
How is "Object Store" marketing bs? What is the proper term for an S3 object? It's not file, because file is a term that comes from the context of a filesyste
by Goladus 11y ago
How is "Object Store" marketing bs? What is the proper term for an S3 object? It's not file, because file is a term that comes from the context of a filesystem, which is what S3 is not.
Read the S3 docs: http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects....
That is the technical term they've chosen to describe the key, its value, and all its associated metadata. As far as terms go, it's rather straightforward, in my opinion. They probably didn't use "file" because that usually implies a filesystem, which is specifically what S3 is not.
Also, go ahead and check out the history of the term "Object Store": https://en.wikipedia.org/wiki/Object_storage https://en.wikipedia.org/wiki/Object_storage
- matt-attack 11y agoSo when I download a file from a website, I'm not actually downloading the file? Since it doesn't become a file until it gets flushed to disk by my browser? So what is the name for the sequence of bytes that are actually downloaded?
- dsmithatx 11y agoI'd say you don't really download the file, you render it in a browser via the http protocol. Downloading implies you have a local copy of the html file or js or whatever.
- Goladus 11y agoSo what is the name for the sequence of bytes that are actually downloaded? If you explicitly requested your browser to create a file, then it could be any kind of data. If the web server triggered the download, your browser probably saw an HTTP header like "Content-type: application/octet-stream" I will admit that there is an abstract concept of a "file" that exists outside the restricted realm of a "filesystem," but that's not amazon's target audience. Their target audience are programmers using APIs. To a normal person, MySpreadsheet.xls is considered a file, no matter where it is stored. But S3 is not limited to this definition of file. An S3 object does not have to be a file in the sense of an excel spreadsheet or digital photos from your friend's wedding. An S3 object can just be a sequence of random data, which would be called a file if stored as ".dat" in a filesystem, but is not considered a file in the same abstract sense as a Word Document. From a programming perspective files tend to come with a number of traits, like options for sequential access, random access, or appending. A file can often be modified without re-writing the entire thing. When you are programming with S3 objects, the only way to "append" something is to GET the object, retrieve the value from the object, append the data to that value, and then use PUT to upload entire object back into S3. In this way, it is similar to FTP, except that FTP is most definitely about files and filesystems. S3 is not just for downloading files, but for retrieving any kind of data, usually directly into an application. Given that S3's target audience is software developers, the programming version of the term "file" is more appropriate.
- dclowd9901 11y agoYour distinction well-noted, a file server still makes a great name for the service, considering its end purpose is serving files, and the fact that it's a "service" implies an interface of sorts apart from a standard file system.
- Goladus 11y agoIt would except for the fact that "File Server" has been a commonly used term for a long time that hadn't ever been previously used to describe the technology that S3 actually is: an eventually-consistent distributed object store with a simple network API. It's not like "Simple Storage Service" is weirdly obscure or anything.