我正在使用復制活動將行更新到 azure 表存盤。目前,如果在更新任何行/批次時出現任何錯誤,管道就會失敗。
有沒有辦法優雅地處理失敗的行并繼續對其余資料進行復制活動?
我已經嘗試了復制活動提供的 Fault Tolerance 選項,但這并不能解決這種情況。
容錯頁面
uj5u.com熱心網友回復:
- 在將包含特殊字符資料的列映射到表存盤中的 RowKey 列時,我重現了相同的錯誤并得到了相同的錯誤。
源資料集

容錯設定

錯誤資訊:

在復制活動中,除了使用容錯之外,不可能跳過不兼容的行。解決方法是使用資料流活動并將兼容行和不兼容行分開,然后使用復制活動復制兼容資料。下面是方法。
- 來源如下圖所示。

- 由于
col4需要在加載到表存盤之前進行檢查,因此使用條件活動對 col4 資料給出條件。Conditional split Transformation是在source transformation之后加入的。條件為 FalseStream:like(col4,'%#%')||like(col4,'%$%')||like(col4,'%/%')||like(col4,'%\\%')
**示例字符在上述條件中給出。**
True Stream將是不符合上述條件的行。

- False 和 true Streams 分別添加到 Sink1 和 sink2 中,將資料復制到 blob 存盤中。
輸出:錯誤流:

真實流資料:

- 將兼容資料復制到 Blob 后,可以使用復制活動將它們復制到表存盤。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/537359.html
