# 新增轉換流程

您可以在轉換任務中納入流程。流程設計工具可讓您使用來源、處理器和目標建立轉換流程，以定義複雜或簡單的轉換

轉換流程和處理器是邏輯呈現。這表示，在 ELT 任務中，只會為每個目標建立一個表格，且所有處理器會根據目標編譯為單一 SQL 陳述式。

## 支援的目標平台

轉換流程支援以下平台：

* Snowflake

* Databricks

* Google BigQuery

* Azure Synapse Analytics

* Microsoft Fabric

* Microsoft SQL Server

* Amazon Redshift

  資訊備註以下 Amazon Redshift 函數不可用：UUID 字串產生和編輯距離。

## 必要條件

建立轉換流程之前，您必須：

* 以您要用於轉換流程的上線資料填入儲存任務，或註冊現有資料。如需更多關於如何上線並註冊資料的資訊，請參閱 [將資料導入資料倉儲](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Onboarding/Onboarding-data.htm) 和 [註冊已存在於資料平台的資料](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Onboarding/Registering-data.htm)。
* 準備並執行轉換流程中作為來源使用的儲存或轉換任務。執行儲存任務不是強制性質，但建議能夠在流程的每個步驟顯示資料預覽。

## 建立轉換流程

若要建立有效的轉換流程，您需要至少一個來源資料集，以及一個已命名的目標與已定義的金鑰。

1. 在資料管道中開啟轉換資料任務。

2. 在轉換中，選取要在轉換流程中包含的來源資料集，再按一下新增轉換流程。

   會顯示新增轉換流程，您可在此提供轉換設定。

3. 在名稱中輸入目標資料集的名稱。

   您也可以在說明中新增較長的說明。

4. 在具體化中，選取是否應具體化轉換的輸出。您可以選擇繼承資料任務設定中的設定。

   * 開啟將會建立表格，並且將會處理相關的 ELT 處理。

   * 關閉將會建立即時執行轉換的檢視。

5. 在歷史資料儲存 (類型 2) 中，選擇是否要保留歷史資料。您可以選擇繼承資料任務設定中的設定。此設定要求具體化處於啟用狀態。

6. 增量載入可讓您套用篩選條件或其他條件，以減少使用巨集處理的資料集，藉此調整對於增量資料載入的查詢。只有在資料具體化為表格時，才能使用增量載入。

   * 若增量載入是開啟

     首次執行任務將會執行初始載入，將所有查詢結果插入目標表格中。後續執行將會執行增量載入，運用您為增量處理定義的篩選條件或特定條件。在增量載入期間，任務只會以更新或插入方式處理資料，不會管理刪除。

   * 若增量載入是關閉

     首次執行任務將會執行初始載入，將所有查詢結果插入目標表格中。後續執行將會與目標表格比較，並處理新的、已變更或已刪除的記錄，以處理所有查詢結果。

   資訊備註若查詢將會選取應存在於目標中的所有記錄，請將增量載入設定為關閉。將會在目標中刪除未選取的記錄。

7. 在您準備好建立轉換流程時按一下新增。

   就會開啟流程設計工具，目標會建立並顯示在流程中作為目標元件。

   資訊備註強制為流程目標提供唯一名稱。若您之後想要重新命名流程目標，在資料集名稱中選取目標並輸入新名稱。

8. 若沒有為目標定義金鑰，按一下金鑰與可為 Null 旁邊的編輯。隨即開啟設定視窗。

   資訊備註金鑰不會繼承自來源資料集，必須手動定義。可為 Null 繼承自來源資料集，可以修改。

9. 在設定金鑰和可為 Null 中，在欄中選取您要定義為主要金鑰的金鑰，並在一個或多個欄中選取您要定義為可為 Null 的可為 Null。

10. 按一下確認以儲存變更並關閉設定視窗。

若轉換流程的狀態有效，您可以關閉流程並準備資料。

您之後可以在目標設定中變更具體化和增量載入的設定。

* 選取目標並在目標設定中按一下設定旁的編輯。

## 新增處理器

您可以將處理器新增至流程。

處理器是可新增至流程的元件，以便轉換即將獲得的資料，並將轉換後的資料傳回到流程的下一步。

1. 在流程設計工具中，選取要在之後新增處理器的流程元件。
2. 按一下流程元件中的 the 垂直省略圖示 icon，然後按一下新增處理器，並選取要新增的處理器。您也可以將處理器從左側面板拖曳至畫布。

   提示備註可以從處理器面板選取處理器，以顯示處理器的簡短描述。
3. 根據需求設定處理器，並按一下儲存以儲存變更並更新資料預覽。

   資訊備註您可以使用 SQL 和資料預覽預覽資料樣本。如需詳細資訊，請參閱[預覽結果](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Transformation/Adding-SQL-based-tables.htm#Previewi)。

### 可用處理器

the 彙總 icon

### 彙總處理器

the 彙總 icon

### AI 處理器

the 清理 icon

### 清理處理器

the 串連 icon

### 串連處理器

the 篩選 icon

### 篩選處理器

the 分支 icon

### 分支處理器

the 雜湊 icon

### 雜湊處理器

the 增量篩選 icon

### 增量篩選處理器

the 聯結 icon

### 聯結處理器

the 數學 icon

### 數學處理器

the 數字 icon

### 數字處理器

the 移除欄 icon

### 移除欄處理器

the 選取欄 icon

### 選取欄處理器

the SQL 運算式 icon

### SQL 運算式處理器

the 字串 icon

### 字串處理器

the 聯集 icon

### 聯集處理器

### 使用案例：在 Snowflake 聯結、彙總和篩選資料

在此使用案例中，Snowflake 客戶資料需要透過處理器來轉換。由於客戶資訊來自兩個資料集，您想要先將聯結處理器新增至合併記錄。您也想要使用彙總處理器，以計算平均訂單價格，並使用篩選處理器篩選您要在輸出資料集中保留的客戶記錄類型。

![使用聯結處理器、彙總處理器和篩選處理器的轉換流程。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/ui_TransformationFlowCanvas.png)

第一個資料集是根據稱為 CUSTOMER\_ACCOUNT 的 Snowflake 表格，其結構描述看起來如下：

![關於客戶帳戶的 Snowflake 表格結構描述](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/ui_TransformationFlowCustomerAccount.png)

第二個資料集是根據稱為 CUSTOMER\_ORDER 的 Snowflake 表格，其結構描述看起來如下：

![關於客戶訂單的 Snowflake 表格結構描述](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/ui_TransformationFlowCustomerOrder.png)

1. 將聯結處理器從處理器左側面板拖曳到畫布。

2. 將第二個來源連結至聯結處理器，以便合併來自資料集的資料。

3. 設定聯結處理器以在客戶 ID 金鑰 (CUSTOMER\_ID) 聯結兩個來源資料集。

4. 在聯結處理器之後拖曳彙總處理器。

5. 設定彙總處理器，以計算平均客戶購買金額 (ORDER\_TOTAL\_PRICE)，並儲存在可以命名 avg\_order\_price 的新欄，同時透過客戶區段類型 (LEFT\_CUSTOMER\_SEGMENT) 將記錄組成群組。

6. 將篩選處理器從處理器左側面板拖放到畫布。

7. 設定篩選處理器以篩選企業客戶類型 (企業)。

8. 選取篩選處理器上的 the 垂直省略圖示 icon 以開啟功能表，並按一下新增不相符的目標以將第二個目標新增至流程。

   此目標將包含不符合篩選條件 (個人客戶類型 (個人)) 的記錄。

9. 輸入新的目標資料集的名稱，例如 individual\_cust。

10. 查看兩個目標的輸出預覽：

    business\_cust 目標顯示企業客戶類型的平均訂單價格，在此是 157.463687151。

    ![輸出顯示企業客戶類型的平均訂單價格](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/ui_TransformationFlowBusinessOutput.png)

    individual\_cust 目標顯示個人客戶類型的平均訂單價格，在此是 153.576530612。

    ![輸出顯示個人客戶類型的平均訂單價格](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/ui_TransformationFlowIndividualOutput.png)

11. 確認轉換流程的狀態有效，然後關閉。

12. 在轉換視窗中，按一下準備以準備資料。

## 限制和考慮事項

在轉換流程中，下列資料類型無法直接用作 Cleanse、Hash 或 Filter 等處理器中的值：

* 時間

* 日期

* 日期時間

* JSON

若要使用這些資料類型，請先將其轉換為支援的格式 (例如，STRING 或 NUMERIC)，然後在這些處理器中使用它們。

## 最佳做法

將來源或目標資料集新增至流程時，您應在目標資料集的設定面板中設定金鑰和可為 Null。