Immutable layoutΒΆ
root.json
snapshots/<snapshot-id>/snapshot.json
manifests/<hash-prefix>/<manifest-id>.json
objects/data/<hash-prefix>/<shard-id>.arrayrecord
objects/metadata/<hash-prefix>/<shard-id>.arrayrecord
The root pins one snapshot. The snapshot declares global ordinal ranges for manifest pages. Each page declares exact data and metadata shard objects, generations, sizes, and ordinal ranges. Readers resolve these references directly and never discover records by listing storage.
Publication creates shards, manifest pages, and the snapshot before creating root.json. Readers
therefore observe either no dataset or one complete immutable snapshot.
For example, ordinal 12 resolves as:
root.json
-> snapshots/run-001/snapshot.json
-> manifests/<manifest-hash-prefix>/run-001-00000000.json
-> objects/data/<shard-hash-prefix>/<shard-id>.arrayrecord record 12
-> objects/metadata/<shard-hash-prefix>/<shard-id>.arrayrecord metadata 12