AWS Glue


AWS Glue


このページでは、AWS Glue からCData Connect アカウントに接続する手順の概要を示します。

前提条件

接続する前にまず以下を実行します。

  • データソースをCData Connect アカウントに接続します。詳しくは、Connections を参照してください。 Settings ページでPersonal Access Token (PAT) を生成します。PAT をコピーし、認証時にパスワードとして使用します。

CData Connect への接続

AWS Glue からCData Connect へのコネクションを確立するには以下の手順に従います。

  1. AWS Glue にログインします。

  2. ナビゲーションペインで、ETL 配下の AWS Glue Studio を選択します。

  3. AWS Glue Studio ページでView Connectors をクリックします。

  4. Marketplace Connectors ボックスで、Go to AWS Marketplace をクリックします。

  5. Marketplace 検索バーでCData Connect を入力します。

  6. CData AWS Glue Connector for CData Connect を選択します。ブラウザの新しいタブでコネクタページが開きます。

  7. コネクタページの上の、Continue to Subscribe をクリックします。

  8. 次のページで、Continue to Configuration をクリックし、Continue to Launch をクリックします。

  9. Launch this software ページで、Usage Instructions をクリックします。Activate the connector with AWS Glue Studio をクリックします。

  10. Glue Studio がブラウザの新しいタブとして開きます。接続情報を以下のように設定します。

    • Name—接続名を任意で入力します。

    • Description—入力は任意ですが、接続の説明を入力することができます。

    • Connection credential typeconnect_cloud を選択します。

    • AWS Secret—不要です。

    • Username—CData Connect のユーザー名を入力します。ユーザー名は、CData Connect の画面の右上に表示されています。例:test@cdata.co.jp

    • PasswordSettings ページで生成したPAT を入力します。

    • defaultCatalog—接続したいCData Connect Cloud のConnection Name を入力します。例:Salesforce1

  11. ページの一番下のCreate connection and activate connector をクリックします。

これで、Glue Studio 上でConnections リスト上に本接続が表示されるようになります。

IAM ロールを作成する

AWS Glue のデータにアクセスするには、適切なアクセス許可を持つIAM ロールが必要です。AWS Glue でIAM ロールを作成していない場合は、IAM ロールを作成するAWS のガイドの手順に従ってください。

アクセス権限ポリシーを選択する際は、少なくとも以下のAWS マネージドポリシーを選択してください。

  • AmazonS3FullAccess
  • AmazonEC2ContainerRegistryReadOnly
  • AWSGlueServiceRole

AWS Secrets Manager を使用して機密性の高い接続情報を保存している場合は、次のようなインラインポリシーを作成および追加し、AWS Glue ジョブで必要となる特定のシークレットへのアクセスを許可します。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetResourcePolicy",
                "secretsmanager:GetSecretValue",
                "secretsmanager:DescribeSecret",
                "secretsmanager:ListSecretVersionIds"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-2:111222333:secret:CDataSecret-abcdef"
            ]
        }
    ]
}

AWS Glue でジョブを作成する際に、このロールを使用します。

AWS Glue で接続を使用する

CData Connect への接続を作成すると、その接続を使って、ジョブを作成することができます。以下のようにしてGlue のジョブを作成します:

  1. Connections リストから使用する接続を選択します。

  2. Create Job をクリックします。

  3. ビジュアルフローで、CData AWS Glue Connector for CData Connect を選択します。

  4. Data source properties - Connector タブで

    • 先に作成したコネクションを選択します。

    • Enter table name またはWrite a query のいずれかを選択します。

      • Enter table name を選択した場合、Table name フィールドに、アクセスしたいテーブルの完全修飾名をConnectionName.ConnectionType.TableName の形式で入力します。例えば、Salesforce1.Salesforce.Customers です。

      • Write a query を選択した場合、クエリを記述する際に、アクセスしたいテーブルの完全修飾名を使用します。

    • Job bookmark options を開きます。Enter key フィールドに、アクセスするテーブルの主キー名を入力します。または、Job details タブを開き、Job bookmarkDisable に設定することもできます。

  5. ビジュアルフローで、Job details を選択します。

  6. ジョブの名前を入力します。

  7. IAM Role フィールドで、先に作成したIAM ロールを入力します。

  8. ジョブを保存します。

これで、AWS Glue フローとしてジョブを実行することが可能になります。