路线图
Mooncake Labs v0.2 历史特性路线图与当前 PGSTY 分支的工程维护重点。
说明
下方路线图保留了上游 docs.mooncake.dev/pg/roadmap 发布的 pg_mooncake v0.2 历史设计规划,并补充了当前 pgsty/pg_mooncake(v0.3.0)分支的长期工程维护重点。
PGSTY 维护重点(v0.3.0+)
PGSTY 维护的 Mooncake 套件(pg_mooncake v0.3.0、duckdb_mooncake v0.0.2、moonlink v0.0.1)专注于生产环境长期可用性、PostgreSQL 大版本覆盖与依赖安全加固:
- PostgreSQL 14–18 全版本支持:保持
pg_mooncake与最新pgrx(0.19.3)同步,覆盖 Linux(x86_64与aarch64、RHEL/Rocky EL8–EL10、Debian 12/13、Ubuntu 22.04/24.04)上的 PostgreSQL 14、15、16、17 与 18。 - DuckDB
2.0.0与pg_duckdb 1.2.0同步演进:随着 DuckDB 的TableCatalogEntry、TableFilterSet与StorageExtensionC++ 接口演进,持续维护pg_mooncake、pg_duckdb与duckdb_mooncake之间的 ABI 兼容性。 - 正确性与快速失败(Fail-Fast)保护:强制执行
pg_duckdb运行时版本校验、列存表 LSN 一致性快照读取、分区表层级自动设置REPLICA IDENTITY FULL,以及对已弃用辅助函数显式抛出0A000错误。 - 依赖项安全治理:定期对照 RustSec 漏洞库审计并升级全部三个锁文件(
pg_mooncake、moonlink、duckdb_mooncake/moonlink_ffi)中的 Rust 依赖项。
上游历史路线图(v0.2)
以下四项特性是 Mooncake Labs 针对 v0.2 架构规划的演进方向:
1. 面向日志与事件流的列存表(Columnstore Table for Logs / Events)
为 columnstore 表引入**仅追加(append-only)**模式:
- 针对流式写入与乱序插入进行专门优化;
- 内置基于时间的分区与数据保留(Retention)策略;
- 面向可观测性、遥测指标与高吞吐事件管道场景。
2. 无需底层行存表的原生列存表(Native Columnstore Tables)
直接创建并写入 columnstore 表,而无需依赖配套的 PostgreSQL 行存堆表:
- 直接对
columnstore表访问方法执行标准INSERT、SELECT、UPDATE、DELETE与COPY; - 注:原生
USING columnstore表在v0.1(Delta Lake 架构)中可用,而v0.2与v0.3.0采用mooncake.create_table(dst, src)通过逻辑复制镜像 PostgreSQL 行存表。
3. 写入现有 Iceberg 表(Write to Existing Iceberg Tables)
在 PostgreSQL 中创建能够直接写入外部现有 Apache Iceberg 表(由 REST 或 JDBC Catalog 管理)的 columnstore 镜像表,实现与 Spark、Trino、Flink 写入端的双向互通。
4. 查询路由与分区表透明整合(Query Routing & Partitioned Tables)
在行存 + 列存混合分区表层级上透明路由分析查询,无需手写 UNION ALL 或显式引用双表名称。