遙遙領先!鯤鵬ARM架構下國產資料同步能力大幅提升16.9倍

海豚调度發表於2024-07-10

file

在上篇文章《2.6倍!WhaleTunnel客戶POC實景對弈DataX》釋出之後,一個客戶突然向我們控訴其苦DataX久矣,因為是在信創的鯤鵬ARM CPU上執行 ,每天同步需要很長時間,問我們可以不可以幫忙解決。

提起信創ARM CPU,大資料同仁們是又愛又恨,愛是因為價格真的便宜,恨是因為做大資料任務真的是不行,效能比X86系列慢不是1-2倍,所以搭建大資料平臺一般都必選X86,避免使用ARM,要不用的機器個數遠超過X86伺服器。

ARM CPU真的處理大資料不行嗎

ARM CPU 使用了RISC指令集(X86使用的是CISC),RISC有指令執行速度快和最佳化並行處理的特點,它非常適合於需要高吞吐量和並行處理的計算任務,而CISC架構由於其指令集的複雜性和靈活性,在某些特定應用中可能更適合處理複雜計算。所以在大資料複雜計算領域,X86伺服器有天然的優勢。

而在資料同步領域裡,ARM架構反而有一些先天優勢:

  • ARM處理器和南橋、網路卡、SAS儲存器整合在一起的,在記憶體頻寬、IO頻寬和網路頻寬方面均有顯著提升,記憶體通道數量,網路通道數量都會高於X86 CPU,而這在資料同步當中是很重要的計算引數。
  • RISC指令執行速度快,並行度高,在資料同步這種沒有複雜資料計算的場景,理論效率要高於CISC。
  • CPU核數高於X86 CPU,一般一顆CPU都有32-64個核心,2顆CPU就有64-128個核心,結合RISC指令集的效果,在同步領域裡反而瓶頸會在頻寬、CPU通道這裡。

綜上,我們看到在同步領域,ARM CPU是有先天優勢的,但是為什麼在很多大資料場景下,相應的軟體發揮不出來效果呢?主要是因為引擎核心沒有針對ARM CPU的特性進行最佳化,利用傳統的X86設計的引擎核心執行ARM的伺服器上,效果一定不會好。

WhaleTunnel針對ARM CPU最佳化

《WhaleStudio 2.6正式釋出,WhaleTunnel同步效能與聯結器數量再創新高!》一文中可以看到,WhaleTunnel 2.6版本在ARM CPU環境下做了大量最佳化:

  1. 記憶體對映檔案和零複製技術:為了最大限度地減少I/O開銷,Zeta Engine採用了記憶體對映(mmap)技術和零複製(zero-copy)技術,直接在記憶體中操作檔案資料。這樣不僅加快了資料處理速度,還降低了系統資源的消耗。
  2. 記憶體對齊:Zeta Engine確保資料結構在記憶體中的對齊性,有效減少了記憶體訪問的開銷。記憶體對齊最佳化不僅提高了記憶體訪問的效率,還提升了資料處理的整體效能。
  3. 高效演算法:Zeta Engine使用了適合ARM架構的高效演算法來適配RISC指令集,減少不必要的計算和資料移動。透過高效的排序和過濾演算法,顯著提升資料轉換和處理的效率。Zeta Engine演算法最佳化確保了在資料密集型任務中,系統能夠保持卓越的效能。
  4. 多核架構利用:Zeta Engine充分利用ARM CPU的多核架構,將ETL任務分解為更小的任務,進行多執行緒或多程序並行執行。透過並行化處理,顯著縮短了資料處理的時間,提升了系統的吞吐量。

在這個最佳化場景下,WhaleTunnel可以充分利用ARM CPU多核、記憶體、網路頻寬大、處理簡單資料場景效率高的優勢。

WhaleTunnel在鯤鵬信創ARM CPU下的實測,快16.9倍!

回到開頭的場景,我們直接在客戶1臺 1CPU的信創伺服器下進行了部署。

在部署解壓縮的時候,我們心涼了一半。 正常在X86環境下是需要2-3分鐘就可以解壓完成的包,但在這臺ARM伺服器上解壓縮了1多個小時還沒有完成,這個CPU效率真的讓我們測試的擦把汗。

客戶給出了這臺機器做資料同步的DataX時間和同步速率如下,可以看到同步速率在2.46MB/s,12萬條記錄用了18.5分鐘(感覺和我們在ARM環境下解壓縮效率差不多):

file

經過漫長的解壓縮和安裝步驟後,我們程式設計師戰戰兢兢進行了現場POC測試。驚喜來了!測試結果顯示,在客戶這個環境下,整個表平均同步速率是41.72MB/s,峰值達到62.23MB/s,同步資料20萬條,平均速度是DataX的16.9倍!

file

瞬間,程式設計師們覺得過去幾個月的加班沒有白費,流下了激動的口水(我答應他們如果在客戶實際場景下真的最佳化有效果,請大家吃大餐)。

小結:信創ARM能不能打還是看大資料引擎核心有沒有做最佳化

WhaleTunnel的ARM場景下的實測給大資料平臺工程師們帶來了福音,在信創大趨勢下,在資料整合和資料同步領域裡,終於有一個可以放心大膽使用信創ARM CPU平臺而不用擔心效能拖後腿的工具了。

可以看到,使用WhaleTunnel+信創ARM CPU環境既可以滿足國產信創的要求,又會大幅節約成本,還會得到強大的資料同步處理效能,一箭三雕!

如果您對資料整合和同步有需求,對WhaleTunnel感興趣,歡迎諮詢詳情(V 177 4359 2110)。🔽🔽

白鯨開源

白鯨開源是一家開源原生的DataOps商業公司,是國家高新技術企業,由多個Apache Foundation Member成立,80%員工都是 Apache Committer,運營2個全球Apache開源專案(DolphinScheduler, SeaTunnel)。白鯨開源已根據全球最佳實踐釋出商業版產品WhaleStudio(含白鯨資料排程平臺WhaleScheduler和白鯨資料整合平臺WhaleTunnel)。我們致力於打造下一代開源原生的DataOps 平臺,助力企業在大資料和雲時代,智慧化地完成多資料來源、多雲及信創環境的資料整合、排程開發和治理,以提高企業解決資料問題的效率,提升企業分析洞察能力和決策能力。

瞭解更多

公司網站: www.whaleops.com

郵箱: xiyan@whaleops.com

本文由 白鯨開源 提供釋出支援!

相關文章