Iceberg在华为终端云的探索
整体概述
- 数据分析技术演进趋势:从Hadoop一体机到数据湖,再到湖仓一体,技术不断演进以适应云、AI和多元分析的需求。
- 传统目录方案的问题:在Hive等传统方案中,目录级别的数据管理存在效率低下、安全性不足、性能较差等问题。
- Iceberg的目标:通过文件级别的数据表管理,实现表的正确性与一致性,提升查询和执行效率,使用户无需感知物理结构。
Iceberg介绍
- 定义:Iceberg是一种Table Format规范,包含一组API和库,支持存储引擎、计算引擎和服务。
- 数据流图:实现存储层的流批统一,支持OLAP分析和实时化,提供ACID语义和高效回溯能力。
- 需要支持的能力:高效的Upsert操作、ACID语义支持、Schema变更多源实时数据接入方案、高效的回溯能力、支持批流读写。
特性应用
- 类Git式的数据管理:支持周期稳定快照、重要历史快照和实验分支,类似Git的分支管理机制。
- 场景示例:通过类Git式的数据管理,实现每天全量存储数据的业务改造。
- 实时化改造:添加LogStore模块,将计算和存储近实时改造为实时,统一命名为Iceberg Table,支持全量、增量及全量-增量数据的读取。
- 加速层计划:使用Alluxio或其它内存加速技术,打造数据湖加速层,实现冷热分层,提升查询性能并降低集群压力。
- 基于Flink的新版Sink:通过Flink FLIP-143/FLIP-191的新版Sink,实现二级索引和Flink Procedures语法支持,提升功能性和易用性。
- 生态支撑:基于Spark和Flink等组件构建数据出入湖工具,输出数据湖规范和标准,支撑上游业务使用数据湖进行业务开发。
未来规划
- 更丰富的接入场景:支持广告、推荐、特性工程等更多场景。
- 更快速的使用:通过多种手段强化性能。
- 更易用:从产品化角度简化使用和运维。
结语
欢迎加入团队,关注Iceberg社区公众号,加入Iceberg交流群。