Apache Hudi:雲資料湖解決方案

leesf發表於2020-06-21

1. 引入

開源Apache Hudi專案為Uber等大型組織提供流處理能力,每天可處理資料湖上的數十億條記錄。

隨著世界各地的組織採用該技術,Apache開源資料湖專案已經日漸成熟。

Apache Hudi(Hadoop Upserts Deletes and Incrementals)是一個資料湖專案,可在與Apache Hadoop相容的雲端儲存系統(包括Amazon S3、Aliyun OSS)上進行流資料處理。

該專案最初於2016年在Uber開發,於2017年成為開源,並於2019年1月進入Apache孵化器。作為開源的結果反饋,Hudi已被阿里巴巴,騰訊,AWS,Uber和Kyligence等主要技術供應商的採用。

6月4日,Hudi(發音為"Hoodie")正式成為Apache軟體基金會(ASF)的頂級專案,這是一個里程碑,標誌著該專案已經達到了較高的程式碼成熟度和開發人員社群的參與。ASF是Hadoop,Spark,Kafka和其他廣泛使用的資料庫和資料管理程式的地方。

2. Hudi如何實現Uber的雲資料湖

Hudi現在是被多個組織使用的開源專案,其中Uber一直是堅定的使用者。

Uber資料工程經理Tanvi Kothari表示,Uber使用Hudi每天處理超過150PB資料湖中的5,000億條記錄。

Kothari運營著Uber全球資料倉儲團隊,該團隊負責為Uber的所有業務提供核心資料表。她指出,Hudi支援Uber對10,000多個表和數千個資料管道的讀寫進行增量處理。

Kothari說:”Hudi消除了處理大資料中的許多挑戰,它可以幫助您擴充套件ETL [Extract,Transform,Load]管道並提高資料保真度。”

3. Hudi作為雲資料湖分析的基石

大資料分析供應商Kyligence Solutions將Apache Hudi作為產品的一部分,該公司在中國上海和加利福尼亞州聖荷西設有辦事處,Kyligence的合夥人兼首席架構師史少鋒說道,他的公司使用許多Apache開源專案,包括Apache Kylin,Hadoop和Spark技術,來幫助企業管理資料。

史少鋒表示,Apache Hudi為Kyligence提供了一種直接在Hadoop分散式檔案系統(HDFS)或Amazon S3上管理更改資料集的方法。

Kyligence於2019年開始為美國客戶使用Hudi,同時在此期間,AWS推出了與Hudi和Amazon Elastic MapReduce(EMR)服務的整合。Kyligence Cloud服務現在還支援Hudi作為其所有使用者進行線上分析處理的資料來源格式。

史表示很高興看到Hudi畢業成為Apache的頂級專案的成就,他說,“Hudi有一個開放而熱情的社群,甚至將一系列Hudi文章翻譯成中文,使中國使用者更容易瞭解該技術。”

4. Hudi如何賦能雲資料湖流處理

ASF Apache Hudi的共同創始人兼VP Vinoth Chandar說,Hudi提供了使用資料流的功能,並使使用者能夠更新資料集。

Chandar將Hudi啟用的流處理視為一種資料處理方式,在這種方式中,資料湖管理員可以處理增量資料,然後可以使用該資料。

Chandar說:“真正考慮Hudi的一個好方法是作為一個資料儲存或資料庫,該資料庫在[AWS] S3、[Aliyun] OSS中儲存的資料之上提供事務處理功能。”

Chandar接著說,Hudi成為頂級專案也反映了該專案的成熟度。但是,儘管Hudi現在是Apache的頂級專案,但這項工作尚未達到1.0版本,最新的更新是3月25日釋出的0.5.2里程碑(畢業後又釋出了0.5.3版本)。

Hudi開發人員目前正在開發0.6.0版本,Chandar表示該版本將於6月底釋出。 Chandar說,該版本將是一個重要的里程碑,它將具有效能增強和改進的資料遷移功能,以幫助使用者將資料帶入Hudi資料湖。他說:“我們的計劃是至少每個季度釋出一個主要版本,然後希望每個月在主要版本之上釋出bugfix版本。”

相關文章