

# AWS Glue Studio での Azure SQL に対する接続
<a name="connecting-to-data-azuresql"></a>

 AWS Glue は、Azure SQL のための組み込みサポートを提供します。AWS Glue Studio は、Azure SQL に接続してデータ統合ジョブをオーサリングし、AWS Glue Studio サーバーレス Spark ランタイム上でそれらのジョブを実行するためのビジュアルインターフェイスを提供します。

**Topics**
+ [Azure SQL 接続の作成](creating-azuresql-connection.md)
+ [Azure SQL ソースノードの作成](creating-azuresql-source-node.md)
+ [Azure SQL ターゲットノードの作成](creating-azuresql-target-node.md)
+ [詳細オプション](#creating-azuresql-connection-advanced-options)

# Azure SQL 接続の作成
<a name="creating-azuresql-connection"></a>

AWS Glue から Azure SQL に接続するには、Azure SQL 認証情報を作成して AWS Secrets Manager シークレットに保存し、そのシークレットを Azure SQL AWS Glue 接続に関連付ける必要があります。

**Azure SQL に対する接続を設定するには:**

1. AWS Secrets Manager で、Azure SQL 認証情報を使用してシークレットを作成します。Secrets Manager でシークレットを作成するには、AWS Secrets Manager ドキュメントの [AWS Secrets Manager シークレットを作成する](https://docs.aws.amazon.com//secretsmanager/latest/userguide/create_secret.html) にあるチュートリアルに従ってください。シークレットを作成したら、次のステップのためにシークレット名 *secretName* を保存しておきます。
   + **[key/value ペア]** を選択する際に、*azuresqlUsername* という値を持つキー `user` のペアを作成します。
   + **[key/value ペア]** を選択する際に、*azuresqlPassword* という値を持つキー `password` のペアを作成します。

1. AWS Glue コンソールで、「[AWS Glue 接続の追加](console-connections.md)」にあるステップに従って接続を作成します。接続を作成したら、将来的に AWS Glue で使用するために、接続名 *connectionName* を維持します。
   + **[接続タイプ]** を選択する際に、[Azure SQL] を選択します。
   + **Azure SQL URL** を指定する場合は、JDBC エンドポイント URL を入力します。

      URL は、次のような形式になります: `jdbc:sqlserver://databaseServerName:databasePort;databaseName=azuresqlDBname;`。

     AWS Glue には次の URL プロパティが必要です。
     + `databaseName` – 接続先の Azure SQL のデフォルトデータベース。

     Azure SQL Managed Instances の JDBC URL の詳細については、[Microsoft のドキュメント](https://learn.microsoft.com/en-us/sql/connect/jdbc/building-the-connection-url?view=azuresqldb-mi-current)を参照してください。
   + **[AWS Secret]** をクリックして、*secretName* を入力します。

# Azure SQL ソースノードの作成
<a name="creating-azuresql-source-node"></a>

## 必要な前提条件
<a name="creating-azuresql-source-node-prerequisites"></a>
+ 前のセクション [Azure SQL 接続の作成](creating-azuresql-connection.md) で説明したように、AWS Secrets Manager シークレットを使用して設定された AWS Glue Azure SQL 接続。
+ 接続で使用されるシークレットを読み取るためのジョブに対する適切なアクセス許可。
+ 読み取り元とする Azure SQL テーブル (*tableName*)。

  Azure SQL テーブルは、データベース、スキーマ、テーブル名によって識別されます。Azure SQL に接続する際には、データベース名とテーブル名を指定する必要があります。スキーマがデフォルトの「public」でない場合は、スキーマも指定する必要があります。データベースは、*connectionName* の URL プロパティ、`dbtable` を通じたスキーマおよびテーブル名を介して指定されます。

## Azure SQL データソースの追加
<a name="creating-azuresql-source-node-add"></a>

****[データソース — Azure SQL]** ノードを追加するには:**

1.  Azure SQL データソース用の接続を選択します。すでに作成したので、ドロップダウンに表示されているはずです。接続を作成する必要がある場合は、**[Azure SQL 接続を作成]** を選択します。詳細については、前の「[Azure SQL 接続の作成](creating-azuresql-connection.md)」セクションを参照してください。

    接続を選択したあとは、**[プロパティを表示]** をクリックすると、接続のプロパティを表示できます。

1.  **[Azure SQL ソース]** オプションを選択します。
   +  **[単一のテーブルを選択]** – 単一のテーブルからすべてのデータにアクセスします。
   +  **[カスタムクエリを入力]** — カスタムクエリに基づいて、複数のテーブルからデータセットにアクセスします。

1.  単一のテーブルを選択した場合は、*tableName* を入力します。

    **[カスタムクエリを入力]** を選択した場合は、TransactSQL SELECT クエリを入力します。

1.  **[Azure SQL のカスタムプロパティ]** で、必要に応じてパラメータと値を入力します。

# Azure SQL ターゲットノードの作成
<a name="creating-azuresql-target-node"></a>

## 必要な前提条件
<a name="creating-azuresql-target-node-prerequisites"></a>
+ 前のセクション [Azure SQL 接続の作成](creating-azuresql-connection.md) で説明したように、AWS Secrets Manager シークレットを使用して設定された AWS Glue Azure SQL 接続。
+ 接続で使用されるシークレットを読み取るためのジョブに対する適切なアクセス許可。
+ 書き込み先とする Azure SQL テーブル (*tableName*)。

  Azure SQL テーブルは、データベース、スキーマ、テーブル名によって識別されます。Azure SQL に接続する際には、データベース名とテーブル名を指定する必要があります。スキーマがデフォルトの「public」でない場合は、スキーマも指定する必要があります。データベースは、*connectionName* の URL プロパティ、`dbtable` を通じたスキーマおよびテーブル名を介して指定されます。

## Azure SQL データターゲットの追加
<a name="creating-azuresql-target-node-add"></a>

****[データターゲット — Azure SQL]** ノードを追加するには:**

1.  Azure SQL データソース用の接続を選択します。すでに作成したので、ドロップダウンに表示されているはずです。接続を作成する必要がある場合は、**[Azure SQL 接続を作成]** を選択します。詳細については、前の「[Azure SQL 接続の作成](creating-azuresql-connection.md)」セクションを参照してください。

    接続を選択したあとは、**[プロパティを表示]** をクリックすると、接続のプロパティを表示できます。

1. *tableName* を指定して **[テーブル名]** を設定します。

1.  **[Azure SQL のカスタムプロパティ]** で、必要に応じてパラメータと値を入力します。

## 詳細オプション
<a name="creating-azuresql-connection-advanced-options"></a>

Azure SQL ノードを作成する際に、高度なオプションを指定できます。これらのオプションは Spark AWS Glue スクリプトのプログラミング時に使用できるオプションと同じです。

「[Azure SQL 接続](aws-glue-programming-etl-connect-azuresql-home.md)」を参照してください。