The easiest way to Analytics in Postgres: pg_mooncake v0.1
We announced pg_mooncake to the world on Day 60.
Today, Day 131, pg_mooncake comes out of beta.
pg_mooncake wins on ease and performance. So, we doubled down for v0.1. That’s it.
The Easiest Way to Fast Analytics in Postgres
With a native columnstore table in Postgres, pg_mooncake brings familiar table semantics to the way you run analytics. Columnstore tables support transactional operations like INSERT, SELECT, UPDATE, DELETE, and COPY, alongside joins with regular Postgres heap tables.
In v0.1, we’ve made it even easier to load data into columnstore tables:
- From Parquet, CSV, and JSON files:
- From Hugging Face datasets:
- From existing Iceberg and Delta Lake tables:
Better performance for time-series workloads
pg_mooncake is the only Postgres extension that adds columnar storage and vectorized execution.
In v0.1, we added file statistics and skipping. Customers run time-series and analytics workloads without traditional sharding.
Our ClickBench results land next week. (Hint: top 10 🙂). Perhaps Postgres is indeed a Great Real-Time Analytics Database.
Looking Ahead to v0.2
We will double down on two areas: DevEx and time-series workloads. Planned improvements include:
- Enhanced support for small writes, updates, and deletes
- Syncing rowstore tables to columnstore tables
- Indexes (secondary indexes and sort keys)
- Time-series functions
To our community, thank you
It takes a village. Thank you to our community, customers, contributors, and Postgres partners like Neon and Supabase. Your support has been invaluable.
Our favorite metric is the number of contributors to pg_mooncake growing.
The momentum behind pg_mooncake is clear. Analytics in Postgres is indeed a reality 🥮