恭喜,Apache Hudi 即将成为顶级项目!

美国当地时间2020年05月11日,Apache Hudi 项目的共同创始人、PMC Vinoth Chandar 给社区发了一封标题为 [DISCUSS] Graduate Apache Hudi (Incubating) as a TLP[1] 的邮件,来投票讨论 Apache Hudi 毕业成为 Apache TLP 项目。

2020年05月19日共40人投票赞成[2] ,不久社区给 Apache 董事会申请成为 TLP,今天(2020年05月23日)凌晨结果终于出来了,Vinoth Chandar 大佬给社区发了邮件说Apache 董事会同意 Apache Hudi 成为顶级项目提议。接下来,Apache Hudi 社区会准备进入 TLP 的一些事情。

Apache Hudi(Hoodie) 是 Uber 为了解决大数据生态系统中需要插入更新及增量消费原语的摄取管道和 ETL 管道的低效问题,该项目在2016年开始开发,并于2017年开源,2019年1月进入 Apache 孵化器。

Hudi (Hadoop Upsert Delete and Incremental) 是一种分析和扫描优化的数据存储抽象,可在几分钟之内将变更应用于 HDFS 中的数据集中,并支持多个增量处理系统处理数据。通过自定义的 InputFormat 与当前 Hadoop 生态系统(包括 Apache Hive、Apache Parquet、Presto 和 Apache Spark)集成,使得该框架对最终用户来说是无缝的。

Hudi 的设计目标就是为了快速增量更新 HDFS 上的数据集,它提供了两种更新数据的方式:Copy On Write 和 Merge On Read。Copy On Write 模式就是我们更新数据的时候需要通过索引获取更新的数据所涉及的文件,然后把这些数据读出来和更新的数据进行合并,这种模式更新数据比较简单,但是当更新涉及到的数据比较大时,效率非常低;而 Merge On Read 就是将更新写到单独的新文件里面,然后我们可以选择同步或异步将更新的数据和原来的数据进行合并(可以称为 combination),因为更新的时候只写新的文件,所以这种模式更新的速度会比较快。

有了 Hudi 之后,我们可以实时采集 MySQL、HBase、Cassandra 里面的增量数据然后写到 Hudi 中,然后 Presto、Spark、Hive 可以很快地读取到这些增量更新的数据,如下:

更多关于 Apache Hudi 的介绍可以参见 《Apache Hudi: Uber 开源的大数据增量处理框架》 以及 《Uber 大数据平台的演进(2014~2019)》的介绍,以及 Apache Hudi 的官方文档:http://hudi.apache.org/

引用链接

[1] [DISCUSS] Graduate Apache Hudi (Incubating) as a TLP: https://www.mail-archive.com/general@incubator.apache.org/msg72160.html
[2]  https://lists.apache.org/thread.html/r86278a1a69bbf340fa028aca784869297bd20ab50a71f4006669cdb5%40%3Cgeneral.incubator.apache.org%3E

 
猜你喜欢

1、NVIDIA 与数砖合作,将 GPU 加速带入 Apache Spark 3.0

2、58同城 HBase 平台建设实践

3、MongoDB Spark Connector 实战指南

4、Apache Kafka 不需要管理员:删除 Apache ZooKeeper 的依赖

过往记忆大数据微信群,请添加微信:fangzhen0219,备注【进群】