全部產品
Search
文件中心

DataWorks:OSS資料離線同步至MaxCompute

更新時間:Jun 19, 2024

本文以OSS離線同步寫入MaxCompute情境為例,為您介紹OSS離線同步在資料來源配置、網路聯通、同步任務配置方面的最佳實務。

背景資訊

阿里雲Object Storage Service(Object Storage Service)是一款海量、安全、低成本、高可靠的雲端儲存體服務,提供99.9999999999%(12個9)的資料持久性,99.995%的資料可用性。還有多種儲存類型供您選擇,全面最佳化儲存成本。Data Integration支援從OSS同步資料到其他目標端,也支援從其他目標端同步資料到OSS。本文以OSS離線同步寫入MaxCompute為例,為您介紹OSS離線同步的完整流程。

擷取OSS Bucket資訊

進入OSS產品控制台。在Bucket列表下,找到您要進行資料同步的OSS Bucket,在Bucket資訊頁面概覽處擷取OSS Bucket的外網訪問連接埠、內網訪問連接埠。您可以根據不同的情境選擇不同的訪問連接埠。

  • 外網指的是互連網。通過外網訪問OSS產生的流入流量(寫)是免費的,流出流量(讀)是收費的。OSS費用詳情請參見OSS產品定價計費項目

  • 內網指的是阿里雲同地區產品之間的內部通訊網路。例如您可以通過Data Integration資源群組訪問同地區的OSS服務。內網產生的流入和流出流量均免費,如果您讀寫與Data Integration資源群組同地區的OSS Bucket,您可配置內網訪問連接埠,否則,建議您配置外網訪問連接埠。

  • Region和Endpoint對照表請參見訪問網域名稱和資料中心

bucket基本資料

添加資料來源

建立OSS資料來源

在DataWorks資料來源管理頁面,單擊建立資料來源,根據介面提示建立OSS資料來源。OSS資料來源支援RAM角色授權模式Access Key認證模式兩種方式:

配置完成後,單擊測試連通性,選擇您已經完成與OSS網路聯通的Data Integration獨享資源群組,確保連通狀態為可連通,即可實現OSS與對應Data Integration獨享資源群組的網路聯通。

新增MaxCompute資料來源

新增MaxCompute資料來源。詳情請參見建立MaxCompute資料來源

建立離線同步任務

在資料開發(DataStudio)頁面的某個商務程序下,建立一個離線同步節點,根據介面提示配置節點的路徑、名稱等資訊,操作詳情請參見通過嚮導模式配置離線同步任務

配置資料來源:OSS側參數

配置離線同步節點的資料來源相關參數。本實踐將OSS資料增量同步處理至MaxCompute,資料來源為OSS檔案,配置要點如下所示。oss

配置項

配置要點

資料來源

選擇上述建立的OSS資料來源。

文本類型

選擇您要同步的檔案類型,目前嚮導模式支援讀取CSV、TXT兩種檔案格式。

  • TXT:是一個純文字檔案,文字格式設定沒有任何限制,您可以在此檔案中儲存任何類型的文本。

  • CSV(Comma-Separated Values,逗號分隔值,有時也稱為字元分隔值,因為分隔字元也可以不是逗號):其檔案以純文字形式儲存表格式資料(數字和文本)。CSV檔案由任意數目的記錄組成,記錄間以某種分行符號分隔;每條記錄由欄位組成,欄位間的分隔字元是其它字元或字串,最常見的是逗號或定位字元。通常,所有記錄都有完全相同的欄位序列。

檔案路徑

填寫您要同步的檔案路徑。

  • 當指定單個OSS Object時,OSS Reader暫時只能使用單線程進行資料幫浦。

  • 當指定多個OSS Object時,OSS Reader支援使用多線程進行資料幫浦。可以根據具體要求配置線程並發數。

  • 當指定萬用字元時,OSS Reader嘗試遍曆出多個Object資訊。例如配置為abc*[0-9]時,可以匹配到abc0abc1abc2abc3等;配置為abc?.txt時,可以匹配到以abc開頭、 .txt結尾、中間有1個任一字元的檔案。

資料行分隔符號

配置CSV、TXT檔案的資料行分隔符號。

編碼格式

設定讀取源標頭檔所用的編碼格式。

null值

null值定義了源頭哪些字串可以表示為null。例如,配置nullFormat="null",那麼如果源頭資料是null,資料同步系統會視作null欄位。

壓縮格式

源標頭檔的壓縮格式,支援gzip、bzip2和zip。None為無壓縮。

是否包含表頭

類CSV格式檔案可能存在表頭為標題情況,可選擇是否需要跳過。預設不跳過。

說明

壓縮檔模式下不支援跳過表頭。

配置資料去向:MaxCompute側參數

本實踐將資料同步至MaxCompute,資料去向是MaxCompute。配置要點如下。來源MaxCompute

配置項

配置要點

資料來源

選擇上述建立的MaxCompute資料來源。如果您使用的是標準類型的DataWorks工作空間,會分別顯示開發和生產專案的名稱。

選擇待同步的MaxCompute表。如果您使用的是標準類型的DataWorks工作空間,請確保在MaxCompute的開發環境和生產環境中存在同名且表結構一致的MaxCompute表。

說明

如果:

  • 開發環境不存在待同步的MaxCompute表,則選擇此處配置離線同步節點的去向表的下拉框中無法搜到待同步表。

  • 生產環境不存在待同步的MaxCompute表,同步任務提交發布後,資料同步任務調度運行時將會由於無法找到待同步表而導致同步任務運行失敗。

  • 開發環境和生產環境的表結構不一致,同步任務提交發布後,同步任務實際調度運行時的列對應關係,可能與此處離線同步節點配置的列對應關係不一致,最終導致資料寫入不正確。

分區資訊

如果表為分區表,您可以填入分區列的取值。

  • 取值可以是固定值,如ds=20220101

  • 取值可以是調度系統參數,如ds=${bizdate},當任務運行時,會自動替換調度系統參數。

其他參數保持預設即可。

配置欄位對應

選擇資料來源和資料去向後,需要指定讀取端和寫入端列的映射關係。您可以選擇同名映射、同行映射、取消映射或自動排版。

配置通道控制

設定任務同步並發數,可容忍的髒資料條數等。

調度配置

單擊右側的調度配置,本實踐樣本涉及的調度配置要點如下。通用的調度配置指導及全量調度相關參數的介紹請參見調度配置

  • 重跑屬性。

    可根據業務需求設定不同的重跑策略,設定失敗可重跑策略可以有效降低因為網路抖動等偶發問題導致的任務失敗。

  • 配置調度依賴。

    可根據業務需求設定不同的調度依賴。您可以通過設定依賴上一周期的本節點,保證本節點多個調度周期的任務執行個體是依次執行完成的,避免多任務執行個體同時調度運行。

Data Integration資源群組配置

單擊右側Data Integration資源群組配置按鈕設定同步任務啟動並執行同步資源群組。選擇在建立資料來源時,與OSS資料來源、MaxCompute資料來源都完成連通性檢查的Data Integration資源群組。

試運行與提交執行任務

試運行

單擊頂部的運行運行帶參運行帶參運行,可以試運行並查看同步結果是否符合預期。帶參運行可以針對任務配置中使用的調度系統參數進行替換。

提交和發布任務

試運行沒有問題後,您可以儲存離線節點的配置,並提交發布至營運中心,後續離線同步任務將會周期性(分鐘或小時或天)將OSS的資料寫入MaxCompute的表中。提交發布的操作請參見發布任務

發布成功後,您可以在營運中心查看周期調度運行結果、進行補資料等操作。詳情請參見周期任務營運