Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Impala FDW

PostgreSQL foreign data wrapper for the Impala + Kudu data plane, maintained as components/impala_fdw → weathership/impala_fdw.

Full specification: components/impala_fdw/docs/SPEC.md (in-tree: components/impala_fdw/docs/SPEC.md after submodule init).

Scope

Hot storageKudu (STORED AS KUDU); kudu_scan via libkudu_client
Warm storageIceberg and Impala UNION ALL views via impala_sql (HS2)
IdentityKerberos: Postgres GSSAPI role is the Impala/Kudu principal
Access controlPostgres GRANT + RLS / security-barrier views

Applications and governance tooling reach the data plane through PostgreSQL + impala_fdw. Impala remains the SQL engine; HS2 is the transport behind the FDW.

Role

PostgreSQL (:5455)  --impala_fdw-->  Impala HS2 (:21050)  -->  Kudu (:7051)
                         \------ kudu_scan (gov shapes) ------/

Postgres is the primary front end for AGE / Atlas / Ranger metadata SQL and, going forward, for row/sample data via the FDW. Impala is the SQL adapter behind the FDW; Kudu scans cover the known Atlas+Ranger+sigint algebra (SPEC §6).

Build

git submodule update --init components/impala_fdw
just impala-fdw-build

Status

Phase 1a: HS2 foreign scans with column projection, eq/range predicates, IN / = ANY pushdown, and EXPLAIN ShapeId / remote SQL. Atlas typed Kudu projections: config/atlas/kudu_projections.sql + kudu_projections_fdw.sql. Outbox: Atlas → Kudu outbox.

Phase 3 (lab-ready): direct kudu_scan via libkudu_client (kudu_scan.md). PR-K0–K4 + checkpoint-02 (LIMIT under agg/sort, multiset gates, warm-cache ~0.5 ms, hs2-smoke link). Atlas FTs default access=auto. PR-K5 Kerberos plan verified (staged K5a–K5e in kudu_scan.md); not yet implemented.

just impala-fdw-build && just impala-fdw-install
just atlas-kudu-projections-seed
just atlas-frontier-bench