一、概述
随着数据湖技术的快速发展,Apache Iceberg作为新一代开源数据湖表格式,凭借其ACID事务支持、时间旅行、高效Schema演化等核心能力,已成为企业构建现代化数据架构的重要选择。Dataphin作为领先的数据中台产品,已完成与Iceberg的深度集成,通过全链路功能适配和性能优化,为企业提供开箱即用的数据湖治理解决方案。
二、核心模块与功能适配
核心链路
不同引擎的Iceberg适配现状
1. 数据源支持Iceberg
Iceberg作为新一代数据湖表格式标准,Dataphin通过Hive数据源的多格式适配能力实现兼容。在创建Hive数据源时,只需开启"数据湖表格式"选项即可启用Iceberg支持。对于已启用该功能的数据源,允许用户通过配置Spark。
2. 离线数据集成
在数据离线入湖和出湖场景,离线管道输入、输出组件均完成适配。在数据输入层面,当检测到Iceberg格式的源表时,将自动识别表类型进行读取,确保高效解析Iceberg特有的元数据结构和分区信息。针对输出场景,系统提供便捷的建表能力:用户可直接基于源表结构创建目标Iceberg表,支持通过Hive或Spark引擎进行建表,并且在写入时对Iceberg的隐藏分区特性也进行了支持。
输入组件读取Iceberg表
输出组件写入Iceberg表
3. 实时数据集成
在实时数据入湖场景中,Dataphin的实时集成能力为多源异构数据写入Iceberg提供了灵活高效的解决方案。系统支持从各类主流数据源(如MySQL、Kafka、Oracle等)实时同步数据至Iceberg表,并根据源表结构自动创建目标表,同时支持Hive和Spark两种SQL引擎。
针对目标表类型,Dataphin实现了多种写入策略:当目标表定义为主键表时,系统通过轻量级更新机制实现Upsert操作,有效应对数据变更场景;对于非主键表则采用追加写入模式,保障高吞吐场景下的写入性能。这种动态适配能力既满足了事务性更新需求,又延续了传统数据湖的扩展优势,显著提升了实时数据入湖的灵活性和处理效率。
实时集成写入Iceberg表
4. 离线数据研发
离线研发已全面支持Apache Iceberg表的存储与查询功能,兼容Iceberg SQL语法标准,可无缝对接数据湖与数据仓库场景。
离线研发支持Iceberg
5. 实时数据研发
Iceberg 依赖 Catalog 管理元数据(如 Hive Metastore、Hadoop 本地 Catalog 等),Dataphin实时研发Flink SQL 支持通过配置Hive Catalog 方式操作Iceberg表。
实时研发支持Iceberg
三、结语
未来我们将提供可视化的Iceberg表管理工具。除了Iceberg外,我们还支持了Hudi、Databricks、Paimon(即将推出)等数据湖,欢迎大家前来体验。