Object Storage
Definition
In an object store, the unit is the object and the address is the key. A key such as 2026/reports/q3.pdf looks like a path but is just a string; the slashes mean nothing to the system beyond acting as a grouping character when you ask for a listing. Alongside the bytes, each object carries metadata: a Content-Type, often a Content-Disposition, any custom headers you attach, a size, a version identifier and an ETag. Objects are immutable in practice — you replace one wholesale rather than editing part of it, and there is no append. Everything happens through HTTP verbs against a storage bucket, which is why an object store is reachable from anywhere without a mount or a VPN. Amazon S3 set the shape of the API and Cloudflare R2, Google Cloud Storage, Azure Blob Storage and MinIO all follow it closely enough to share client libraries.
Why It Matters
The trade is scale and durability against the conveniences of a file system. A bucket holds billions of objects without tuning and providers quote durability around eleven nines, while per-gigabyte pricing sits at a few cents a month. What you give up is everything that assumes a tree and a cursor. Renaming a prefix is not a rename at all — it is a copy of every object followed by a delete of every original, which for 50000 small files is 100000 billed requests and several minutes. Appending one line to a log means rewriting the whole object, and listing a prefix comes back a thousand keys at a time behind a continuation token, so a naive directory listing over a million objects is a thousand round trips.
How It Works
A PUT to bucket plus key stores bytes and headers; a GET returns them; a HEAD returns only metadata, which is how you check size or type without paying for the transfer. The MIME type you set on upload is the one served later, because the store has no notion of file types on its own. Turn on file versioning at the bucket level and every PUT to an existing key produces a new version rather than an overwrite. Lifecycle rules run on a schedule and can expire old versions, abort incomplete uploads or shift objects to a colder, cheaper class after a set number of days. Reads are usually served directly to browsers, often with a CDN in front so repeat requests never reach the store at all.
Real-World Example
A designer publishes a 180-file portfolio site through 99helpers. Each file lands as its own object — index.html, 40 images, a stylesheet, a font — under a shared key prefix, with the Content-Type set from the extension at upload time. The site answers at studio-north.99helpers.site, and replacing a single photograph means writing one object, not redeploying anything.
Common Mistakes
- ✕Treating key prefixes as real folders — moving or renaming a prefix copies and deletes every object underneath it, which is slow and separately billed
- ✕Storing millions of very small objects without thinking about request pricing, where the per-request charge can exceed the storage charge
- ✕Uploading without setting a Content-Type, so everything is served as application/octet-stream and downloads instead of rendering
- ✕Assuming objects can be appended to or edited in place, and building a design around a write pattern the store does not offer
Related Terms
Storage Bucket
A storage bucket is the top-level container in an object storage system: a named, region-bound namespace that holds objects and carries the settings applied to all of them.
MIME Type
A MIME type, also called a media type or content type, is the short label a server sends to say what kind of data a response contains — text/html, image/png, application/pdf. The browser decides what to do with the bytes based on that label, not on the file name.
File Versioning
File versioning keeps the previous copy of a file when a new one is uploaded under the same name, instead of overwriting it. Every publish adds to a history you can read back from, rather than replacing what was there.
Presigned URL
A presigned URL is a link to a private stored object that carries its own authorisation in the query string. Anyone holding the link can perform the one operation it was signed for, on the one object it names, until it expires.
CDN
A content delivery network: a set of servers spread across the world that keep copies of your files and answer each visitor from somewhere close to them. It is the service; the machines it runs on are its edge network.
Put a file online in seconds
Drop in a document, an image, a page or a whole static website and share the link — free, with no build step and no server to set up.
Host a file free →