如何借力Alluxio推動大資料產品效能提升與成本優化?

語言: CN / TW / HK

內容簡介

隨著數字化不斷髮展,各行各業資料呈現海量增長的趨勢。存算分離將儲存系統和計算框架拆分為獨立的模組,Alluxio作為如今主流雲資料編排軟體之一,為計算型應用(如 Apache Spark、Presto)和儲存系統(如 Amazon S3、Alibaba OSS)的資料訪問構建了橋樑。

本文使用亞馬遜雲、阿里雲服務商產品,對Presto、Hive等計算框架與不同UFS直連時的關鍵效能指標進行測評,同時給出整合Alluxio元件後的效能評估,得出以下結論:

  • Alluxio 可減少任務執行時間(低頻寬情況下甚至可以減少一個數量級)和 CPU時間;這表明 Alluxio 一定程度上可以節省頻寬並減輕伺服器運算壓力。
  • Alluxio 可更好地相容眾多底層儲存系統,這表明在不損失效能的前提下,選擇價格更為低廉的物件儲存系統(如Alibaba OSS, Amazon S3)。

簡而言之,整合資料驅動軟體 Alluxio 既能提升效能,又能降低運營成本。

實驗設計

本實驗採用 TPC-DS 生成的 1GB 資料集,選擇19條SQL作為該實驗工作負載。[1]

Type Queries
Interactive Q19, Q42, Q52, Q55, Q63,Q65, Q68, Q73, Q98
Reporting Q3, Q7, Q27, Q43, Q53, Q89
Deep Analytics Q34, Q46, Q79, SS_MAX

我們將原始資料存到底層儲存系統中,使用Hive管理原始資料和元資料,將Presto作為計算應用,形成 Presto → Hive → (Alluxio →) HDFS/OSS/S3 的連線模式,並進行Presto直接讀UFS和Presto通過Alluxio快取讀UFS兩種對比測試。我們採用掛鐘時間(WallTime,執行查詢花費的總時間)和CPU時間(ProcessCpuTime,處理查詢所花費的總CPU時間)兩組測量指標進行對比測試。

實驗結果與意義

實驗結果分析

通過TPC-DS測試的對比後,可得出以下幾點結論:

(1)Alluxio 可減少掛鐘時間,在低頻寬下尤為明顯。

√ 圖1-1是在AWS上,使用HDFS作為儲存系統,統計掛鐘時間均值(AWS例項頻寬最高可達10G/s,效能小幅度提升):

圖1-1

  • 圖1-2是在阿里雲上,使用HDFS作為儲存系統,統計掛鐘時間均值(選擇阿里雲按量付費最高頻寬200M/s):

圖1-2

  • 圖1-3是在阿里雲上,使用HDFS作為儲存系統,統計掛鐘時間均值(低頻寬模式,頻寬15M/s),可以看到效能提升一個數量級。

圖1-3

(2)Alluxio 可節省頻寬。由圖1-2和圖1-3可知,若想在無Alluxio的情況下達到有Alluxio的效果,需要設法進一步提升公網頻寬。

(3)Alluxio 一定程度上可減輕伺服器運算壓力,CPU時間較短。

圖2-1是在阿里雲上使用HDFS作為儲存系統,統計CPU時間。

圖2-1

圖2-2是在AWS上使用S3作為儲存系統,統計CPU時間。

圖2-2

(4)Alluxio 為計算框架和儲存系統的資料訪問搭建橋樑,大大降低執行環境配置難度。目前 Presto 對 S3 相容性較好,但對 OSS 和 COS 相容性較差,目前尚無Presto直接訪問OSS資料的方案。但用Alluxio則無需考慮計算框架和底層儲存系統的相容性問題,因為Presto對Alluxio、Alluxio對OSS相容性很好,配置環境很容易。

(5)由於無需考慮計算框架與底層儲存系統相容性,則可使用價格更為低廉的物件儲存系統,其頻寬成本與維護成本均比 Hadoop 低。並且由圖3-1和圖3-2得知Alluxio快取讀情況下效能差別並不明顯,但物件儲存系統價格更為低廉,因此物件儲存可作為儲存系統更好的選擇。

圖3-1為使用AWS伺服器,分別對 HDFS 和 S3 進行測試,統計掛鐘時間。

圖3-1

圖3-2為使用阿里雲伺服器,分別對 HDFS 和 OSS 進行測試,統計掛鐘時間。

圖3-2

物件儲存與HDFS儲存成本對比

由於雲服務產品種類繁雜、使用相同產品不同的應用場景下開銷差異較大。以本實驗為例,雲服務主要開銷由儲存、資料傳輸和雲伺服器三個部分構成,故我們僅對本實驗使用雲服務產品及其他常用雲服務產品進行上述指標的定量分析(忽略諸如資料請求、物件清單等極低成本服務的指標),擴充套件服務及其詳細價格詳情請參考雲服務產品價格頁面。

亞馬遜雲

亞馬遜伺服器使用 S3 和 HDFS 作為儲存系統時(HDFS 使用 EBS 儲存,因此以美國東部俄亥俄2023年1月6日 S3 Standard 和 EBS 為例),價格對比如下(資料來源:Amazon S3 價格、Amazon EC2 例項價格、Amazon EBS 定價 ):

(1)儲存

本實驗採用S3 Standard 、通用型SSD (gp2) 和一張普通快照,S3 每 GB 儲存價格僅為 gp2 的 1/7~1/6。即使資料量增大,使得執行環境佔用儲存忽略不計,在不考慮快照的情況下,S3 Standard 資料儲存價格僅為 gp2 的1/4~1/3。

(2)資料傳輸

AWS兩者公網流出流量價格一致,公網流入流量均免費。

(3)伺服器成本

伺服器成本請參考 Amazon EC2 例項價格,S3 並無此項成本,而 EC2 成本很高,以本實驗儲存系統用到的例項為例(美國東部俄亥俄2023年1月6日 r5a.large 價格)。

阿里雲

以2023年1月12日華北1(青島)區域的 OSS 標準型儲存和塊儲存 (EBS) 為例(資料來源:物件儲存OSS 定價詳情、塊儲存定價詳情)。

(1)儲存

本實驗採用 OSS 標準儲存(本地冗餘)、ESSD 雲盤 PL0 和一個普通快照,可見在 Alluxio 快取讀效能相近情況下,OSS 每 GB 儲存價格僅為 EBS 的 1/6~1/5。

(2)資料傳輸

本實驗採用按量付費頻寬。可見 OSS 頻寬成本比 HDFS 頻寬成本要低一些。倘若OSS開啟CDN加速,理論上可進一步提升頻寬速度並降低頻寬成本。

(3)伺服器成本

伺服器成本請參考 雲伺服器 ECS,OSS 並無此項成本,而 ECS 成本很高,以本實驗儲存系統用到的例項為例(華北1青島2023年1月12日 ecs.r6.large 價格)。

總結

綜合亞馬遜雲、阿里雲的儲存、資料傳輸和伺服器成本,使用物件儲存系統的開銷要比HDFS低很多,而使用 Alluxio 可十分方便地接入各種儲存系統,這無疑意味著可大大降低企業運營成本。

 

想要了解更多關於Alluxio的乾貨文章、熱門活動、專家分享,可點選進入【Alluxio智庫】

參考

  1. ^我們選擇和《SQL-on-Hadoop: Full Circle Back to Shared-Nothing Database Architectures》(Proceedings of the VLDB Endowment, Vol. 7, No. 12)相同的20條SQL作為該實驗工作負載。Q59 由於過於複雜,執行時間過長,記憶體消耗過大,測試難度較大,故該實驗僅對其他19個SQL進行測試。