進入日志詳情頁
您可以在運維中心或DataStudio界面查看任務運行日志。
查看離線同步日志
下圖為任務的執行過程中的簡單日志信息。您也可以單擊圖中區域①或⑤的鏈接查看各階段執行過程的詳細日志信息。
區域 | 參數 | 說明 |
提交實例(區域①) | SUBMIT: 同步任務已經從調度系統向數據集成任務執行資源組提交同步任務的狀態。代表同步任務已經渲染完成。 | 調度系統會將任務下發至數據集成資源組上執行,您可在區域①查看當前任務運行使用的數據集成資源組。不同類型資源組日志打印不同: 任務運行在默認的資源組上,日志中會出現如下信息。 running in Pipeline[basecommon_ group_xxxxxxxxx]
任務運行在獨享數據集成資源上,日志中會出現如下信息。 running in Pipeline[basecommon_S_res_group_xxx]
任務運行在數據集成自定義資源組上,日志中會出現如下信息。 running in Pipeline[basecommon_xxxxxxxxx]
說明 您也可以在此區域單擊Detail log url查看各階段執行過程的詳細日志信息。 |
申請資源(區域②) | WAIT:同步任務處于等待數據集成任務執行資源的狀態。 | 當任務長時間處于等待數據集成任務執行資源的狀態時,可能是其他任務運行占用該資源組上的資源導致當前任務無資源執行而處于等待狀態,您可以通過以下方案解決此類問題: 待占用該數據集成資源組的任務(即運行在該資源組上的任務)執行成功,將資源釋放后啟動運行。定位占用該資源的任務,詳情請參見數據同步慢的場景及解決方案。 您也可以找到占用該資源的任務列表及責任人,與其協調降低任務并發數。 您還可以減少當前同步任務的并發數并重新提交發布任務。 還支持您對任務執行資源組進行擴容。詳情請參見:擴縮容操作。
|
開始同步(區域③) | RUN: 同步任務處于同步中的狀態。 | 離線同步任務執行過程分為4個階段: 前置準備 系統將根據您的配置,將前置SQL下發至數據庫執行,但并非所有任務都存在前置準備。 以MySQL Writer為例,若您的任務配置了PreSQL,即存在執行數據同步任務之前先執行的SQL語句時,該SQL將在此階段下發至數據庫執行。 以MySQL Reader為例,若您的任務配置querySql或數據過濾(where),這些SQL將在此階段下發至數據庫執行。 以寫入MaxCompute為例,任務配置了寫入前清空已有數據。
說明 建議過濾條件使用索引字段進行過濾,避免SQL在數據庫執行時間過長導致同步整體耗時過長,或在數據庫執行超時導致同步任務被迫中斷退出。 切分(拆分)任務 此階段將源端待同步數據切分為多個task,以便并發、分批進行讀取數據,切分規則如下: 關系型數據庫:按照您在界面配置時指定的切分鍵splitPk,作為切分依據,將待同步數據切分為多個task,通過并發分批讀取切分的task。若未設置切分鍵,將通過單并發同步任務。 LogHub/DataHub/Mongodb:按照shard數進行切分,任務并發上限不超過shard數。 半結構化存儲:按照文件數或文件數據量進行切分。例如,OSS任務并發上限不超過文件數。
同步數據 此階段將按照切分邏輯將切分出來的task,基于您配置的并發數進行分批同步。關系型數據庫將按照上述切分鍵,切分為多個取數SQL,分別向數據庫請求數據。
說明 實際執行過程中,您設置的并發數并非為實際執行的并發數。 基于切分鍵切分產生的取數SQL,可能會由于切分鍵設置不合理,導致取數SQL在數據庫執行時間過長導致同步整體耗時過長,或在數據庫執行超時導致同步任務被迫中斷退出。 如果數據庫當前負載過高,也可能會導致任務執行變慢。
后置準備 系統將根據您的配置,將后置SQL下發數據庫執行,但并非所有任務都存在后置準備:
|
執行完成(區域④) | 執行完成有兩種狀態: FAIL:同步任務運行失敗。 SUCCESS:同步任務執行成功。
|
說明 若同步過程產生臟數據,將在日志出現Dirty data: xxR 字樣,臟數據不會寫入目標端。 若同步過程產生大量臟數據,將會影響數據同步的同步速度。若您對同步速度有要求,建議您先處理臟數據問題。臟數據介紹詳情請參見離線同步任務配置相關能力。 您可以通過配置臟數據容忍條數控制同步產生的臟數據是否影響任務正常執行。離線同步任務默認允許臟數據,您可在任務配置界面進行修改。向導模式配置任務請參見通過向導模式配置離線同步任務。腳本模式配置任務請參見通過腳本模式配置離線同步任務。
|
詳細日志鏈接(區域⑤) | 詳細日志的鏈接。 | 您可以單擊詳細日志鏈接,查看各階段執行過程的詳細日志信息。 |
附錄:關系型數據庫切分鍵配置
推薦splitPk用戶使用表主鍵,因為表主鍵通常情況下比較均勻,因此切分出來的分片也不容易出現數據熱點。
splitPk僅支持切分整型數據,不支持切分字符串、浮點和日期等其他類型數據。如果配置splitPk切分不支持的數據類型,則DataWorks會忽略splitPk功能,使用單通道進行數據同步。
如果不填寫splitPk,包括不提供splitPk或者splitPk值為空,數據同步視作使用單通道同步該表數據 。