通過EMR+DLF資料湖方案,可以為企業提供資料湖內的統一的中繼資料管理,統一的許可權管理,支援資料湖的多種管理如資料生命週期、湖格式自動最佳化、儲存分析等。同時支援多來源資料入湖以及一站式資料探索的能力。本文為您介紹EMR+DLF資料湖方案具體實踐步驟。
背景資訊
採用EMR+DLF資料湖解決方案,相對傳統EMR資料湖方案有下列優點:
DLF提供資料湖跨引擎的統一的,全託管免營運的中繼資料服務。
支援可視化的中繼資料管理,以及多版本管理和回退。
支援可視化一鍵中繼資料遷移。
支援中繼資料全文檢索索引。
支援中繼資料DataProfile,如檔案大小、行數、訪問頻次、小檔案數量、檔案冷熱度、有效檔案數等。
支援除EMR開源引擎外的更多計算引擎,如MaxCompute、Flink、Hologres等多種引擎。
DLF提供豐富的細粒度資料許可權控制。
支援按照資料目錄、資料庫、資料列、函數等資源的各種細粒度許可權點的可視化配置。
支援與EMR中多種計算引擎整合,包括Spark、Hive、Presto、Impala多種計算引擎。
提供豐富的資料湖管理能力。
支援多種維度資料生命週期管理,可以對資料按照冷熱、更新時間等自動化歸檔,節省儲存成本。
支援針對Delta資料湖格式的自動化儲存最佳化策略,節省儲存成本。
其他說明
目前DLF服務已開通的地區,請參見已開通的地區和訪問網域名稱。
關於DLF收費,請參見計費模式。
操作流程
步驟一:建立DLF統一中繼資料的EMR DataLake叢集
建立EMR叢集,並使用DLF作為中繼資料。
建立E-MapReduce叢集,輸入選項如下:
業務情境:選擇資料湖。
可選服務:需要至少選中Hive組件,其他組件根據業務需要選擇。
中繼資料:選擇DLF 統一中繼資料。
DLF資料目錄:選擇預設的DLF Catalog,或者建立一個資料目錄(Catalog)。如果您沒有開通DLF,會提醒您先開通DLF產品。
繼續其他配置完成EMR叢集建立。詳情請參見建立叢集。
步驟二:初始化中繼資料
初始化中繼資料分為以下三種情況:
步驟三:初始化資料
初始化資料一般常見的幾種情況如下:
已有巨量資料叢集,需要進行資料移轉。此時可以考慮通過JindoDistCp工具將已有叢集的資料移轉到OSS中。
從RDS、MySQL、Kafka等業務系統接入資料。此時可以考慮通過Realtime ComputeFlink實現資料入湖到DLF中。可參考如何在Flink中管理DLF Catalog。
步驟四:通過Spark/Presto引擎查詢DLF表
通過SSH登入到EMR叢集的master-1-1節點。
通過spark-sql查詢表departments。
通過presto查詢表departments。
步驟五(可選):開啟資料許可權控制
有些業務情境對資料安全要求較高,需要對資料湖內的資料許可權進行合理控制。此時您需要以下兩步來完成資料許可權的開啟:
以上兩個步驟完成後,您的整個EMR叢集的資料訪問將會受到資料許可權控制,如果沒有許可權的使用者訪問叢集資料,將會被拒絕。
此時可以參考DLF的新增授權,為相應的使用者配置合理的資料許可權。
步驟六(可選):生命週期管理
您可以通過生命週期管理對資料湖中的資料庫、資料表配置資料管理規則,可以基於分區/表建立時間、分區/表最近修改時間、分區值三種規則類型,對資料定期進行OSS儲存類型轉換,從而節省資料存放區成本。具體操作和說明請參考生命週期管理。