Glossary

S3-compatible storage

S3-compatible storage is any system that accepts Amazon S3 API requests without being AWS itself, so applications written for S3 can run against storage placed wherever the organization chooses. Compatibility is a spectrum, and the gaps appear at the edges rather than in basic reads and writes.

What has to match?

Three layers have to agree between an application and the storage. The wire format is REST calls over HTTP. Authentication is signature version 4, which proves each request came from a known key. The data model is buckets, objects, keys and metadata. When all three match, a compatible application moves over by changing an endpoint URL and credentials, with no rewrite.

Why does compatibility vary?

S3 is a large, evolving API, and no one reads its specification identically. Every vendor passes the basic put and get. What differs is the long tail of features, and the tail is where real backup and analytics software spends its time.

Where do the gaps hide?

  • Object Lock: whether retention is truly enforced by the storage, and whether compliance mode refuses deletes from any account, or only records the setting.
  • Consistency: whether a read right after a write returns the new data, which applications often assume.
  • Listing: how the system behaves when a bucket holds millions of keys and the application pages through them.
  • Error codes: whether failures return the exact codes the application expects, because clients branch on them.

A demo script that uploads and downloads a test file proves very little. The sound test is the real application: the backup software or analytics engine run against the system, on realistic volumes, with retention locks switched on.

What is S3-compatible storage used for?

It fits backup repositories, data lakes, media libraries and archives, and is the interface that most modern object storage offers. Because the API is the same, data can sit on premises, in a colocation facility or in a sovereign cloud, which also reduces exposure to egress fees and eases cloud migration in either direction.

A practical way to read vendor claims is to ask for the list of S3 operations supported and for the behaviour of each locking mode, then compare against what the application calls. Backup products in particular use a narrow set of calls heavily, and the gaps that matter to them are specific, so a short test with the production application is more informative than a long feature matrix.

Versioning, multipart upload behaviour and lifecycle rules are further places where systems differ. Large backup files go up in many parts, and a system that handles part sizes or abandoned uploads differently from the original can fail jobs intermittently, which appears to be a network problem until the S3 logs are read.

Frequently asked questions

Is S3-compatible the same as S3?

No. S3 is the Amazon service. S3-compatible storage implements the same API on other infrastructure, so behaviour in edge cases can differ.

Do all S3-compatible systems support Object Lock?

No. Support varies in coverage and enforcement, and applications that depend on locked backups need it confirmed for the exact modes used.

Can one application use several S3-compatible stores?

Yes. Most S3 clients take a configurable endpoint, so one application can write to different systems at different locations.