

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 將 FastExport 指令碼轉換為 Amazon Redshift RSQL AWS Schema Conversion Tool
<a name="CHAP-converting-fastexport-rsql"></a>

您可以使用 AWS Schema Conversion Tool (AWS SCT) 將 Teradata FastExport 任務指令碼轉換為 Amazon Redshift RSQL。

*FastExport 任務指令碼*是一組 FastExport 命令和 SQL 陳述式，可從 Teradata 資料庫選取和匯出資料。 AWS SCT 會將 FastExport 命令和 SQL 陳述式轉換為與 Amazon Redshift RSQL 相容的格式。將 Teradata 資料庫遷移至 Amazon Redshift 之後，您可以使用這些轉換後的指令碼從 Amazon Redshift 資料庫匯出資料。

**Topics**
+ [將 FastExport 任務指令碼新增至您的 AWS SCT 專案](#CHAP-converting-fastexport-rsql-create)
+ [使用 在 Teradata FastExport 任務指令碼中設定替代變數 AWS SCT](#CHAP-converting-fastexport-rsql-variables)
+ [使用 轉換 Teradata FastExport 任務指令碼 AWS SCT](#CHAP-converting-fastexport-rsql-convert)
+ [使用 管理 Teradata FastExport 任務指令碼 AWS SCT](#CHAP-converting-fastexport-rsql-manage)
+ [使用 建立 Teradata FastExport 任務指令碼轉換的評估報告 AWS SCT](#CHAP-converting-fastexport-rsql-assessment)
+ [使用 編輯和儲存轉換後的 Teradata FastExport 任務指令碼 AWS SCT](#CHAP-converting-fastexport-rsql-save)

## 將 FastExport 任務指令碼新增至您的 AWS SCT 專案
<a name="CHAP-converting-fastexport-rsql-create"></a>

您可以將多個指令碼新增至單一 AWS SCT 專案。

**將 FastExport 任務指令碼新增至您的 AWS SCT 專案**

1. 在 中建立新專案 AWS SCT 或開啟現有專案。如需詳細資訊，請參閱[在 中啟動和管理專案 AWS SCT](CHAP_UserInterface.Project.md)。

1. 從功能表中選擇**新增來源**，然後選擇 **Teradata** 將來源資料庫新增至專案。如需詳細資訊，請參閱[Teradata 資料庫](CHAP_Source.Teradata.md)。

1. 從選單中選擇**新增目標**，並將目標 Amazon Redshift 資料庫新增至您的 AWS SCT 專案。

   您可以使用虛擬 Amazon Redshift 目標資料庫平台。如需詳細資訊，請參閱[映射至 中的虛擬目標 AWS Schema Conversion Tool](CHAP_Mapping.VirtualTargets.md)。

1. 建立新的映射規則，其中包含您的來源 Teradata 資料庫和 Amazon Redshift 目標。如需詳細資訊，請參閱[在 中映射新資料類型 AWS Schema Conversion Tool](CHAP_Mapping.New.md)。

1. 在**檢視**功能表上，選擇**主檢視**。

1. 在左側面板中，展開 **Scripts** 節點。

1.  選擇 **FastExport**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**載入指令碼**。

1.  輸入 Teradata FastExport 任務指令碼的原始程式碼位置，然後選擇**選取資料夾**。

   AWS SCT 會顯示**載入指令碼**視窗。

1. 執行以下任意一項：
   + 如果您的 Teradata FastExport 任務指令碼不包含替代變數，請選擇**無替代變數**，然後選擇**確定**將指令碼新增至您的 AWS SCT 專案。
   + 如果您的 Teradata FastExport 任務指令碼包含替代變數，請設定替代變數。如需詳細資訊，請參閱[在 FastExport 任務指令碼中設定替代變數](#CHAP-converting-fastexport-rsql-variables)。

## 使用 在 Teradata FastExport 任務指令碼中設定替代變數 AWS SCT
<a name="CHAP-converting-fastexport-rsql-variables"></a>

您的 Teradata FastExport 任務指令碼可以包含替代變數。例如，您可以使用具有替代變數的單一指令碼，從多個資料庫匯出資料。您可以使用 在 Teradata 指令碼中 AWS SCT 設定替代變數。

使用替代變數執行 FastExport 任務指令碼之前，請務必為所有變數指派值。若要這樣做，您可以使用其他工具或應用程式，例如 Bash 指令碼、UC4 (Automic) 等。只有在您指派替代變數的值之後， AWS SCT 才能解析和轉換替代變數。

**在 FastExport 任務指令碼中設定替代變數**

1. 將來源 Teradata FastExport 任務指令碼新增至您的 AWS SCT 專案。如需詳細資訊，請參閱[將 BTEQ 指令碼新增至您的 AWS SCT 專案](CHAP-converting-bteq-rsql.md#CHAP-converting-bteq-rsql-create)。

   當您新增指令碼時，請選擇**使用替代變數**。

1. 針對**定義變數格式**，輸入符合指令碼中所有替代變數的規則運算式。

   例如，如果您的替代變數名稱開頭為 `${`，結尾為 `}`，請使用`\$\{\w+\}`規則表達式。若要比對以貨幣符號或百分比符號開頭的替代變數，請使用`\$\w+|\%\w+`規則表達式。

   中的規則表達式 AWS SCT 符合 Java 規則表達式語法。如需詳細資訊，請參閱 Java 文件中的 [java.util.regex 類別模式](https://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html)。

1. 選擇**確定**將指令碼載入 AWS SCT 專案，然後選擇**確定**關閉**載入指令碼**視窗。

1. 在左側面板中，展開 **Scripts** 節點。選擇 **FastExport**，然後選擇具有指令碼的資料夾。開啟內容 （按一下滑鼠右鍵） 選單，然後選擇替代**變數下的匯出**變數。 ****

1. 匯出一個指令碼的替代變數。使用指令碼展開資料夾、選擇指令碼、開啟內容 （按一下滑鼠右鍵） 選單，然後選擇替代**變數下的匯出**變數。 ****

1. 輸入逗號分隔值 (CSV) 檔案名稱以儲存替代變數，然後選擇**儲存**。

1. 開啟此 CSV 檔案，並填入替代變數的值。

   根據作業系統， AWS SCT 會使用不同的 CSV 檔案格式。檔案中的值可能是否以引號括住。請務必使用與 檔案中其他值相同的替代變數值格式。 AWS SCT 無法匯入具有不同格式值的 CSV 檔案。

1. 儲存 CSV 檔案。

1. 在左側面板中，展開 **Scripts** 節點。選擇 **FastExport**，然後選擇您的指令碼。開啟內容 （按一下滑鼠右鍵） 選單，然後選擇替代**變數下的匯入**變數。 ****

1. 選擇您的 CSV 檔案，然後選擇**開啟**。

1. 選擇**變數以檢視所有探索到的**替代變數及其值。

## 使用 轉換 Teradata FastExport 任務指令碼 AWS SCT
<a name="CHAP-converting-fastexport-rsql-convert"></a>

接下來，了解如何使用 將 Teradata FastExport 任務轉換為 Amazon Redshift RSQL AWS SCT。

**將 Teradata FastExport 任務指令碼轉換為 Amazon Redshift RSQL**

1. 將 FastExport 任務指令碼新增至您的 AWS SCT 專案。如需詳細資訊，請參閱[將 FastExport 任務指令碼新增至您的 AWS SCT 專案](#CHAP-converting-fastexport-rsql-create)。

1. 設定替代變數。如需詳細資訊，請參閱[在 FastExport 任務指令碼中設定替代變數](#CHAP-converting-fastexport-rsql-variables)。

1. 在左側面板中，展開 **Scripts** 節點。

1. 執行以下任意一項：
   + 若要轉換單一 FastExport 任務指令碼，請展開 **FastExport** 節點，選擇要轉換的指令碼，然後從內容選單中選擇**轉換指令碼** （按一下滑鼠右鍵）。
   + 若要隱藏多個指令碼，請務必選取要轉換的所有指令碼。然後選擇 **FastExport**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**轉換指令碼**。

   AWS SCT 會將所有選取的 Teradata FastExport 任務指令碼轉換為與 Amazon Redshift RSQL 相容的格式。在目標資料庫面板的指令碼節點中尋找轉換後的**指令碼**。

1. 編輯轉換後的 Amazon Redshift RSQL 指令碼或儲存指令碼。如需詳細資訊，請參閱[編輯和儲存轉換後的 FastExport 任務指令碼](#CHAP-converting-fastexport-rsql-save)。

## 使用 管理 Teradata FastExport 任務指令碼 AWS SCT
<a name="CHAP-converting-fastexport-rsql-manage"></a>

您可以新增多個 Teradata FastExport 任務指令碼，或從 AWS SCT 專案中移除 FastExport 任務指令碼。

**將新的 FastExport 任務指令碼新增至您的 AWS SCT 專案**

1. 展開左側面板中的**指令碼**節點。

1. 選擇 **FastExport** 節點，然後開啟內容 （按一下滑鼠右鍵） 選單。

1. 選擇**載入指令碼**。

1. 輸入新增 FastExport 任務指令碼和設定替代變數所需的資訊。如需詳細資訊，請參閱[將 FastExport 任務指令碼新增至您的 AWS SCT 專案](#CHAP-converting-fastexport-rsql-create)及[在 FastExport 任務指令碼中設定替代變數](#CHAP-converting-fastexport-rsql-variables)。

**從 AWS SCT 專案中移除 FastExport 任務指令碼**

1. 在左側面板的**指令碼**下展開 **FastExport** 節點。

1. 選擇要移除的指令碼，然後開啟內容 （按一下滑鼠右鍵） 選單。

1. 選擇**刪除指令碼**。

## 使用 建立 Teradata FastExport 任務指令碼轉換的評估報告 AWS SCT
<a name="CHAP-converting-fastexport-rsql-assessment"></a>

*FastExport 任務指令碼轉換評估報告*提供有關將 FastExport 命令和 SQL 陳述式從 FastExport 指令碼轉換為與 Amazon Redshift RSQL 相容格式的資訊。評估報告包含 FastExport 命令的動作項目，以及 AWS SCT 無法轉換的 SQL 陳述式。

**為 Teradata FastExport 任務建立指令碼轉換評估報告**

1. 在左側面板的**指令碼**下展開 **FastExport** 節點。

1. 選擇要轉換的指令碼、開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**建立報告**。

1. 檢視**摘要**索引標籤。**摘要**索引標籤會顯示 FastExport 任務指令碼評估報告中的執行摘要資訊。它包含來自來源指令碼的所有 FastExport 命令和 SQL 陳述式的轉換結果。

1. 您可以將 FastExport 任務指令碼轉換評估報告的本機副本儲存為 PDF 檔案或逗號分隔值 (CSV) 檔案。

   1. 若要將 FastExport 任務指令碼轉換評估報告儲存為 PDF 檔案，請選擇右上角的**儲存為 PDF**。

       PDF 檔案包含執行摘要、動作項目和指令碼轉換的建議。

   1. 若要將 FastExport 任務指令碼轉換評估報告儲存為 CSV 檔案，請選擇右上角的**儲存為 CSV**。

      CSV 檔案包含動作項目、建議的動作，以及轉換指令碼所需的預估手動工作複雜度。

1. 選擇**動作項目**索引標籤。此標籤包含需要手動轉換為 Amazon Redshift RSQL 的項目清單。當您從清單中選取動作項目時， 會 AWS SCT 反白顯示來源 FastExport 任務指令碼中套用動作項目的項目。

## 使用 編輯和儲存轉換後的 Teradata FastExport 任務指令碼 AWS SCT
<a name="CHAP-converting-fastexport-rsql-save"></a>

您可以在 AWS SCT 專案的下方面板中編輯轉換後的指令碼。 會將已編輯的指令碼 AWS SCT 儲存為專案的一部分。

**儲存轉換後的指令碼**

1. 在目標資料庫面板的指令碼下展開 **RSQL** **指令碼**節點。

1. 選擇轉換後的指令碼，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**儲存指令碼**。

1. 輸入資料夾的路徑以儲存轉換後的指令碼，然後選擇**儲存**。

   AWS SCT 會將轉換後的指令碼儲存至檔案，並開啟此檔案。