

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

# AWS Glue Studio 使用 將 SSIS pacakge 轉換為 AWS Schema Conversion Tool
<a name="CHAP-converting-ssis-glue-studio"></a>

您可以使用 AWS SCT 將 Microsoft SQL Server Integration Services (SSIS) 套件轉換為 AWS Glue Studio。

*SSIS 套件*包含必要的元件，例如連線管理員、任務、控制流程、資料流程、參數、事件處理常式和變數，以執行特定的擷取、轉換和載入 (ETL) 任務。 AWS SCT 會將 SSIS 套件轉換為相容的格式 AWS Glue Studio。將來源資料庫遷移至 後 AWS 雲端，您可以執行這些轉換後 AWS Glue Studio 的任務來執行 ETL 任務。

若要將 Microsoft SSIS 套件轉換為 AWS Glue Studio，請確定您使用 1 AWS SCT .0.661 版或更新版本。

**Topics**
+ [先決條件](#CHAP-converting-ssis-glue-studio-prerequisites)
+ [將 SSIS 套件新增至您的 AWS SCT 專案](#CHAP-converting-ssis-glue-studio-create)
+ [AWS Glue Studio 使用 將 SSIS 套件轉換為 AWS SCT](#CHAP-converting-ssis-glue-studio-convert)
+ [使用轉換後的程式碼建立 AWS Glue Studio 任務](#CHAP-converting-ssis-glue-studio-jobs)
+ [使用 為 SSIS 套件建立評估報告 AWS SCT](#CHAP-converting-ssis-glue-studio-assessment)
+ [AWS SCT 可轉換為 的 SSIS 元件 AWS Glue Studio](#CHAP-converting-ssis-glue-studio-supported-components)

## 先決條件
<a name="CHAP-converting-ssis-glue-studio-prerequisites"></a>

在本節中，了解將 SSIS 套件轉換為 的先決條件任務 AWS Glue。這些任務包括在您的帳戶中建立必要的 AWS 資源。

您可以使用 AWS Identity and Access Management (IAM) 來定義存取 AWS Glue Studio 使用之資源所需的政策和角色。如需詳細資訊，請參閱 [AWS Glue Studio 使用者的 IAM 許可](https://docs.aws.amazon.com/glue/latest/ug/setting-up.html#getting-started-min-privs)。

將來源指令碼 AWS SCT 轉換為 後 AWS Glue Studio，將轉換後的指令碼上傳至 Amazon S3 儲存貯體。請確定您建立此 Amazon S3 儲存貯體，並在服務設定檔設定中選取 AWS 它。如需建立 S3 儲存貯體的詳細資訊，請參閱《*Amazon Simple Storage Service 使用者指南*》中的[建立您的第一個 S3 儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html)。

為了確保 AWS Glue Studio 可以連線至您的資料存放區，請建立自訂連接器和連線。此外，請將資料庫登入資料存放在其中 AWS Secrets Manager。

**建立自訂連接器**

1. 為您的資料存放區下載 JDBC 驅動程式。如需 AWS SCT 使用之 JDBC 驅動程式的詳細資訊，請參閱 [安裝 的 JDBC 驅動程式 AWS Schema Conversion Tool](CHAP_Installing.JDBCDrivers.md)。

1. 將此驅動程式檔案上傳至您的 Amazon S3 儲存貯體。如需詳細資訊，請參閱《*Amazon Simple Storage Service 使用者指南*》中的將[物件上傳至您的儲存貯](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-an-object-bucket.html)體。

1. 登入 AWS 管理主控台 並在 https：//[https://console.aws.amazon.com/gluestudio/](https://console.aws.amazon.com/gluestudio/) 開啟 AWS Glue Studio 主控台。

1. 選擇**連接器**，然後選擇**建立自訂連接器**。

1. 針對 **Connector S3 URL**，選擇**瀏覽 S3**，然後選擇您上傳至 Amazon S3 儲存貯體的 JDBC 驅動程式檔案。

1. 輸入連接器的描述性**名稱**。例如，​輸入 **SQLServer**。

1. 針對**連接器類型**，選擇 **JDBC**。

1. 針對**類別名稱**，輸入 JDBC 驅動程式的主類別名稱。針對 SQL Server，輸入 **com.microsoft.sqlserver.jdbc.SQLServerDriver**。

1. 對於 **JDBC URL 基礎**，輸入 JDBC 基礎 URL。JDBC 基礎 URL 的語法取決於您的來源資料庫引擎。針對 SQL Server，請使用下列格式：**jdbc:sqlserver://\$1*<host>*:\$1*<port>*;databaseName=\$1*<dbname>*;user=\$1*<username>*;password=\$1*<password>***。

   請務必將 *<host>*、*<port>*、*<dbname>*、*<username>* 和 *<password>* 取代為您的值。

1. 針對 **URL 參數分隔符號**，輸入分號 (`;`)。

1. 選擇 **Create connector (建立連接器)**。

**在 中存放資料庫登入資料 AWS Secrets Manager**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/) 開啟 AWS Secrets Manager 主控台。

1. 選擇**儲存新機密**。

1. 在 **Choose secret type** (選擇秘密類型) 頁面上，執行下列動作：

   1. 針對**秘密類型**，選擇**其他類型的秘密**。

   1. 對於**鍵/值對**，輸入下列鍵：**host**、**port**、**username**、 **dbname**和 **password**。

      接著，輸入這些索引鍵的值。

1. 在**設定機密**頁面上，輸入描述性的**機密名稱**。例如，​輸入 **SQL\$1Server\$1secret**。

1. 選擇**下一步**。然後，在**設定輪換**頁面上，再次選擇**下一步**。

1. 在 **Review** (檢閱) 頁面上，檢閱機密詳細資訊，然後選擇 **Store** (儲存)。

**為您的連接器建立連線**

1. 登入 AWS 管理主控台 並在 https：//[https://console.aws.amazon.com/gluestudio/](https://console.aws.amazon.com/gluestudio/) 開啟 AWS Glue Studio 主控台。

1. 選擇您要為其建立連線的連接器，然後選擇**建立連線**。

1. 在**建立連線**頁面上，輸入連線的描述性**名稱**。例如，​輸入 **SQL-Server-connection**。

1. 針對**AWS 秘密**，選擇您在其中建立的秘密 AWS Secrets Manager。

1. 設定**網路選項**，然後選擇**建立連線**。

現在，您可以使用自訂連接器建立 AWS Glue Studio 任務。如需詳細資訊，請參閱[建立 AWS Glue Studio 任務](#CHAP-converting-ssis-glue-studio-jobs)。

## 將 SSIS 套件新增至您的 AWS SCT 專案
<a name="CHAP-converting-ssis-glue-studio-create"></a>

您可以將多個 SSIS 套件新增至單一 AWS SCT 專案。

**將 SSIS 套件新增至您的 AWS SCT 專案**

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

1. 從功能表中選擇**新增來源**，然後選擇 **SQL Server 整合服務**。

1. 針對**連線名稱**，輸入 SSIS 套件的名稱。 AWS SCT 會在左側面板的樹狀目錄中顯示此名稱。

1. 對於 **SSIS 套件資料夾**，使用來源 SSIS 套件輸入資料夾的路徑。

1. 從功能表中選擇**新增目標**，然後選擇 **AWS Glue Studio**。

   若要連線至 AWS Glue Studio， AWS SCT 請使用您的 AWS 設定檔。如需詳細資訊，請參閱[在 中管理設定檔 AWS Schema Conversion Tool](CHAP_UserInterface.Profiles.md)。

1. 建立映射規則，其中包含您的來源 SSIS 套件和 AWS Glue Studio 目標。如需詳細資訊，請參閱[中的映射資料類型 AWS Schema Conversion Tool](CHAP_Mapping.md)。

1. 在 AWS Glue Studio 主控台中建立 AWS Glue Studio 連線。如需詳細資訊，請參閱[建立連接器的連線](https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html#creating-connections)。

1. 在左側樹狀目錄中選擇**連線管理員**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**設定連線**。

   AWS SCT 會顯示**設定連線**視窗。

1. 針對每個來源 SSIS 連線，選擇 AWS Glue Studio 連線。

## AWS Glue Studio 使用 將 SSIS 套件轉換為 AWS SCT
<a name="CHAP-converting-ssis-glue-studio-convert"></a>

接下來，了解如何將 SSIS 套件轉換為 AWS Glue Studio 使用 AWS SCT。

**將 SSIS 套件轉換為 AWS Glue Studio**

1. 將 SSIS 套件新增至您的 AWS SCT 專案。如需詳細資訊，請參閱[將 SSIS 套件新增至您的 AWS SCT 專案](#CHAP-converting-ssis-glue-studio-create)。

1. 在左側面板中，展開 **ETL** 和 **SSIS** 節點。

1. 選擇**套件**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**轉換套件**。

   AWS SCT 會將您選取的 SSIS 套件轉換為 JSON 檔案。這些 JSON 物件代表定向無環圖形 (DAG) 中的節點。在右樹狀結構的**套件 DAGs**節點中尋找轉換後的檔案。

1. 選擇**套件 DAGs**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**儲存至 Amazon S3**。

   現在，您可以使用這些指令碼在 中建立任務 AWS Glue Studio。

## 使用轉換後的程式碼建立 AWS Glue Studio 任務
<a name="CHAP-converting-ssis-glue-studio-jobs"></a>

轉換來源 SSIS 套件之後，您可以使用轉換後的 JSON 檔案來建立 AWS Glue Studio 任務。

**建立 AWS Glue Studio 任務**

1. 在右樹狀目錄中選擇**套件 DAGs**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**設定 AWS Glue Studio 任務**。

1. （選用） 套用模擬 SSIS 函數的延伸套件 AWS Glue Studio。

1. **設定 AWS Glue Studio 任務**視窗隨即開啟。

   完成**基本任務屬性**區段：
   + **名稱** – 輸入 AWS Glue Studio 任務的名稱。
   + **指令碼檔案名稱** – 輸入任務指令碼的名稱。
   + **任務參數** – 新增參數並輸入其值。

   選擇**下一步**。

1. 完成**進階任務屬性**區段：
   + **IAM 角色** – 選擇用於授權 AWS Glue Studio 和存取資料存放區的 IAM 角色。
   + **指令碼檔案 S3 路徑** – 輸入轉換指令碼的 Amazon S3 路徑。
   + **暫時目錄** – 為中繼結果輸入暫時目錄的 Amazon S3 路徑。 AWS Glue Studio 使用此目錄讀取或寫入 Amazon Redshift。
   + AWS SCT 會自動產生 Python 程式庫的路徑。您可以在**產生的 python 程式庫路徑中檢閱此路徑**。您無法編輯此自動產生的路徑。若要使用其他 Python 程式庫，請在**使用者 Python 程式庫路徑中輸入路徑**。
   + **使用者 Python 程式庫路徑** – 輸入其他使用者 Python 程式庫的路徑。以逗號分隔 Amazon S3 路徑。
   + **相依 jar 路徑** – 輸入相依`*.jar`檔案的路徑。以逗號分隔 Amazon S3 路徑。
   + **參考檔案路徑** – 輸入指令碼所需的其他檔案路徑，例如組態檔案。以逗號分隔 Amazon S3 路徑。
   + **工作者類型** – 選擇 `G.1X`或 `G.2X`。

     當您選擇`G.1X`每個工作者映射到 1 個 DPU (4 個 vCPU、16 GB 記憶體和 64 GB 磁碟） 時。

     當您選擇`G.2X`每個工作者映射到 2 個 DPU (8 個 vCPU、32 GB 記憶體和 128 GB 磁碟） 時。
   + **請求的工作者數量** – 輸入任務執行時配置的工作者數量。
   + **並行上限** – 輸入此任務允許的並行執行數目上限。預設值為 1。達到此閾值時 AWS Glue 傳回錯誤。
   + **任務逾時 （分鐘）** – 輸入 ETL 任務的逾時值，以防止失控任務。批次任務的預設值為 2，880 分鐘 (48 小時）。如果任務超過此限制，任務執行狀態會變更為 `TIMEOUT`。
   + **延遲通知閾值 （分鐘）** – 在 AWS SCT 傳送延遲通知之前，以分鐘為單位輸入閾值。
   + **重試次數** – 輸入如果任務失敗， AWS Glue 應自動重新啟動任務的次數 (0–10)。達到逾時限制的任務不會重新啟動。預設值為 0。

   選擇**完成**。

   AWS SCT 會設定您選取的 AWS Glue Studio 任務。

1. 在右樹狀結構的 **ETL** 任務下尋找您設定的任務。選擇您設定的任務，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**建立 AWS Glue Studio 任務**。

1. 選擇**套用狀態**，並確保任務**的狀態**值為**成功**。

1. 開啟 AWS Glue Studio 主控台，選擇**重新整理**，然後選擇您的任務。接著選擇**執行**。

## 使用 為 SSIS 套件建立評估報告 AWS SCT
<a name="CHAP-converting-ssis-glue-studio-assessment"></a>

*ETL 遷移評估報告*提供有關將 SSIS 套件轉換為相容格式的資訊 AWS Glue Studio。評估報告包含 SSIS 套件元件的動作項目。這些動作項目會顯示哪些元件 AWS SCT 無法自動轉換。

**建立 ETL 遷移評估報告**

1. 在左側面板的 **ETL** 下展開 **SSIS** 節點。

1. 選擇**套件**，開啟內容 （按一下滑鼠右鍵） 選單，然後選擇**建立報告**。

1. 檢視**摘要**索引標籤。在這裡， AWS SCT 顯示 ETL 遷移評估報告中的執行摘要資訊。它包含 SSIS 套件所有元件的轉換結果。

1. （選用） 將 ETL 遷移評估報告的本機副本儲存為 PDF 檔案或逗號分隔值 (CSV) 檔案：
   + 若要將 ETL 遷移評估報告儲存為 PDF 檔案，請選擇右上角的**儲存為 PDF**。

      PDF 檔案包含執行摘要、動作項目和指令碼轉換的建議。
   + 若要將 ETL 遷移評估報告儲存為 CSV 檔案，請選擇右上角的**儲存至 CSV**。

     AWS SCT 會建立三個 CSV 檔案。這些檔案包含動作項目、建議的動作，以及轉換指令碼所需的預估手動工作複雜度。

1. 選擇**動作項目**索引標籤。此索引標籤包含需要手動轉換的項目清單 AWS Glue Studio。當您從清單中選擇動作項目時， 會 AWS SCT 反白顯示動作項目套用的來源 SSIS 套件中的項目。

## AWS SCT 可轉換為 的 SSIS 元件 AWS Glue Studio
<a name="CHAP-converting-ssis-glue-studio-supported-components"></a>

您可以使用 AWS SCT 將 SSIS 資料流程元件和參數轉換為 AWS Glue Studio。

支援的資料流程元件包括下列項目：
+ ADO NET 目的地
+ ADO NET 來源
+ Aggregate
+ 角色映射
+ 條件式分割
+ 複製資料欄
+ 資料轉換
+ 衍生資料欄
+ 查詢
+ Merge
+ 合併聯結
+ 多點傳送
+ ODBCDestination
+ ODBCSource
+ OLEDBDestination
+ OLEDBSource
+ 資料列計數
+ Sort
+ SQL Server 目的地
+ 全部聯集

AWS SCT 可以將更多 SSIS 元件轉換為 AWS Glue。如需詳細資訊，請參閱[AWS SCT 可轉換為 的 SSIS 元件 AWS Glue](CHAP-converting-aws-glue-ssis.md#CHAP-converting-aws-glue-ssis-supported-components)。