本文介紹了基於LHM調度遷移工具將DataArts(DGC)調度任務流遷移到DataWorks的方案與操作流程,包括三步,DataArts(DGC)任務匯出、調度任務轉換、DataWorks任務匯入。
一、匯出DataArts調度任務流
華為DataArts提供了作業、指令碼和資源的大量匯出能力,使用者可根據本文檔的指示構造一個DataArts調度資訊包。LHM調度匯出工具將對DataArts調度資訊包進行解析,並產生調度遷移標準包。
1 前置條件
準備JDK17運行環境和華為雲帳號,帳號需對待遷移DataArts作業、指令碼和資源具有匯出許可權。
2 構造DataArts調度資訊包
2.1 DataArts調度資訊包結構
調度資訊包的結構如下,包含資料開發作業(任務流)、資料開發節點指令碼、資源檔、Data Integration指令碼。使用者需在DataArts中自行分別匯出部分,並完成組包:
.
├── project.json // 專案基本資料
├── cdms
│ └──<叢集名稱>
│ └── <cdm_***>.json // Data Integration指令碼
└── jobs
├── jobs
│ └── <***>.job // 資料開發作業(任務流)
├── resources
│ └── <***>.resource // 資源檔
└── scripts
└── <***>.script // 資料開發節點指令碼2.2 構造專案基本資料
project.json中需填寫專案基本資料,包括專案Id和名稱。
{
"dataArtsWorkSpaceId": "d494af814b4b496e8b1bc7a8eee68d7a",
"dataArtsWorkspaceName": "default"
}2.3 匯出資料開發作業(工作流程定義)
開啟DataArts控制台,點擊資料開發:https://console.huaweicloud.com/dayu
在作業開發頁面,匯出作業。下載後解壓縮至./jobs/jobs目錄下。
2.4 匯出任務指令碼
開啟DataArts控制台,點擊資料開發:https://console.huaweicloud.com/dayu
在指令碼開發頁面,匯出指令碼。下載後解壓縮至./jobs/scripts目錄下。
2.5 匯出資源檔
開啟DataArts控制台,點擊資料開發:https://console.huaweicloud.com/dayu
在資源管理頁面,匯出資源。下載後解壓縮至./jobs/resources目錄下。
2.6 匯出Data Integration任務指令碼
開啟DataArts控制台,點擊Data Integration:https://console.huaweicloud.com/dayu
在叢集管理中,匯出Data Integration任務指令碼。下載後解壓縮至./cdms目錄下。
3 運行調度解析工具
解析工具通過命令列調用,調用命令如下:
sh ./bin/run.sh read \
-f ./data/0_OriginalPackage/<DataArts調度資訊包>.zip \
-o ./data/1_ReaderOutput/<源端探查匯出包>.zip \
-t dataartsstudio-reader其中-c為設定檔路徑,-f為輸入包路徑,-o為源端探查結果包的產生路徑,-t為探查外掛程式名稱。
例如,當前需要解析專案A:
sh ./bin/run.sh read \
-f ./data/0_OriginalPackage/projectA_DataArtsPkg.zip \
-o ./data/1_ReaderOutput/projectA_ReaderOutput.zip \
-t dataartsstudio-reader探查工具運行中將列印過程資訊,請關注運行過程中是否有報錯。
4 查看匯出結果
開啟./data/1_ReaderOutput/下的產生包ReaderOutput.zip,可預覽解析結果。
其中,統計報表是對DataArts匯出包中任務流、節點、資源、函數、資料來源基本資料的匯總展示。
而data/project檔案夾下是對DataArts調度資訊資料結構標準化後的結果。
統計報表提供了兩項特殊能力:
1、報表中工作流程、節點的部分屬性被允許更改,允許更改的欄位以藍色字型標識。在下一階段調度轉換中,在初始化階段,工具將擷取表格中的屬性變更並使其生效。
2、報表允許通過刪除工作流程子表中的行,使得在轉換時跳過這些工作流程(工作流程黑名單)。注意!若工作流程存在相互依賴關係,相關聯的工作流程需要同批次轉換,不可通過黑名單進行分割。分割會產生異常!
二、DataArts->DataWorks任務流轉換
1 前置條件
探查工具運行完成,DataArts 調度資訊被成功匯出,ReaderOutput.zip被成功產生。
(可選,推薦)開啟探查匯出包,查看統計報表,核對待遷移範圍是否被匯出完全。
2 轉換配置項
2.1 轉換配置項目範本
使用前請刪除json中的注釋。
{
"name": "dataartsarts-dw-conveter",
"self": {
"if.use.migrationx.before": false,
"if.use.default.convert": false,
"if.use.dataworks.newidea": true,
"param.map": {
"TODAY": "$[yyyy-mm-dd]",
"YYYY_MM_DD_1HOUR": "$[yyyy-mm-dd-hh24-1-1/24]",
"DT": "${yyyy-mm-dd}",
"DT_HH": "$[yyyy-mm-dd-hh24-1-1/24]",
"DT_PRE_DAY": "$[yyyy-mm-dd-7]",
"DT_PRE_BY_DAYS": "",
"YESTERDAY": "${yyyy-mm-dd}",
"DT_PRE_2DAYS": "$[yyyy-mm-dd-2]",
"DT_PRE_3DAYS": "$[yyyy-mm-dd-3]",
"DT_PRE_4DAYS": "$[yyyy-mm-dd-4]",
"DT_PRE_5DAYS": "$[yyyy-mm-dd-5]",
"YYYY_MM_DD_HOUR": "$[yyyy-mm-dd-hh24]"
},
"param.value.map": {
"#{Job.getYesterday(\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-1]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-1),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-1]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-8),\"yyyyMMddHH\")}": "$[yyyymmddhh24-8]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-1),\"yyyyMMdd\")}": "$[yyyymmdd-1]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-100),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-100]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-185),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-185]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,0),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-2),\"yyyyMMdd\")}": "$[yyyymmdd-2]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-31),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-31]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,0),\"yyyyMMddHH\")}": "$[yyyymmddhh24]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,0),\"yyyyMMdd\")}": "$[yyyymmdd]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-0),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-62),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-62]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-2),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-2]"
},
"di.datasource.map": [
{
"dataArtsLinkDataSourceType": "DWS",
"dataArtsLinkName": "dws_source1",
"dwDataSourceType": "HOLOGRES",
"dwConnectionName": "hologres_source1"
},
{
"dataArtsLinkDataSourceType": "MYSQL",
"dataArtsLinkName": "mysql_source1",
"dwDataSourceType": "MYSQL",
"dwConnectionName": "mysql_source1"
},
{
"dataArtsLinkDataSourceType": "HIVE",
"dataArtsLinkName": "hive_source1.db1",
"dwDataSourceType": "ODPS",
"dwConnectionName": "odps_source1_1"
}
],
"table.meta.list": [
{
"tableName": "",
"partition": ""
}
],
"hBasePluginVersion": ""
},
"schedule_datasource": {},
"target_schedule_datasource": {}
}2.2 調度參數轉換配置項
DataArts提供了大量的運算式可在節點的調度參數中使用,如時間運算式。DataArts運算式與DataWorks運算式在文法上有所差異,在調度轉換中需要進行處理。參考: 運算式概述_資料治理中心 DataArts Studio_華為雲和日期和時間模式_資料治理中心 DataArts Studio_華為雲
調度轉換配置項中提供了兩種替換模式。
1、param.map:指定變數名,將指定變數的值做替換。如配置"TODAY": "$[yyyy-mm-dd]",則轉換工具會將所有名為TODAY的調度變數的值修改為$[yyyy-mm-dd]。
2、param.value.map:指定變數值,將原變數值替換為新變數值。如配置"#{Job.getYesterday(\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-1]",則轉換工具會篩選所有值為#{Job.getYesterday("yyyy-MM-dd")}的變數,並將其值修改為$[yyyy-mm-dd-1]。
本樣本中提供了一些常用的映射規則,可供參考。
{
"self": {
"param.map": {
"TODAY": "$[yyyy-mm-dd]",
"YYYY_MM_DD_1HOUR": "$[yyyy-mm-dd-hh24-1-1/24]",
"DT": "${yyyy-mm-dd}",
"DT_HH": "$[yyyy-mm-dd-hh24-1-1/24]",
"DT_PRE_DAY": "$[yyyy-mm-dd-7]",
"DT_PRE_BY_DAYS": "",
"YESTERDAY": "${yyyy-mm-dd}",
"DT_PRE_2DAYS": "$[yyyy-mm-dd-2]",
"DT_PRE_3DAYS": "$[yyyy-mm-dd-3]",
"DT_PRE_4DAYS": "$[yyyy-mm-dd-4]",
"DT_PRE_5DAYS": "$[yyyy-mm-dd-5]",
"YYYY_MM_DD_HOUR": "$[yyyy-mm-dd-hh24]"
},
"param.value.map": {
"#{Job.getYesterday(\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-1]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-1),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-1]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-8),\"yyyyMMddHH\")}": "$[yyyymmddhh24-8]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-1),\"yyyyMMdd\")}": "$[yyyymmdd-1]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-100),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-100]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-185),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-185]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,0),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-2),\"yyyyMMdd\")}": "$[yyyymmdd-2]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-31),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-31]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,0),\"yyyyMMddHH\")}": "$[yyyymmddhh24]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,0),\"yyyyMMdd\")}": "$[yyyymmdd]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-0),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-62),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-62]",
"#{DateUtil.format(DateUtil.addDays(Job.planTime,-2),\"yyyy-MM-dd\")}": "$[yyyy-mm-dd-2]"
}
}2.3 Data Integration轉換相關配置項
Data Integration配置項主要指定了遷移前後資料來源的映射規則,如DataArts Doris資料來源遷移後更改為DataWorks Hologres資料來源、DataArts Hive資料來源遷移後更改為DataWorks Odps(MaxCompute)資料來源。此外還補充了若干資訊。配置項具體如下:
di.datasource.map:遷移前後,DataArts、DataWorks資料來源的映射表,dataArtsLinkName、dataArtsLinkDataSourceType分別為DataArts上資料來源的名稱與類型,dwConnectionName、dwDataSourceType分別為DataWorks上資料來源的名稱與類型。
其中Hive資料來源較為特殊,在Hive遷移至MaxCompute情境中,Hive資料來源每個db通常對應MaxCompute一個空間,因此Hive資料來源在dataArtsLinkName中需要附加db資訊,如下方樣本。
table.meta.list:部分資料來源遷移後,針對某個表的操作需額外補充分區資訊。當前此參數僅在寫Hologres資料來源時生效。
hBasePluginVersion:Hbase版本。參數取值可參考此連結。HBase資料來源
{
"self": {
"di.datasource.map": [
{
"dataArtsLinkDataSourceType": "DWS",
"dataArtsLinkName": "dws_source1",
"dwDataSourceType": "HOLOGRES",
"dwConnectionName": "hologres_source1"
},
{
"dataArtsLinkDataSourceType": "MYSQL",
"dataArtsLinkName": "mysql_source1",
"dwDataSourceType": "MYSQL",
"dwConnectionName": "mysql_source1"
},
{
"dataArtsLinkDataSourceType": "HIVE",
"dataArtsLinkName": "hive_source1.db1",
"dwDataSourceType": "ODPS",
"dwConnectionName": "odps_source1_1"
}
],
"table.meta.list": [
{
"tableName": "",
"partition": ""
}
],
"hBasePluginVersion": ""
}
}2.4 節點轉換規則
工具當前支援轉換的DataArts節點包括以下類型:
· CDMJob, HiveSQL, DWSSQL, DLISQL, RDSSQL, SparkSQL
· Shell, DLISpark, MRSSpark, DLFSubJob, RESTAPI, Note, Dummy
當前轉換規則固定,不可配置,如需定製請聯絡LHM遷移工具團隊:
· CDMJob(Data Integration):預設轉換為DataWorks DI(Data Integration)任務。
Data Integration指令碼(Data Integration讀寫外掛程式配置項)根據di.datasource.map轉換。當前工具覆蓋了部分資料來源相關的CDM->DI配置項轉換,在dwDataSourceType中填寫DataWorks側資料來源的類型,當前已支援的類型包括:ODPS、ELASTICSEARCH、HBASE、HIVE、HOLOGRES、KAFKA、MONGODB、MYSQL、ORACLE、OSS、POSTGRESQL、SQLSERVER。
· HiveSQL:預設轉換為ODPS_SQL(MaxCompute)。
· DWSSQL:預設轉換為ODPS_SQL(MaxCompute)。
· DLISQL:預設轉換為ODPS_SQL(MaxCompute)。
· RDSSQL:預設轉換為ODPS_SQL(MaxCompute)。
· SparkSQL:預設轉換為ODPS_SQL(MaxCompute)。
· Shell:預設轉換為DIDE_SHELL(通用Shell)。
· DLISpark:預設轉換為ODPS_SPARK,部分參數映射。
· MRSSpark:預設轉換為ODPS_SPARK,部分參數映射。
· DLFSubJob:預設轉換為SUB_PROCESS節點,參考關聯性擷取正常。
· RESTAPI:預設轉換為DIDE_SHELL,節點中的HTTP請求通過拼字curl命令實現,當前僅支援GET、POST請求。
· Note:預設轉換為VIRTUAL(虛擬節點),保留內容資訊。
· Dummy:預設轉換為VIRTUAL(虛擬節點),保留內容資訊。
· 其餘暫不支援的節點,轉換為VIRTUAL節點。
DataWorks節點類型可參考此枚舉類:
3 運行調度轉換工具
轉換工具通過命令列調用,調用命令如下:
sh ./bin/run.sh convert \
-c ./conf/<你的設定檔>.json \
-f ./data/1_ReaderOutput/<源端探查匯出包>.zip \
-o ./data/2_ConverterOutput/<轉換結果輸出包>.zip \
-t dataartsstudio-dw-converter其中-c為設定檔路徑,-f為ReaderOutput包儲存路徑,-o為ConverterOutput包儲存路徑,-t為轉換外掛程式名稱。
例如,當前需要轉換的DataArts專案A:
sh ./bin/run.sh convert \
-c ./conf/projectA_convert.json \
-f ./data/1_ReaderOutput/projectA_ReaderOutput.zip \
-o ./data/2_ConverterOutput/projectA_ConverterOutput.zip \
-t dataartsstudio-dw-converter轉換工具運行中將列印過程資訊,請關注運行過程中是否有報錯。轉換完成後將在命令列中列印轉換成功與失敗的統計資訊。注意,部分節點的轉換失敗不會影響整體轉換流程,如遇少量節點轉換失敗,可在遷移至DataWorks後進行手動修改。
4 查看轉換結果
開啟./data/2_ConverterOutput/下的產生包ConverterOutput.zip,可預覽匯出結果。
其中,統計報表是對轉換結果任務流、節點、資源、函數、資料來源基本資料的匯總展示。
而data/project檔案夾是轉換完成的調度遷移包本體。
統計報表提供了兩項特殊能力:
1、報表中工作流程、節點的部分屬性被允許更改,允許更改的欄位以藍色字型標識。在下一階段匯入DataWorks時,工具將擷取表格中的屬性變更並使其生效。
2、報表允許通過刪除工作流程子表中的行,使得在匯入DataWorks時跳過這些工作流程(工作流程黑名單)。注意!若工作流程存在相互依賴關係,相關聯的工作流程需要同批次匯入,不可通過黑名單進行分割。分割會產生異常!
三、匯入DataWorks
LHM遷移工具異構轉換已將遷移源端的調度元素轉換為DataWorks調度格式,工具得以針對不同的遷移情境提供了統一的上傳入口,實現任務流匯入DataWorks。
匯入工具支援多輪刷寫,會自動選擇建立/更新任務流(OverWrite模式)。
1 前置條件
1.1 轉換成功
轉換工具運行完成,源端調度資訊被成功轉換為DataWorks調度資訊,ConverterOutput.zip被成功產生。
(可選,推薦)開啟轉換輸出包,查看統計報表,核對待遷移範圍是否被轉換成功。
1.2 DataWorks側配置
DataWorks側需進行以下動作:
1、建立工作空間。
2、建立AK、SK且保證AK、SK對工作空間具有管理員權限。(強烈建議建立與帳號有綁定關係的AK、SK,以便在寫入遇到問題時進行排查)
3、在工作空間中建立資料來源、綁定計算資源、建立資源群組。
4、在工作空間中上傳檔案資源、建立UDF。
1.3 網路連通性檢查
驗證能否串連DataWorks Endpoint。
服務存取點列表:
ping dataworks.aliyuncs.com2 匯入配置項
在工程目錄的conf檔案夾下建立匯出設定檔(JSON格式),如writer.json。
使用前請刪除json中的注釋。
{
"schedule_datasource": {
"name": "YourDataWorks", //給你的DataWorks資料來源起個名字!
"type": "DataWorks",
"properties": {
"endpoint": "dataworks.cn-hangzhou.aliyuncs.com", // 服務存取點
"project_id": "YourProjectId", // 工作空間ID
"project_name": "YourProject", // 工作空間名稱
"ak": "************", // AK
"sk": "************", // SK
},
"operaterType": "MANUAL"
},
"conf": {
"di.resource.group.identifier": "Serverless_res_group_***_***", // 調度資源群組
"resource.group.identifier": "Serverless_res_group_***_***", // Data Integration資源群組
"dataworks.node.type.xls": "/Software/bwm-client/conf/CodeProgramType.xls", // DataWorks節點類型表的路徑
"qps.limit": 5 // 向DataWorks發送API請求的QPS上限
}
}2.1 服務存取點
根據DataWorks所在Region選擇服務存取點,參考文檔:
2.2 工作空間ID與名稱
開啟DataWorks控制台,開啟工作空間詳情頁,從右側基本資料中擷取工作空間ID與名稱。
2.3 建立AK、SK並授權
在使用者頁建立AK、SK,要求對目標DataWorks工作空間擁有管理員讀寫權限。
許可權管理組件括兩處,如果帳號是RAM帳號,則需先對RAM帳號進行DataWorks操作授權。
權限原則頁面:https://ram.console.alibabacloud.com/policies
然後在DataWorks工作空間中,將工作空間許可權賦給帳號。
注意!AccessKey可設定網路訪問限制策略,請務必保證遷移工具所在機器的IP被允許訪問。
2.4 資源群組
由DataWorks工作空間詳情頁左側功能表列進入資源群組頁面,綁定資源群組,並擷取資源群組ID。
通用資源群組可用於節點調度,也可用於Data Integration。配置項中調度資源群組resource.group.identifier和Data Integration資源群組di.resource.group.identifier可以配置為同一通用資源群組。
2.5 QPS設定
工具通過調用DataWorks的API進行匯入操作。不同DataWorks版本中的讀、寫OpenAPI分別有相應的QPS限制和每日調用次數限制,詳見連結:使用限制。
DataWorks基礎版、標準版、專業版建議填寫"qps.limit": 5,企業版建議填寫"qps.limit": 20。
注意,請儘可能避免多個匯入工具同時運行。
2.6 DataWorks節點類型ID設定
在DataWorks中,部分節點類型在不同Region中被分配了不同的TypeId。具體TypeID以DataWorks資料開發實際介面為準。存在此特性的節點類型以資料庫節點為主:資料庫節點。
如:MySQL節點在杭州Region的NodeTypeId為1000039、在深圳Region的NodeTypeId為1000041。
為適應上述DataWorks不同Region的差異特性,工具提供了一種可配置的方式,允許使用者組態工具所使用的節點TypeId表。
表格通過匯入工具的配置項引入:
"conf": {
"dataworks.node.type.xls": "/Software/bwm-client/conf/CodeProgramType.xls" // DataWorks節點類型表的路徑
}從DataWorks資料開發介面上擷取節點類型Id的方法:在介面上建立一個工作流程,並在工作流程中建立一個節點,在點擊儲存後查看工作流程的Spec。
若節點類型配置錯誤,在任務流發布時將提示以下錯誤。
3 運行DataWorks匯入工具
轉換工具通過命令列調用,調用命令如下:
sh ./bin/run.sh write \
-c ./conf/<你的設定檔>.json \
-f ./data/2_ConverterOutput/<轉換結果輸出包>.zip \
-o ./data/4_WriterOutput/<匯入結果儲存包>.zip \
-t dw-newide-writer其中-c為設定檔路徑,-f為ConverterOutput包儲存路徑,-o為WriterOutput包儲存路徑,-t為提交外掛程式名稱。
例如,當前需要匯入DataWorks的專案A:
sh ./bin/run.sh write \
-c ./conf/projectA_write.json \
-f ./data/2_ConverterOutput/projectA_ConverterOutput.zip \
-o ./data/4_WriterOutput/projectA_WriterOutput.zip \
-t dw-newide-writer匯入工具運行中將列印過程資訊,請關注運行過程中是否有報錯。匯入完成後將在命令列中列印匯入成功與失敗的統計資訊。注意,部分節點的匯入失敗不會影響整體匯入流程,如遇少量節點匯入失敗,可在DataWorks中進行手動修改。
4 查看匯入結果
匯入完成後,可在DataWorks中查看匯入結果。匯入處理程序中亦可查看工作流程逐個匯入的過程,如發現問題需要終止匯入,可運行jps命令找到BwmClientApp,並使用kill -9終止匯入。
5 Q&A
5.1 源端持續在進行開發,這些增量與變更如何提交到DataWorks?
遷移工具為OverWrite模式,重新運行匯出、轉換、匯入可實現將源端增量提交到DataWorks的能力。請注意,工具將根據全路徑匹配任務流以選擇建立任務流/更新任務流。如需進行變更遷移,請勿移動任務流。
5.2 源端持續在進行開發,同時進行DataWorks上任務流改造與治理,增量遷移時是否會覆蓋DataWorks上的變更?
是的,遷移工具為OverWrite模式,建議您在完成遷移後再在DataWorks上進行後續改造。或者採用分批遷移的方式,已遷移等任務流再確認不再刷寫後開始DataWorks改造,不同批次之間互相不會影響。
5.3 整個包匯入耗時太長,能否只匯入一部分
可以,可手動裁剪待匯入包來實現部分匯入:將data/project/workflow檔案夾下需要匯入的任務流保留、其他任務流刪除,重新壓縮回壓縮包,再運行匯入工具。注意,存在相互依賴的任務流需要捆綁匯入,否則任務流間的節點血緣將會丟失。