Storage and Access Methods
Everything Cloudberry stores ends up as bytes in files on a segment. This part follows that path from the access methods down to the storage manager.
-
Chapter 2
Data Files and the Storage Manager in Cloudberry
How Cloudberry maps relations to files on disk — the smgr layer, md.c segment files, relation forks, and the virtual file descriptor cache.
-
Chapter 3
The Cloudberry Buffer Cache: Pinning and Clock Sweep
How 32 KB pages move through shared buffers — pinning, usage counts, clock-sweep eviction, ring buffers, the background writer and the checkpointer.
-
Chapter 4
Heap Storage: Page Layout, Tuples, HOT and Pruning
Inside Cloudberry's row store — page organization, tuple headers, the free space and visibility maps, page pruning, HOT updates and ComboCID.
-
Chapter 5
Append-Optimized Tables in Cloudberry: AO and AOCS
The AO and AOCS on-disk format explained — MemTuple, varblocks, the block directory, gp_fastsequence, DML visibility, vacuum and compaction.
-
Chapter 6
PAX: Apache Cloudberry's Native Columnar Storage
Cloudberry's PAX access method — micro-partition file format, manifest catalog, encoding, min/max and Bloom sparse filters, and Z-order clustering.
-
Chapter 7
Indexes in Cloudberry: B-Tree, GIN, BRIN and Bitmap
How each index access method works on an MPP cluster, including the Greenplum-inherited on-disk bitmap index that upstream PostgreSQL does not have.
-
Chapter 8
The Cloudberry System Catalog and Distributed Tables
How the catalog is replicated to every segment — key catalog tables, Cloudberry's own distributed catalogs, bootstrap, and runtime cache invalidation.