湖仓表格式¶
Reference · 速查
本章组织
本章按 5 个子组:
- 核心协议:湖表 / Snapshot / Manifest / Schema Evolution / Partition Evolution / Time Travel / Branching & Tagging / Puffin
- 运维机制:Streaming Upsert / CDC / Delete Files / Compaction
- 扩展前沿:Materialized View(协议视角) / 多模湖仓 / Iceberg v3
- 系统实现:Iceberg / Paimon / Hudi / Delta Lake
- 横向对比:DB vs 湖表 / 4 表格式 / Puffin vs Lance
外部权威:docs/references/lakehouse/。对比 Apache Iceberg 官方 docs 结构(Tables → Branching/Config/Evolution/Maintenance/Performance/Reliability/Schemas/Partitioning · 与本章组织接近)。
聚焦"建在对象存储上的表"——它怎么组织元数据、怎么做 ACID、怎么支持演化与时间旅行。
和 foundations/ 的分界 · 湖表的物理底座
本节是逻辑表协议层(Snapshot / Manifest / CAS 提交 / Schema 演化 / 具体产品)。它建在物理文件之上——物理层(对象存储 + 列式文件 + 编码)归到 foundations/:
- 对象存储 —— 湖表的地基(读写语义、CAS、Conditional PUT)
- Parquet · ORC —— Iceberg / Paimon / Hudi / Delta 最常用的数据文件格式
- Lance Format —— 为多模 + 向量 + ML 训练重写的列式格式(也是 LanceDB 的底座)
- 压缩与编码 · 列式 vs 行式 —— 文件内部的组织方式
如果还没读过上面这些物理层,建议先过一遍 基础模块的主线。
建议阅读顺序¶
从"第一次接触湖表"到"能做选型"的分层路径
必读主线(前 6 步顺序做)——读完能做湖表选型:
- 湖表 —— 先理解"建在对象存储上的表"到底是什么
- Snapshot —— 最核心的机制;其他能力都是它的派生
- Manifest —— Snapshot 下一层的索引结构 · 湖表性能基石
- 按需读演化能力:Schema / Partition / Time Travel / Branching
- 上生产必读运维三件套:Delete Files → Compaction · 维护生命周期 → Streaming Upsert / CDC
- 对照实现选型:Iceberg / Paimon / Hudi / Delta
可选扩展(做特定场景再翻):
- 要做 BI 聚合加速 / AI Feature Store → Materialized View
- 多模湖仓(向量 / 地理 / Variant / 图) → 多模湖仓
核心协议 · 表格式标准化能力(稳定)¶
- 湖表 —— 为什么它和传统 DB 存储引擎不是一回事
- Snapshot —— 快照如何让"时间旅行"成为可能
- Manifest —— 元数据的二层索引,湖表性能的基石
- Schema Evolution —— 不重写历史就能改表结构
- Partition Evolution —— 改分区策略也不重写历史
- Time Travel —— 查过去某一时刻 / 版本的样子
- Branching & Tagging —— Iceberg 原生分支 / 标签
- Puffin —— Iceberg 的辅助索引侧车文件
运维机制 · 写后要管的事(稳定)¶
- Streaming Upsert / CDC —— 流式变更持续入湖
- Delete Files —— 行级删除背后的机制
- Compaction —— 小文件治理 · 含"生产维护生命周期"全景
扩展能力 / 前沿延伸 · 非协议核心(成熟度不一)¶
成熟度声明
以下两页不是表格式协议的稳定核心能力: - Materialized View 主要是引擎层实现(Trino connector / Databricks 商业能力),spec 尚未标准化 - 多模湖仓 是前沿方向——向量 / 地理 / Variant / 图在湖表上的承载仍在演进
- Materialized View —— 湖上 MV · 引擎层实现为主 · Feature Store 雏形
- 多模湖仓 —— 前沿 · 向量 / 地理 / Variant / 图 的湖表承载
主流实现¶
- Apache Iceberg —— 最"协议化"的湖表格式
- Apache Paimon —— 流式原生,LSM 骨架
- Apache Hudi —— 湖上 upsert 的先驱
- Delta Lake —— Databricks 主推
横向对比¶
团队决策¶
常用参考¶
- Apache Iceberg §6 维护与运维命令 · 建表 / 维护 / 元数据表 / Properties