Dataphin支援對開發的即時任務代碼進行資料採樣或者手動上傳並進行本地調試或Session叢集調試,以協助您保障代碼任務的正確性,避免人為錯誤或遺漏。本文將為您介紹如何調試即時任務。
調試方式說明
本地調試方式:即不通過叢集進行調試,調試的資料非流式資料。該方式調試速度較快,但操作較為繁瑣,需要手動上傳或填寫資料,僅支援特定的資料來源進行自動採樣。
Session叢集調試方式:即通過Session叢集進行調試,調試的資料為線上的真實資料且為流式資料(即來源表中寫入資料時,將直接輸出該條資料的計算結果,與真實線上運行任務的結果一致)。該方式下,Session叢集提供Flink任務狀態、日誌和輸出結果的即時查看功能,您可以通過觀察任務的行為和輸出來驗證任務的正確性。以支援您迭代式地修改和調試任務代碼,以便快速定位和解決問題。
說明Session叢集調試方式的調試結果不會寫入結果表中。
使用限制
Blink僅支援引擎版本3.6.0及以上進行本地調試。
不支援DataStream任務進行調試。
Session叢集調試方式當前僅支援開源Flink引擎且基於最新架構部署的客戶,詳情請聯絡產品營運團隊。
調試任務操作入口
即時模式調試
在調試配置對話方塊的選擇取樣模式頁簽中,選擇即時模式-FLINK Stream任務。

單擊下一步。
在調試配置對話方塊中,選擇調試資料來源。
手動上傳資料(本地調試方式)
即通過本地調試方式手動上傳資料進行調試。上傳資料方式包括手動上傳範例資料檔案、手動輸入資料、自動抽樣資料。
手動上傳範例資料檔案
您可以通過上傳資料的方式,手動上傳本機資料。上傳本機資料前需要先下載範例,範例由Dataphin自動識別讀寫的表和表的schema資訊產生的csv格式範例模板,您可根據下載的範例編輯需要上傳的資料,單擊上傳後,資料自動填滿至中繼資料採樣地區。
手動輸入資料
適用於採集的資料比較少,或者需要修改已採集到的資料的情境。
自動抽樣資料
自動抽樣到的資料是隨機的,所以適用於對採集到的資料沒有限制的情境。針對HBase、MaxCompute、DataHub、Kafka資料來源支援自動抽樣資料,您可單擊自動抽樣,進行抽樣資料。
說明Kafka中支援json、csv、canal-json、maxwell-json、debezium-json資料格式的自動抽樣。
Kafka自動抽樣僅支援無認證和使用者名稱+密碼認證方式,不支援SSL。
Kafka自動抽樣時,支援選擇讀取資料範圍,最大抽樣條數為100條。
採集線上資料(Session叢集調試方式)
即通過Session叢集自動採集線上資料進行調試。需要選擇用於調試的Session叢集。若無對應可選叢集。需要進行Session叢集的建立。更多資訊,請參見建立Session叢集。
說明僅支援選擇運行中的Session叢集。
Session叢集最多支援採集1000條資料。

完成所有資料表的中繼資料採樣後,單擊的確定。
在Result頁面,即可查看調試結果。
手動上傳資料(本地調試方式)

採集線上資料(Session叢集調試方式)

離線模式調試
在調試配置對話方塊的選擇取樣模式頁簽中,選擇離線模式-FLINK Batch任務。

單擊下一步。
在調試配置對話方塊中,選擇調試資料來源。
手動上傳資料(本地調試方式)
即通過本地調試方式手動上傳資料進行調試。上傳資料方式包括手動上傳範例資料檔案、手動輸入資料、自動抽樣資料。
手動上傳範例資料檔案
您可以通過上傳資料的方式,手動上傳本機資料。上傳本機資料前需要先下載範例,範例由Dataphin自動識別讀寫的表和表的schema資訊產生的csv格式範例模板,您可根據下載的範例編輯需要上傳的資料,單擊上傳後,資料自動填滿至中繼資料採樣地區。
手動輸入資料
適用於採集的資料比較少,或者需要修改已採集到的資料的情境。
自動抽樣資料
自動抽樣到的資料是隨機的,所以適用於對採集到的資料沒有限制的情境。針對HBase、MaxCompute、DataHub、Kafka資料來源支援自動抽樣資料,您可單擊自動抽樣,進行抽樣資料。
說明Kafka中支援json、csv、canal-json、maxwell-json、debezium-json資料格式的自動抽樣。
Kafka自動抽樣僅支援無認證和使用者名稱+密碼認證方式,不支援SSL。
Kafka自動抽樣時,支援選擇讀取資料範圍,最大抽樣條數為100條。
採集線上資料(Session叢集調試方式)
即通過Session叢集自動採集線上資料進行調試。需要選擇用於調試的Session叢集。若無對應可選叢集。需要進行Session叢集的建立。更多資訊,請參見建立Session叢集。
說明僅支援選擇運行中的Session叢集。
Session叢集最多支援採集1000條資料。

完成所有資料表的中繼資料採樣後,單擊頁面下方的確定。
在Result頁面,即可查看調試資料、中間結果和調試結果。

附錄:自動抽樣的調試資料
通過本地調試的自動抽樣調試任務時,讀取的調試資料根據元表的配置決定。詳細說明如下:
元表屬性的任務調試時預設讀取參數選中開發表。
若任務中使用的是
Project_Name_dev.元表名,則自動抽取開發元表。如果資料來源無開發元表,則不支援自動抽樣。若任務中使用的是
Project_Name.元表名,則自動抽取生產元表。如果您沒有生產環境元表許可權,則會報錯。請先申請生產表許可權,請參見申請表許可權。若任務中使用的是
${Project_Name}.元表名或元表名,則自動抽取開發元表。如果資料來源無開發元表,則不支援自動抽樣。
元表的任務調試時預設讀取參數選中生產表。
若任務中使用的是
Project_Name_dev.元表名,則自動抽取開發表。如果資料來源無開發元表,則不支援自動抽樣。若任務中使用的是
Project_Name.元表名,則自動抽取生產元表。若任務中使用的是
${Project_Name}.元表名或元表名,系統將自動根據參數中的設定替換${project_name}變數。並根據參數的實際專案(開發或生產專案),確定使用生產元表還是開發元表;若未指定${project_name},則自動抽取生產元表。
