Apache Hudi是一个支持插入、更新、删除的数据湖框架,通常用于基于对象存储构建低成本Lakehouse。同时Apache Hudi还支持多版本的⽂件管理协议,提供⼊湖和分析过程中的增量数据实时写⼊、ACID事务、小⽂件⾃动合并优化、元信息校验和Schema演进、⾼效的列式分析格式、⾼效的索引优化、超⼤分区表存储等能⼒。

AnalyticDB MySQL团队基于Apache Hudi构建低成本Lakehouse的方案,完全兼容开源Hudi生态。开通 AnalyticDB MySQL服务后只需简单配置即可基于OSS存储和Hudi构建Lakehouse,如通过APS服务将Kafka/SLS日志型数据准实时入湖,或利用 AnalyticDB MySQL Serverless Spark引擎将RDS/Parquet离线数据批量入湖。方案架构图如下所示: Hudi存储

AnalyticDB MySQL与Apache Hudi进行深度整合并对Hudi内核做了深度改造,相对于开源Hudi方案,具有以下优势:

使用门槛低
通过APS白屏化配置即可支持数据快速写入Hudi,同时 AnalyticDB MySQL和Hudi屏蔽了对接Spark的繁琐配置,开箱即用。
高性能写入
面向对象存储OSS写入进行深度优化。在典型日志场景中,相较于开源方案写OSS性能提升1倍以上;同时支持热点数据自动打散,解决数据倾斜问题,大幅提升写入稳定性。
分区级生命周期管理
支持设置多种策略,如按分区数、按数据量和按过期时间策略管理分区数据生命周期,同时支持并发设置生命周期管理策略,进一步降低存储成本。
异步Table Service
支持异步Table Service服务,与写入链路完全隔离,对写入链路无任何影响,同时通过异步Table Service如Clustering提升查询性能,典型场景下查询性能提升至原来的40%以上。
元数据自动同步
借助 AnalyticDB MySQL统一元数据服务,数据写入Hudi后可通过 AnalyticDB MySQL Serverless Spark和XIHE引擎无缝访问,无需手动同步表元数据,一份入湖数据支持上层多个计算引擎。