我正在嘗試創建一個執行以下操作的 ADF 管道:
接受 2 列的 csv,例如:Source、Destination test_container/test.txt、test_container/test_subfolder/test.txt
本質上,我想將檔案路徑從源目錄復制/移動到目標目錄(這兩個目錄都在 Azure blob 存盤中)。
我認為有一種方法可以使用查找來做到這一點,但查找僅限于 5000 行,我的 CSV 會比這更大。關于如何實作這一點的任何建議?
提前致謝,
uj5u.com熱心網友回復:
這是 Azure 資料工廠的復雜方案。此外,正如您提到的,您的 CSV 檔案中有超過 5000 條檔案路徑記錄,這也意味著相同數量的源路徑和目標路徑。因此,現在如果您在 ADF 中創建此架構,它將如下所示:
您將使用
Lookup activity來讀取源和目標路徑。由于查找活動限制,您也無法讀取所有路徑。稍后您將使用
ForEach activity.現在您還需要拆分路徑,以便分別獲取容器、目錄和檔案名,以將詳細資訊傳遞給
Datasets為 Source 和 Destination 位置創建的資訊。拆分路徑后,您需要使用Set variable活動來存盤源和目標容器、目錄和檔案名。然后將這些變數Datasets動態傳遞給。這是一個棘手的部分,因為即使單個記錄無法正確拆分,您的管道也會失敗。如果上述步驟成功完成,那么您無需擔心
copy activity。如果所有引數在復制活動中的源和目標選項卡下都獲得了預期值,它將正常作業。
我的建議是為此使用編程方法。例如,使用 python 使用pandas模塊讀取 CSV 檔案并遍歷每個路徑并復制檔案。即使您有 5000 多條記錄,這也能正常作業。
您可以參考這個
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/495253.html
上一篇:通過在azure服務中自動縮放來自動降級服務-vCPU
下一篇:Py4JJavaError:呼叫o3858.save時出錯。:org.apache.spark.SparkException:寫作業中止
