Apache Hudi 0.8.0版本重磅發布


1. 重點特性

1.1 Flink集成

自從Hudi 0.7.0版本支持Flink寫入后,Hudi社區又進一步完善了Flink和Hudi的集成。包括重新設計性能更好、擴展性更好、基於Flink狀態索引的寫入Pipeline;支持Flink寫入MOR表;Flink批量讀取COW和MOR表;流式讀取MOR表;同時支持了Hudi作為Source和Sink的Flink SQL Connector,在Hudi 0.8.0版本發布后,用戶可以使用Flink1.11+體驗上述所有新特性。

想了解更多Flink寫入Hudi的細節,請參考 RFC-24

具體教程可參考:重磅!解鎖Apache Flink讀寫Apache Hudi新姿勢

1.2 並發寫

單表支持並發寫特性在Hudi社區呼聲比較高,0.8.0版本Hudi使用樂觀鎖並發控制支持多客戶端並發寫同一張表,Hudi支持文件級別樂觀鎖並發控制,如兩個commit(或寫入客戶端)同時寫入一張表,如果兩個commit修改的文件不相同,兩個客戶端的寫入都可以成功,現在這個功能標記為experimental,用戶可以基於ZookeeperHiveMetastore來提供鎖服務,后續還會考慮提供基於文件的鎖服務。

想了解更多並發寫入細節,請參考RFC-22,想使用並發寫功能,可參考並發控制配置。

1.3 寫入端改進

  • Flink客戶端支持InsertOverwrite
  • Java客戶端支持COW表

1.4 查詢端改進

  • 支持Spark Structured Streaming流式讀取Hudi表
  • 改進Metadata Table的性能
  • 改進Clustering的性能

2. 遷移指南

  • 如果從小於0.5.3版本遷移,請參考每個版本遷移指南
  • 0.6.0版本之后未引入新的表版本
  • HoodieRecordPayload接口被標記為deprecated,重新引入了包含properties參數的接口,歡迎遷移至新接口,老接口將在0.9.0版本移除,請盡快遷移。

3. 總結

0.8.0版本與Flink做了更深度的集成,借助Flink和Hudi構建更實時的數據湖,同時0.8.0版本還支持了Flink和Spark的流批讀寫,Hudi可作為流批一體的統一數據存儲層。

4. 感謝

感謝參與0.8.0版本的所有貢獻者,歡迎廣大數據湖愛好者加入Apache Hudi社區,歡迎star & fork https://github.com/apache/hudi

源碼下載


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM