Apache Hudi助力nClouds加速資料交付

愛喝啤酒的雷神發表於2020-10-23

1. 概述

在 上,當客戶的業務決策取決於對近實時資料的訪問時,客戶通常會向我們尋求有關資料和分析平臺的解決方案。但隨著每天建立和收集的資料量都在增加,這使得使用傳統技術進行資料分析成為一項艱鉅的任務。

本文我們將討論nClouds如何幫助您應對資料延遲,資料質量,系統可靠性和資料隱私合規性方面的挑戰。

Amazon EMR上的Apache Hudi是需要構建增量資料管道、大規模近實時處理資料的理想解決方案。本篇文章將在Amazon EMR的Apache Hudi上進行原型驗證。

nClouds是具有DevOps、資料分析和遷移能力的  ,並且是AWS託管服務提供商(MSP)和AWS完善的合作伙伴計劃的成員。nClouds的使命是幫助您構建和管理可更快交付創新的現代基礎架構解決方案。

2. 解決方案概述

Apache Hudi是一個開源資料管理框架,用於簡化增量資料處理和資料管道開發。它最初於2016年在Uber開發,旨在為PB級資料分析提供更快的資料,進行低延遲、高效率的資料攝取。

Apache Hudi通常用於簡化進入資料湖和分析服務的資料管道,支援記錄級粒度的Change Data Capture(CDC),同時可透過Apache Hive和Presto之類的SQL查詢引擎對資料集進行近乎實時的分析,更多關於Hudi詳情,可訪問 hudi.apache.org

Amazon EMR是領先的雲大資料平臺,可使用開源工具(例如Apache Hudi,Apache Spark,Apache Hive,Apache HBase,Apache Flink和Presto)處理大量資料。當選擇Spark,Hive或Presto作為部署選項時,Apache Hudi會自動安裝在Amazon EMR叢集中。

在2019年,Amazon EMR團隊開始與Apache Hudi社群密切合作,以提供補丁和bug修復並新增對AWS Glue Data Catalog的支援。

Apache Hudi非常適合將資料快速提取到Hadoop分散式檔案系統(HDFS)或雲端儲存中,並加快ETL/Hive/ Spark作業,Hudi適用於讀繁重或寫繁重的場景,它可以管理儲存在Amazon Simple Storage Service(Amazon S3)上的資料。

2.1 資料延遲

高資料延遲會影響客戶的運營能力,進一步影響新產品和服務的快速開發和交付,盈利能力以及基於事實的決策。

在上述場景下,我們建議使用Apache Hudi,它提供了DeltaStreamer實用工具程式來執行自動增量更新處理,使得關鍵業務資料管道能夠以接近實時的延遲實現高效攝取,每次查詢表時,都可以讀取這些增量檔案。

Apache Hudi透過處理對近實時資料的查詢以及增量拉取進行時間點資料分析的查詢來節省時間。

2.2 資料質量

資料量不斷增長可能會對資料質量判斷造成困難。從海量、可變和複雜的資料集中提取高質量的資料非常困難,尤其是在混合了非結構化,半結構化和結構化資料的情況下。

當資料快速變化時,其質量取決於其時效性,Apache Hudi能夠處理資料結構變更,自動執行增量資料更新以及有效地提取流資料的能力,有助於提取和整合高質量資料。

Apache Hudi可與 , 和 等AWS服務整合以實現自動化實時資料湖工作流程。

2.3 系統可靠性

當我們執行 (使用AWS Well-Architected Framework的最佳實踐進行架構評估)時,我們關注的核心點之一是架構可靠性。如果透過臨時提取,轉換,載入(ETL)作業提取資料,而沒有可靠的架構通訊機制,則系統可靠性可能會受到威脅。

我們喜歡Apache Hudi在資料湖中控制和管理檔案佈局的功能,此功能對於維護健康的資料生態系統至關重要,因為它提高了可靠性和查詢效能。

使用Hudi,使用者無需載入新資料並使用ETL清理資料,從之前資料層攝取的資料和變更會自動更新,並在儲存新資料時觸發自動化的工作流程。

然後在AWS資料庫遷移服務(AWS DMS)註冊更新,並在Amazon Simple Storage Service(Amazon S3)的源位置中建立一個Apache Parquet檔案,它使用Apache Avro作為記錄的內部規範表示,從而在資料提取或ETL管道中提供可靠性。

2.4 遵守資料隱私法規

Apache Hudi管理著資料湖中資料的所有互動,並且提供對資料的訪問的服務,同時Apache Hudi使得基於Amazon S3的資料湖能夠遵守資料隱私法,其提供了記錄級的更新和刪除,因此使用者可以選擇行使其被遺忘的權利或更改其有關如何使用其資料的同意。

3. 原型驗證

在nClouds,我們構建了一個非面向客戶的原型驗證(PoC)以說明如何使用Hudi的插入、更新和刪除操作來處理資料集中的更改,COVID-19的經濟影響促使我們使用與COVID-19大流行相關的資料。

TDWI最近的一項研究發現,由於大流行的影響,超過一半的資料和分析專業人員被要求回答新型別的問題,約三分之一的受訪者表示,他們需要更新模型和分析負載以透過重新訓練模型或重塑客戶群來應對不斷變化的客戶行為。

我們PoC的資料流為Amazon Relational Database Service(Amazon RDS)-> Amazon S3記錄集更改 -> Hudi資料集,以快速應用增量更改。同時我們需要一個環境來執行我們的測試,包括Amazon RDS,AWS DMS任務,Amazon EMR叢集和S3儲存桶,最後一步做資料視覺化,我們使用Amazon QuickSight展示報表。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69984138/viewspace-2729123/,如需轉載,請註明出處,否則將追究法律責任。

相關文章