基於 Kubernetes 的企業級大資料平臺,EMR on ACK 技術初探

阿里云云原生發表於2023-02-09

作者:容器服務團隊

雲上大資料的 Kubernetes 技術路線

當前,大資料與機器學習領域頗為關注儲存與計算分離架構,逐漸向雲原生演進。以Spark 為例,雲下或自有伺服器可以選擇 Hadoop 排程支援 Spark,雲上的 Spark 則會考慮如何充分享有公共雲的彈性資源、運維管控和儲存服務等,並且業界也湧現了不少 Spark on Kubernetes 的優秀實踐。

 title=

大資料雲原生化面臨的挑戰

儲存和計算分離的架構,同時又帶來挑戰,例如:怎樣構建以阿里雲物件儲存 OSS 為底座的 HDFS 檔案系統?需要完全相容現有的 HDFS,還要實現在效能對標 HDFS的同時降低成本;計算引擎 shuffle 資料存算分離,又要考慮如何解決 ACK 混合異構機型的支援問題,以及業界非常關注如何支援 Spark 動態資源。

引入 Kubernetes 之後, 如何排程最佳化效能瓶頸?效能對標 Yarn、實現多級佇列管理。還有,如何藉助 K8s,編排組織各種業務的波峰波谷,實現錯峰排程?等等。

透過阿里雲容器服務 ACK 執行開源大資料任務,將以叢集為中心的視角切換成以作業為中心視角,還可以實現線上業務、AI、大資料統一接入 ACK 叢集,錯峰排程,離線線上混部,提升機器利用率。並且,實現了運維入口、運維工具鏈、監控體系的三重統一。此外,還支援多版本,如同時執行 Spark2.x 和 Spark 3.x 任務。

EMR on ACK 的架構與優勢

12月,阿里雲 EMR 2.0 正式釋出,從平臺體驗、資料開發、資源形態、分析場景等方面實現全面創新。其中在資源形態側,EMR 可以部署在阿里雲容器服務 ACK 平臺, 減少對底層叢集資源的運維投入,以便於使用者更加專注大資料任務本身。

EMR on ACK 為使用者提供了全新的構建大資料平臺的方式,使用者可以將開源大資料服務部署在阿里雲容器服務(ACK)上。利用 ACK 在服務部署和對高效能可伸縮的容器應用管理的能力優勢,使用者只需要專注在大資料作業本身。使用者可以便捷地將 Spark、Presto、Flink 作業執行在 ACK 叢集上,100%相容開源,效能優於開源。

EMR on ACK 架構如下

 title=

  • 輕量化管控,對接已有資料平臺
  • 透過資料開發叢集/排程平臺提交到不同的執行平臺
  • 錯峰排程,根據業務高峰低峰策略調整
  • 雲原生資料湖架構,ACK 彈性擴縮容能力強
  • ACK 管理異構機型叢集,靈活性好

EMR on ACK 具備以下優勢

  • Remote Shuffle Service 提供中間 shuffle 資料的儲存計算分離方案
    • 可以使計算節點無需本地盤和雲盤
    • 支援開啟 Spark 動態資源功能,Spark-25299
      終極方案
  • JindoFS 針對 OSS 儲存提供湖加速解決方案
    • Block 模式1TB TPCDS 場景下有15%以上的效能提升
  • 排程層面支援 Scheduler Framework V2
    • 排程效能比社群提升3x以上
    • 提供多級佇列管理
  • 引擎能力增強
    • 10TB TPCDS Benchmark 場景下,EMR Spark
      比社群有3x效能提升
    • Hudi、DeltaLake 比社群功能效能增強
  • 完整的錯峰排程方案

國內知名廣告營銷服務商匯量科技已使用 EMR 產品4年。在業務快速增長的大好形勢下,匯量科技面臨越來越多的困擾:如資料來源複雜、資料量大、資料維度多、實時運營業務秒級資料新鮮度需求等業務需求;本次升級後,匯量科技在素材平臺、熱力引擎等業務的大資料平臺搭建上,資料同步和及查詢效率有數倍提升,系統穩定性顯著提升,未再出現之前cpu、mem、io負載高等情況。

EMR on ACK:

https://help.aliyun.com/docum...

點選此處移步阿里雲 EMR 2.0 釋出會,瞭解更多

相關文章