01
Iceberg 前世今生
从 Hive 到 Iceberg 的演进之路,为什么需要 Iceberg?剖析数据湖表格式的变革驱动力。
演进动机
02
核心概念深潜
Snapshot、Manifest、Data File 的物理与逻辑结构剖析,理解 Iceberg 元数据层。
快照清单
03
表格式详解
V1 vs V2 格式对比,何时选择 V2?格式演进对写入与读取的影响。
V1V2
04
Catalog 选型实战
Hive Catalog、Hadoop Catalog、REST Catalog 对比与最佳实践,统一元数据管理。
Catalog选型
05
Spark 集成
Spark 3.x 读写 Iceberg 表,SQL 扩展与 DataFrame API,快速构建批处理管道。
SparkSQL
06
Flink 集成
Flink CDC 入湖 Iceberg,实时流式写入与批读,端到端 exactly-once 语义。
FlinkCDC
07
Trino/Presto 查询
高性能 OLAP 查询 Iceberg 表,分区裁剪与下推优化,秒级分析体验。
TrinoOLAP
08
分区策略进阶
隐藏分区、分区变换(Bucket/Truncate/Year/Month/Day/Hour)灵活设计。
分区变换
09
文件布局优化
小文件合并(Compaction),目标文件大小与并行度调优,降低元数据压力。
合并调优
10
排序与聚簇
Z-order 排序与 Hilbert 曲线,提升查询过滤效率,减少扫描数据量。
Z-order聚簇
11
表维护实战
Expire Snapshots、Remove Orphan Files、Rewrite Manifests 保持表健康。
维护清理
12
增量读取与 CDC
从 Iceberg 读取增量数据,实现实时数仓,流批一体新范式。
增量CDC
13
Time Travel 与版本回滚
利用 Snapshot 实现数据回溯与审计,精准恢复任意时间点。
时间旅行回滚
14
Schema Evolution
列增删改、类型变更、嵌套结构演进,无痛兼容历史数据。
Schema演进
15
分区演进
动态分区变更,从月分区到日分区的平滑迁移,无需重写历史。
分区演进迁移
16
ACID 事务详解
乐观锁、提交冲突处理、重试机制,保障并发写入一致性。
ACID事务
17
并发写入控制
多引擎并发写入 Iceberg 表,避免数据损坏,锁与冲突策略。
并发写入
18
数据质量与约束
Iceberg 的 NOT NULL、CHECK 约束与数据校验,提升数据可靠性。
约束质量
19
性能调优总纲
读取路径优化、写入路径优化、元数据缓存,全局调优框架。
调优总纲
20
查询计划优化
谓词下推、Min/Max 统计信息、Manifest 过滤,加速查询执行。
下推统计
21
写入性能调优
Writer 并行度、Flush 频率、Parquet/ORC 编码选择,最大化写入吞吐。
写入编码
22
内存与 JVM 调优
堆外内存、Direct Memory、GC 策略,避免 OOM 与停顿。
JVM内存
23
存储后端适配
HDFS、S3、OSS、MinIO 的配置与性能差异,选型与调优指南。
存储适配
24
对象存储最佳实践
S3 的 List 性能优化、预签名 URL、Endpoint 配置,降低延迟。
S3对象存储
25
监控与可观测性
Metrics Reporter、Spark 监听器、Flink 指标,构建可视化监控。
监控指标
26
数据安全
表级别权限、列级掩码、行级过滤(Ranger/Atlas 集成),保障数据安全。
安全权限
27
多引擎混合架构
Spark 写 + Flink 写 + Trino 读的协同方案,统一数据底座。
混合架构
28
生产环境部署
集群配置、高可用 Catalog、容灾备份,生产级最佳实践。
部署高可用
29
常见问题排查
提交失败、数据不一致、性能瓶颈诊断,系统性故障处理。
排查诊断
30
未来展望
Iceberg 3.0、Puffin 格式、REST Catalog 标准化,技术趋势前瞻。
未来趋势