Postgres and Open Source Experts

Anytime. Anywhere. Since 1997.

pgcolumnar-logo

PgColumnar: the Column extension for PostgreSQL

pgColumnar is a column-oriented storage extension for PostgreSQL, implemented as a table access method. A table created USING pgcolumnar stores its data by column, with per-column compression, chunk-group skipping, and a vectorized aggregate path. It targets analytic workloads: large scans, aggregates, and column projections over append-mostly data. It also reads external Parquet and Apache Iceberg tables, from a local path or from object storage.

Contact us

Reach out! We would love to hear from you.

Learn More

More Information

PgColumnar is currently 1.0alpha2 and ready to be tested by the wider world.

Major Features

  • Column-oriented storage in the relation's main fork, so the buffer manager, WAL, and page checksums apply.
  • Type-aware value encodings, applied to each chunk before compression.
  • Column projection: a scan decodes only the columns the query references.
  • Vectorized aggregate.
  • Parallel scan across a table's row groups.
  • Read stream prefetch of block reads on PostgreSQL 17 and later (pgcolumnar.enable_read_stream)
  • Index-only scans
  • Parallel bulk ingest
  • Reading external Parquet in place
  • Object storage
  • Apache Iceberg
  • REST catalog
  • Read about more features here.