雲端儲存目標的設定
您可以根據需求變更預設資料湖登陸設定。
一般
更新方法
您可以透過兩種不同的模式登陸資料。資料湖登陸任務準備後,就無法變更模式。
-
變更資料擷取 (CDC):資料湖登陸任務以完整載入開始 (在此期間,會登陸所有選取的表格)。然後登陸資料會使用 CDC (變更資料擷取) 技術保持最新狀態。
資訊備註不支援 DDL 操作的 CDC (變更資料擷取)。使用 資料移動閘道 時,會幾乎即時地從來源擷取變更。在沒有 資料移動閘道 的情況下工作時,會根據排程器設定擷取變更。如需詳細資訊,請參閱 在不使用 資料移動閘道 時排程任務。
- 載入:執行完整載入以將資料從所選來源表格載入到目標平台,並建立目標表格 (如有必要)。完整載入會在任務開始時自動發生,但也可以根據需要手動執行或安排定期進行。
要使用的資料夾
根據您希望檔案寫入到哪個值區資料夾,選取下列內容之一:
- 預設資料夾:預設資料夾格式為 <your-project-name>/<your-task-name>
- 根資料夾:檔案將會直接寫入到值區。
-
資料夾:輸入資料夾名稱。若不存在,將會在資料湖登陸任務期間建立資料夾。
資訊備註 資料夾名稱不可包括特殊字元 (例如 @、#、! 等)。
變更資料分割
在標準登陸任務中,變更會登陸至目標,沒有特定順序。變更資料分割能夠以一致的方式處理來自許多表格的變更資料。您可以定義分割持續時間以及分割基準時間,藉此確保分割資料的整體一致性 (亦即沒有部分交易、沒有不具訂單列的訂單標頭等)。
關於分割的資訊記錄在目標資料庫的 attrep_cdc_partitions 控制表格中。此資訊可用來識別需要進一步處理的分割資料。
分割選項如下:
-
分割間隔 - 指定每次分割的長度 (單位為小時和分鐘)。
資訊備註建議指定超過一小時的分割長度。雖然指定不到一小時的分割長度可能會改善延遲,但在目標上建立許多分割也可能會影響 (目標) 效能 (尤其是在具有大量變更的系統中)。
若您從建立上一個分割的時間之前繼續任務,資料湖登陸任務將會寫入到已關閉的分割。
- 分割基準時間 - 在 24 小時期間建立分割,這以 UTC 時間根據來源資料庫指定的「分割基準時間」來計算 (使用 UTC 時間)。例如,分割間隔 8 小時搭配「分割基準時間」02:00 將會建立下列分割:02:00-10:00、10:00-18:00、18:00-02:00 - 但不一定是該順序。例如,若任務在 01:00 建立,則首次分割的時間範圍將會是 18:00-02:00。此外,若任務在分割中間建立 (例如在 04:00),其變更資料也會插入 02:00-10:00 分割中 (即使在 04:00 之前沒有擷取任何變更)。
資料上傳
檔案屬性
格式
您可以選擇以 CSV、JSON 或 Parquet 格式建立目標檔案。
在 JSON 檔案中,會透過單一行呈現每個記錄,如以下範例所示:
{ "book_id": 123, "title": "Alice in Wonderland", "price": 6.99, "is_hardcover": false }
{ "book_id": 456, "title": "Winnie the Pooh", "price": 6.49, "is_hardcover": true }
{ "book_id": 789, "title": "The Cat in the Hat", "price": 7.23, "is_hardcover": true }
另請參見: 內容類型和內容編碼屬性
- 若您選擇 JSON 或 Parquet 格式,將會隱藏下列欄位,因為這只與 CSV 格式相關:欄位分隔符號、記錄分隔符號、Null 值、引號字元、引號逸出字元和新增中繼資料標頭。
- 下列欄位只與 Parquet 格式相關:Parquet 版本、Parquet 時間戳記單位和 Parquet LOB 大小上限 (KB)。
如需關於使用 Parquet 格式和限制時的資料類型對應的資訊,請參閱 Mapping from Qlik Cloud data types to Parquet
欄位分隔符號
將會用來在目標檔案中分隔欄位 (欄) 的分隔符號。預設為逗號。
使用逗號作為分隔符號的範例:
"mike","male"
分隔符號可以是標準字元或十六進位值。請注意,「0x
」前置詞必須用來表示十六進位分隔符號 (例如 0x01 = SOH
)。在欄位分隔符號、記錄分隔符號和 Null 值欄位中,分隔符號可以包含串連的十六進位值 (例如 0x0102
= SOHSTX
),其中在引號字元和引號逸出字元欄位中,只能是單一十六進位值。
不支援十六進位數字 0x00
(亦即僅支援 0x01
-0xFF
)。
Null 值
將會用來在目標檔案中指示 Null 值的字串。
範例 (其中 \n 是記錄分隔符號,而 @ 是 Null 值):
記錄分隔符號
將會用來在目標檔案中分隔記錄 (列) 的分隔符號。預設為新行 (\n
)。
範例:
引號字元
將會在文字欄的開頭和結尾使用的字元。預設為雙引號字元 (")。若以雙引號括起包含欄分隔符號的欄,則會將欄分隔符號字元解譯為實際資料,而不是解譯為欄分隔符號。
範例 (其中 @ 是引號字元):
引號逸出字元
用來在實際資料中逸出引號字元的字元。預設為雙引號字元 (")。
範例 (其中 " 是引號字元,而 \ 是逸出字元):
Parquet 版本
根據目標平台支援哪個版本,選取要使用哪個版本。請注意,Parquet 版本 1.0 僅支援 MICRO 時間戳記單位,而 Parquet 版本 2.6 支援 MICRO 和 NANO 時間戳記單位。
Parquet 時間戳記單位
若 Parquet 版本設定為 2.6,選擇 MICRO 或 NANO。若 Parquet 版本設定為 1.0,只會支援 MICRO。
Parquet 最大 LOB 大小 (KB)
預設的最大 LOB 大小為 64 KB,而您可以在欄位中輸入的最大值為 10,000 KB。處理 LOB 欄需要更大的資源,這反過來會影響效能。增加此值的唯一方式是複寫大於 64 KB 的 LOB 資料,且您需要所有 LOB 資料都複寫至目標。
檔案大小上限
檔案在關閉之前可達到的大小上限 (可選擇壓縮檔案)。
檔案在關閉之前可達到的大小上限。較小的檔案可能上傳得更快 (取決於網路),並且可在結合平行執行選項使用時改善效能。不過,以小檔案叢集資料庫通常被視為不良做法。
使用以下內容壓縮檔案
選擇壓縮選項之一以壓縮目標檔案,或選擇無 (預設) 保持不壓縮。請注意,可用的壓縮選項透過所選的檔案格式來判定。
新增中繼資料標頭
您可以選擇將標頭列新增至資料檔案。標頭列可以包含來源欄名稱和/或中繼 (亦即Qlik Talend Data Integration) 資料類型。
選取具有欄名稱和具有資料類型時含標頭列的目標檔案範例:
Position:DECIMAL(38,0),Color:VARCHAR(10)
1,"BLUE"
2,"BROWN"
3,"RED"
...
變更處理
此區段描述變更處理中的條件式設定。
在下列情況套用/儲存變更
中繼資料檔案
若選取在目標資料夾中建立中繼資料檔案選項,則對於每個資料檔案,將會在指定的目標資料夾之下建立具有 .dfm 副檔名的相符中繼資料檔案。中繼資料檔案提供關於任務/資料的其他資訊,例如來源連接器類型、來源表格名稱、資料檔案中的記錄數量等。
如需中繼資料檔案的完整描述以及可能的使用情況,請參閱 中繼資料檔案描述
中繼資料
LOB 欄
-
納入 LOB 欄並將欄大小限制為 (KB):
您可選擇在任務中納入 LOB 欄,以及設定最大 LOB 大小。將會截斷大於最大大小的 LOB。
控制表格
選取您要在目標平台建立下列哪些控制表格:
- 複寫狀態:提供關於目前登陸任務的詳細資訊,包括任務狀態、任務取用的記憶體量、尚未套用至資料平台的變更數量,以及目前讀取資料的資料來源中的位置。
- 暫停的表格:提供暫停表格清單,以及暫停的原因。
- 複寫歷史記錄:提供關於任務歷史記錄的資訊,包括登陸任務期間處理的記錄數目和記錄量、CDC 任務結束時的延遲等。
- 變更資料分割:提供由於 變更資料分割 而在目標資料庫建立的分割記錄。您可以使用此資訊識別需要進一步處理的分割資料。
如需每個控制表格的詳細描述,請參閱 控制表格
完整載入
效能微調
- 要平行載入的表格數量上限:輸入一次載入到目標中的表格數量上限。預設值為 5。
-
交易一致性逾時 (秒):輸入在開始完整載入操作之前等待開放的交易關閉的秒數。預設值為 600 (10 分鐘)。將會在達到逾時值之後開始完整載入,即使有仍然開放的交易也是如此。
資訊備註若要複寫完整載入開始時開放但僅在達到逾時值之後認可的交易,您需要載入目標表格。 - 完整載入期間的認可率:可以一起傳輸的事件數量上限。預設值為 10000。
完整載入完成之後
建立主要金鑰或唯一:若您想要在完整載入完成之前,對資料平台延遲主要金鑰或唯一索引建立,請選取此選項。
用於初始載入
從 SaaS 應用程式來源移動資料時,您可以設定如何執行初始完整載入:
使用快取的資料 |
此選項可讓您使用透過所選的完整資料掃描產生中繼資料時讀取的快取資料。 這會對 API 使用和配額產生較少的負荷,因為已從來源讀取資料。可以透過變更資料擷取 (CDC) 選取自初始資料掃描以來的任何變更。 |
從來源載入資料 |
此選項從資料來源執行新的載入。如有以下情況,此選項很實用:
|
儲存變更處理
變更表格標頭欄提供關於變更處理操作的資訊,例如操作類型 (例如插入)、認可時間等。若您不需要此資訊,可以設定資料任務,以建立不含部分或所有標頭欄的變更表格,藉此降低在目標資料庫中的所占空間。若要這麼做,清除您要排除的標頭欄的核取方塊。
請注意,您無法在任務執行時移除其他欄或還原欄。若要變更您的初始選項,您需要先停止任務,然後修改選項,最後載入目標表格。
啟用 變更資料分割 後,名為「partition_name」的額外標頭欄會新增至變更表格並在 UI 中自動選取。由於此欄為必填,無法排除。
如需標頭欄的描述,請參閱 使用變更表格。
處理時發生錯誤
資料錯誤
僅變更資料擷取 (CDC) 更新方法支援資料錯誤處理。
資料截斷錯誤
對於資料截斷錯誤:選取當截斷發生於一個或多個特定記錄時,您想要發生的事項。您可以從清單中選取下列內容之一:
- 忽略:任務會繼續並忽略錯誤。
- 暫停表格:任務會繼續,但具有錯誤記錄之表格中的資料會移至錯誤狀態,並且不會複寫其資料
- 停止任務:任務會停止,需要手動干預。
其他資料錯誤
對於其他資料錯誤:選取當錯誤發生於一個或多個特定記錄時,您想要發生的事項。您可以從清單中選取下列內容之一:
- 忽略:任務會繼續並忽略錯誤。
- 暫停表格:任務會繼續,但具有錯誤記錄之表格中的資料會移至錯誤狀態,並且不會複寫其資料
- 停止任務:任務會停止,需要手動干預。
呈報資料錯誤處理
在達到其他資料錯誤 (每個表格) 時呈報錯誤處理:選取此核取方塊,以在非截斷資料錯誤數量 (每個表格) 達到指定量時呈報錯誤處理。有效值為 1-10,000。
呈報動作:選擇呈報錯誤處理時應發生什麼事。請注意,可用動作取決於從上述對於其他資料錯誤下拉式清單中選取的動作。
-
暫停表格 (預設):任務會繼續,但具有錯誤記錄之表格中的資料會移至錯誤狀態,並且不會landed其資料。
- 停止任務:任務會停止,需要手動干預。
表格錯誤
遇到表格錯誤時:從下拉式清單選取下列內容之一:
- 暫停表格 (預設):任務會繼續,但具有錯誤記錄之表格中的資料會移至錯誤狀態,並且不會複寫其資料
- 停止任務:任務會停止,需要手動干預。
在達到表格錯誤 (每個表格) 時呈報錯誤處理:選取此核取方塊,以在表格錯誤數量 (每個表格) 達到指定量時呈報錯誤處理。有效值為 1-10,000。
呈報動作:表格錯誤的呈報政策設定為停止任務且無法變更。
環境
-
重試計數上限:選取此選項,然後指定在可修復的環境錯誤發生時重試任務的嘗試次數上限。在重試任務達到指定次數之後,任務會停止,需要手動干預。
若絕對不要重試任務,清除核取方塊或指定「0」。
若要重試任務無限次數,指定「-1」
-
重試嘗試之間的間隔 (秒):使用計數器以選取或輸入系統在每次嘗試重試任務之間等待的秒數。
有效值為 0-2,000。
-
- 對長時間中斷增加重試間隔:選取此核取方塊以對長時間中斷增加重試間隔。若啟用此選項, 會加倍每次重試嘗試之間的間隔,直到達到重試間隔上限為止 (並根據指定的間隔上限繼續重試)。
- 重試間隔上限 (秒):在啟用對長時間中斷增加重試間隔選項時,使用計數器以選取或輸入每次嘗試重試任務之間等待的秒數。有效值為 0-2,000。
變更處理微調
交易卸載微調
-
對磁碟的卸載交易進行中,條件是:
通常會將交易資料保留在記憶體中,直到對來源或目標完全認可為止。不過,大於配置記憶體或未在指定期限內認可的交易將會卸載到磁碟。
- 所有交易記憶體總大小超過 (MB):在卸載到磁碟之前,所有交易可以在記憶體中占用的大小上限。預設值為 1024。
- 交易期間超過 (秒):在卸載到磁碟之前,每筆交易可以在記憶體中停留的時間上限。持續時間是從 Qlik Talend Data Integration 開始擷取交易的時間計算。預設值為 60。
批次微調
-
每個交易的變更數量下限:要在每個交易中納入的變更數量下限。預設值為 1000。
資訊備註若變更數量等於或大於每個交易的變更數量下限值,或者若達到套用之前的批次交易時間上限 (秒) 值 (以先發生者為主), 會將變更套用至目標。因為套用至目標的變更頻率由這兩個參數控制,對來源記錄的變更可能不會立即反映在目標記錄中。
- 套用之前的批次交易時間上限 (秒):宣告逾時之前批次收集交易的時間上限。預設值為 1。
間隔
只有在下列情況下,此選項才能使用:
- 使用 資料移動閘道
- 從 SaaS 應用程式來源登陸資料
- 會透過變更資料擷取 (CDC) 更新方法定義任務
讀取變更間隔 (分鐘)
設定從來源讀取變更之間的間隔,單位為分鐘。有效範圍為 1 至 1,440。
雜項微調
- 陳述式快取大小 (陳述式數量):要儲存在伺服器以供之後執行的所準備之陳述式數量上限 (將變更套用至目標時)。預設為 50。上限為 200。
-
在更新主要金鑰欄時刪除和插入:此選項需要在來源資料庫中開啟完全補充記錄。
結構描述演進
字元替代
您可以替代或刪除目標資料庫中的來源字元,以及/或您可以替代或刪除所選字元集合不支援的來源字元。
-
必須指定所有字元作為 Unicode 字碼指標。
- 也會在控制表格執行字元替代。
-
將會透過表格儲存格右上方的紅色三角形指示無效的值。將滑鼠游標暫留在三角形上方,將會顯示錯誤訊息。
-
將會在字元替代完成之後,執行為任務定義的任何表格層級或全域轉換。
-
會在替代或刪除所選字元集合不支援的來源字元表格中定義的替代動作之前,執行替代或刪除來源字元表格中定義的替代動作。
- 字元替代不支援 LOB 資料類型。
替代或刪除來源字元
使用替代或刪除來源字元表格,以定義更換特定來源字元。例如,若 Unicode 字元表示法在來源和目標平台不同,這可能會很實用。例如,在 Linux,Shift_JIS 字元集合中的減號字元以 U+2212 表示,但在 Windows 則以 U+FF0D 表示。
至 | 進行此 |
---|---|
定義替代動作。 |
|
編輯指定的來源或目標字元 |
按一下列末尾的 ,並選取編輯。 |
從表格中刪除項目 |
按一下列末尾的 ,並選取刪除。 |
替代或刪除所選字元集合不支援的來源字元
使用字元集合不支援的來源字元表格,為所選字元集合不支援的所有字元定義單一替換字元。
至 | 進行此 |
---|---|
定義或編輯替代動作。 |
|
停用替代動作。 |
從字元集合下拉式清單中選取空白項目。 |
更多選項
不會在 UI 中暴露這些選項,因為這僅與特定版本或環境相關。因此,請勿設定這些選項,除非 Qlik 支援或產品文件明確指示這麼做。
若要設定選項,只要在新增特徵名稱欄位中複製選項並按一下新增即可。然後根據您收到的說明設定值或啟用選項。
在不使用 資料移動閘道 時排程任務
Qlik Talend Cloud 啟動器 訂閱不支援 資料移動閘道,可透過其他訂閱層級選用。不使用 資料移動閘道 時,不支援幾乎即時的 CDC (變更資料擷取)。您可設定排程間隔,以讓目標資料保持在最新狀態。排程決定透過來源資料集變更更新目標資料集的頻率。排程決定更新頻率,而資料集類型則決定更新方法。若來源資料集支援 CDC (變更資料擷取),只會複寫來源資料的變更並套用至對應的目標表格。若來源資料集不支援 CDC (例如檢視畫面),則會將所有來源資料載入到對應的目標表格,以套用變更。若有些來源資料集支援 CDC,而有些不支援,將會建立兩個獨立的子任務 (假設變更資料擷取 (CDC) 更新方法是):一個用於載入不支援 CDC 的資料集,另一個用於對支援 CDC 的資料集擷取變更。在此情況下,為了確保資料一致性,強烈建議為兩個子任務設定相同的排程。
若要變更排程:
-
開啟資料專案,然後進行下列事項之一:
- 在任務檢視中,按一下資料任務上的 並選取排程。
- 在管道檢視中,按一下資料任務上的 並選取排程。
- 開啟複寫任務並按一下排程工具列按鈕。
- 根據需求變更排程設定,然後按一下確定。