Apache Paimon #
Apache Paimon 是一种湖格式(Lake Format),可与 Flink 和 Spark 构建实时湖仓架构(Realtime Lakehouse Architecture),同时支持流处理与批处理。Paimon 创新性地将湖格式与 LSM(日志结构合并树)结构结合,将实时流式更新引入湖架构中。
Paimon 提供以下核心能力:
-
实时更新:
- 主键表支持大规模更新写入,具有极高的更新性能,通常通过 Flink Streaming 实现。
- 支持自定义 Merge Engine,可按需更新记录。例如保留最新行(去重)、部分更新、聚合更新、保留首行等,灵活定义。
- 支持自定义变更日志生成器(changelog-producer),在更新中生成正确且完整的 changelog,简化流式分析。
-
海量追加数据处理:
- 追加表(无主键)具备大规模批处理与流处理能力,自动进行小文件合并。
- 支持 z-order 排序的数据压缩(Compaction),优化文件布局。结合 minmax 等索引实现基于数据跳过的数据加速查询。
-
数据湖能力:
- 可扩展的元数据:支持 PB 级别的大规模数据集及大量分区。
- 支持 ACID 事务、时间旅行(Time Travel)与 Schema 演进(Schema Evolution)。