# Snowflake-Labs/pg_lake

pg_lake: Postgres with Iceberg and data lake access

Repository: https://github.com/Snowflake-Labs/pg_lake
Canonical: https://ross.abutalabs.com/products/pg_lake
Homepage: https://github.com/Snowflake-Labs/pg_lake/blob/main/docs/README.md
Language: Python
License: Apache-2.0
License Family: permissive
Last push: 2026-08-26T19:44:10+00:00

## Health v2 (maintenance only)
Score: 82/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 95, longevity 21
- inputs: {"age_days": 302, "days_push": 7, "days_rel": 36, "gap_med": 8.0, "n_releases_24m": 11}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1625, forks 114 (observed 2026-08-28T04:05:12.852028+00:00)

## What it is
pg_lake is a set of PostgreSQL extensions that turn Postgres into a lakehouse engine for Apache Iceberg tables and raw data lake files in object stores like S3. It combines Postgres transactions with DuckDB's query engine to query, import, and export Parquet, CSV, JSON, Iceberg, and geospatial formats using plain SQL.

## Use cases
- query parquet files in s3 from postgres
- create and manage iceberg tables with sql
- build a postgres lakehouse with transactional guarantees
- import csv and  files from object storage into postgres tables
- export query results to parquet in s3
- read geo and shapefiles with sql
- run dbt models on iceberg tables
- combine local tables and external data lake files in one query

## When to choose
- you want iceberg table management and data lake queries without leaving postgres
- you need transactional lakehouse semantics on icebberg tables
- you want duckdb performance behind a postgres interface
- your data lives in s3-compatible object storage in parquet, csv, or

## When to avoid
- you need a managed cloud lakehouse service rather than self-hosted extensions
- your workload is purely OLTP with no data lake files
- you cannot run additional sidecar processes like pgduck_server
- you require engines other than postgres and duckdb to write your iceberg tables

## Facets
- artifact type: library
- maturity: active
- function: database, database-driver, etl, geospatial, search-engine
- domain: databases, big-data, analytics, developer-tools
- platform: self-hosted, python
- tags: iceberg, lakehouse, postgres-extension, duckdb, parquet, s3, object-storage, sql, data-engineering, linux, macos, docker

## Member repositories
- Snowflake-Labs/pg_lake (main) score 82

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:12.852028+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:48:28.375105+00:00, confidence not recorded.
  - readme: https://github.com/Snowflake-Labs/pg_lake (fetched 2026-08-28T04:05:12.852028+00:00, sha ad8fbc102e4d)
  - homepage: https://github.com/Snowflake-Labs/pg_lake/blob/main/docs/README.md (fetched 2026-08-29T11:21:23.686177+00:00, sha 3c3fabad2afb)
- Data as of 2026-08-30T08:39:29.467469+00:00.
