↑↓ select ↵ open ⌫ change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / Table AM

Table access methods, tuple organization, MVCC, maintenance and implementation boundaries.

Reading PostgreSQL 18.6.

1 core entry; 1 recorded in PostgreSQL 18.6.

  • heap Core table AM

    Core table AM

    The built-in heap table access method integrates tuple storage, visibility, scans, index fetches and maintenance with PostgreSQL.

RecordedFirst recordedInterface or attribute changeNo longer recorded

Squares indicate presence in sampled builds, not first introduction. Select a square for the same-version definition and sources.

Changes in PostgreSQL 18.6 · Export JSON

Table AM candidates

Current catalogue observation 2026-09-29 from pgext.universe. Extension versions, source metadata dates and declared PostgreSQL compatibility are independent of the selected core version. Catalogue classification does not establish capabilities or maintenance support.

23 directory rows.

Existing extensionCatalogued versionDeclared PG majorsMetadata checkedEvidence scopeCatalogued purpose
citus_columnar14.2.016, 17, 182026-08-30Catalogue candidate; interface unverifiedCitus columnar storage engine
columnar1.1.214, 15, 162026-08-30Catalogue candidate; interface unverifiedHydra Columnar extension
pg_mooncake0.2.014, 15, 16, 17, 182026-08-30Catalogue candidate; interface unverifiedColumnstore Table in Postgres
storage_engine2.4.015, 16, 17, 182026-08-30Catalogue candidate; interface unverifiedcolcompress and rowcompress Table Access Methods with vectorized execution
pg_cryogen0.112, 13, 14, 15, 16, 17, 182026-08-30Catalogue candidate; interface unverifiedExperimental append-only compressed table access method for PostgreSQL 12 and later.
undam0.1Unknown2026-08-30Catalogue candidate; interface unverifiedUNDO storage table access method with in-place updates
tcle1.012, 132026-08-30Catalogue candidate; interface unverifiedExperimental table access method for transparent AES-256-CBC encryption of selected column types.
append_only_heap1.0Unknown2026-08-30Catalogue candidate; interface unverifiedPostgreSQL table access method that avoids fragmentation of variable-length append-only data.
redis_backed_storage0.0.011, 12, 13, 14, 15, 162026-08-30Catalogue candidate; interface unverifiedExperimental PostgreSQL table access method backed by Redis storage.
pgrand0.1.015, 162026-08-30Catalogue candidate; interface unverifiedGenerates random test data through a PostgreSQL FDW, with an experimental table access method.
pg_elephantduck0.0.016, 172026-08-30Catalogue candidate; interface unverifiedColumnar PostgreSQL table access method powered by DuckDB and Parquet storage.
csv_tam0.0.1Unknown2026-08-30Catalogue candidate; interface unverifiedCSV table access method for PostgreSQL that stores table tuples in CSV-formatted relation files.
pgtam0.0.1Unknown2026-08-30Catalogue candidate; interface unverifiedExperimental in-memory PostgreSQL table access method implemented as a C extension.
gfs0.0.1Unknown2026-08-30Catalogue candidate; interface unverifiedGFS copy-on-read storage: a Table Access Method whose missing rows are fetched from the source on read and written through locally
pg_delta_am0.1.0Unknown2026-08-30Catalogue candidate; interface unverifiedDelta table access method skeleton
traceam0.1Unknown2026-08-30Catalogue candidate; interface unverifiedSimple table access method that just prints out what functions in the access methods and related functions that are called.
treedb_pgext1.0Unknown2026-08-30Catalogue candidate; interface unverifiedTreeDB table access method (Phase 0 prototype)
open_pg_tde2.4.016, 17, 182026-08-30Catalogue candidate; interface unverifiedTransparent data encryption for upstream PostgreSQL using the tde_heap access method, including tables, indexes, TOAST, WAL, and temporary files.
autocluster1.7.0Unknown2026-08-31Catalogue candidate; interface unverifiedEDB table access method that preserves clustering locality during inserts.
bluefin1.7.015, 16, 17, 182026-08-31Catalogue candidate; interface unverifiedAppend-only compressed table access method for time-series workloads.
optimized_row_format1.0172026-08-31Catalogue candidate; interface unverifiedExperimental table access method for compact, cache-friendly row storage.
pgcolumnar1.0-alpha415, 16, 17, 18, 192026-09-19Primary documentation reviewed separately belowNative column-oriented table access method with compression, vectorized scans, and Parquet workflows.
refdata1.7.0Unknown2026-08-31Catalogue candidate; interface unverifiedEDB table access method for frequently read, rarely changed reference data.

Primary-source capability observations

Each statement applies to its named extension version and immutable source revision. Unlisted capabilities remain unknown. These are documentation observations, not runtime tests or current maintenance guarantees.

5 directory rows.

ExtensionReviewed versionCapabilityEvidence stateConditionsEvidence date and source
pgcolumnar1.0-alpha4Table AM identityVerified in documentationNative columnar Table AM. This reviewed version is an alpha release.2026-09-29 · 0d3100dd4fa7 · README.md
pgcolumnar1.0-alpha4Parallel scansConditionalThe planner can create parallel columnar scans; cost and worker settings determine plan selection.2026-09-29 · 0d3100dd4fa7 · docs/limitations.md
pgcolumnar1.0-alpha4MaintenanceConditionalIts own vacuum performs no parallel work. CLUSTER, VACUUM FULL and REPACK are rejected; extension compaction functions provide alternatives.2026-09-29 · 0d3100dd4fa7 · docs/limitations.md
pgcolumnar1.0-alpha4TABLESAMPLEVerified limitationSampling a columnar table raises an unsupported-operation error.2026-09-29 · 0d3100dd4fa7 · docs/limitations.md
pgcolumnar1.0-alpha4Distributed transaction guaranteesUnknownNo distributed transaction guarantee was established by this review.2026-09-29 · 0d3100dd4fa7 · README.md

Reading this collection

Table AM is the native table access-method interface, available from PostgreSQL 12. Heap storage in older releases is not presented as an implementation of that later API. FDWs, database forks and unrelated storage architectures remain distinct.