2.6倍!WhaleTunnel 客戶POC實景對弈DataX

ApacheSeaTunnel發表於2024-06-05

file

作為阿里早期的開源產品,DataX是一款非常優秀的資料整合工具,普遍被用於多個資料來源之間的批次同步,包括類似Apache DolphinScheduler的Task型別也對DataX進行了適配和增強,可以直接在DolphinScheduler裡面利用通用的資料來源呼叫DataX進行資料批次同步。

作為DolphinScheduler的社群支持者和商業版本的提供者,白鯨開源在升級到商業版WhaleScheduler的時候也遇到使用DataX的使用者,因為白鯨開源也在主力維護者另外一個Apache頂級社群 Apache SeaTunnel,它對應的商業版是WhaleTunnel。所以,經常有客戶會詢問,WhaleTunnel比DataX優勢在哪裡啊? 效能到底如何?今天這裡用一個客戶實際的POC案例來實景對弈下,以及終端使用者為什麼選擇WhaleTunnel替換了開源的DataX。

功能差異

首先,從功能上,我們來對比下商業版WhaleTunnel和DataX的差異點。可以看到WhaleTunnel作為一個商業資料整合工具,不僅具備了Apache SeaTunnel開源的多線功能,還在資料來源數量、視覺化、DDL變更和運維監控方面都做了增強,對比DataX來講,更是在叢集穩定性、批流一體、資料來源以及視覺化上有明顯優勢:

對比項 WhaleTunnel(商業) DataX
部署難度 容易 容易
執行模式 分散式,也支援單機 單機
健壯的容錯機制 無中心化的高可用架構設計,有完善的容錯機制 易受網路閃斷、資料來源不穩定等因素影響
支援的資料來源豐富度 支援批次和CDC 165種資料來源: MySQL、PostgreSQL、Oracle、SQLServer、SAP Hana、Hive、S3、OSS】檔案、RedShift、PolarDB
HBase、Doris、Clickhouse等實時和批次資料來源還在快速增長
支援批次資料來源:MySQL、ODPS、PostgreSQL、
Oracle、Hive 等 20+ 種批次資料來源
商業版聯結器 針對多種常見資料來源,Doris、StarRocks、GaussDB、Redshift、偶數等單獨與原廠共同定製開發底層商業版聯結器,效能大幅超過開源版聯結器 開源版聯結器
記憶體資源佔用
資料庫連線佔用 少(可以共享 JDBC 連線)
自動建表 支援 不支援
整庫同步 支援 不支援
斷點續傳 支援 不支援
JDBC 連線池複用 支援
DDL變更支援 強,支援多種資料來源DDL變更 不支援
視覺化設計 支援完全視覺化資料來源管理、資料Mapping定義任務定義、運維監控、告警 不支援
多引擎支援 基於商業擴充套件的SeaTunnel Zeta引擎 只能執行在DataX自己的引擎上
資料轉換運算元(Transform) 支援Copy、Filter、Replace、Split、SQL 、自定義 UDF等運算元。
商業專有Transform:新增列,改型別,刪除列,改列名,Transform支援DDL變更適配,在DDL變更場景也支援Transform自適應。
支援補全,過濾等運算元,可以 groovy自定義運算元
單機效能 比DataX高30%-80% 較好
批次同步 支援 支援
增量同步 支援 支援
實時同步 支援 不支援
CDC同步 支援 不支援
批流一體 支援 不支援
精確一致性 所有JDBC訪問的資料庫(比如MySQL, SQLServer, PG, Oracle等)、Kafka、Hive、HDFS、File , SFTP, FTP等聯結器支援 不支援
可擴充套件性 外掛機制非常易擴充套件 易擴充套件
進度監控及統計資訊 豐富的視覺化監控,同步進度、速率,表同步情況,任務錯誤情況,同步條數等監控資訊,DDL變更提醒、資料模型變更提醒等。 無監控介面,可以在DolphinScheduler級別實現任務級別的監控
告警 支援DDL變更告警,資料延遲告警,資料異常報警等 不支援
Web UI 全部視覺化建立資料對映以及同步任務,並與商業版本排程WhaleScheduler整合,支援完全視覺化資料來源管理、任務定義、運維監控、告警等
與排程系統整合度 與商業版本排程WhaleScheduler深度整合,支援各種排程傳引數用於同步,比如日曆,牌等資訊 已經與DolphinScheduler整合

效能差異

具體到效能方面,到底孰弱孰強,我們直接上使用者具體測試的實際場景來看(這是在徵求某零售客戶許可後公佈的測試POC資料內容,已混淆其中的各項業務相關內容):

測試內容:

  • 單表(80個欄位,數千萬條記錄)
  • 源資料庫:Oracle
  • 目標資料庫:Apache Doris
  • WhaleTunnel與DataX並行度:10
    WhaleTunnel採用視覺化介面配置,DataX採用WhaleScheduler中的DataX任務進行配置。

這是WhaleTunnel測試配置截圖:

file

那麼測試結果如何呢?

這是WhaleTunnel同步的效能速率:

file

這是同樣配置服務下,單臺DataX同步Insert的速率:

file

這是同樣配置服務下,單臺DataX同步upsert的速率:

file

可以看到,同樣的資料,在同樣的並行度情況下有如下測試結論:

file

可以看到,在這個場景下,因為WhaleTunnel在源聯結器讀取速度、商業引擎以及商業寫入聯結器方面都有大幅最佳化,在同樣並行度的Insert場景下,速度是DataX的2.2倍;而Upsert場景下,WhaleTunnel速度是DataX的2.6倍。而這只是WhaleTunnel單臺伺服器的場景,WhaleTunnel還支援叢集部署來提高並行度效能,同時WhaleTunnel叢集還支援CDC實時資料同步,可以說功能上完全就是新一代的資料整合工具。

結論

綜上,可以看到WhaleTunnel在開源版的Apache SeaTunnel之上增加了大量商業版功能,並對視覺化開發、引擎、介面、Transform、DDL、運維監控做了大量最佳化和開發。而兩者基於新一代資料整合引擎SeaTunnel Zeta,在批次同步、實時同步方面都是在行業當中的佼佼者。與DataX相比,WhaleTunnel更適用於多種場景、多資料來源的資料同步,同時也可以幫助使用者全面從DolphinScheduler+DataX的組合中平滑升級到WhaleScheduler+WhaleTunnel的新一代DataOps平臺裡,滿足使用者多雲、混合雲、多資料來源的批次、CDC實時的資料整合工作需求。

如果對資料整合和同步工具商業版WhaleTunnel感興趣,可掃描下方二維碼溝通諮詢。

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

相關文章