Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

Amazon Redshift との Amazon ゼロ ETL 統合の作成 - Amazon Aurora

Amazon Redshift との Amazon ゼロ ETL 統合の作成

Aurora ゼロ ETL 統合を作成するには、ソース Aurora DB クラスターとターゲットの Amazon Redshift データウェアハウスを指定します。暗号化設定をカスタマイズし、タグを追加することもできます。Aurora はソース DB クラスターとそのターゲットの間の統合を作成します。統合がアクティブになると、ソース DB クラスターに挿入したデータはすべて、設定された Amazon Redshift ターゲットにレプリケートされます。

前提条件

ゼロ ETL 統合を作成する前に、ソースの DB クラスターとターゲットの Amazon Redshift データウェアハウスを作成する必要があります。また、DB クラスターを承認済みの統合ソースとして追加することによって、データウェアハウスへのレプリケーションを許可する必要があります。

これらの各手順の実行方法については、「Amazon Redshift との Aurora ゼロ ETL 統合の開始方法」を参照してください。

必要なアクセス許可

ゼロ ETL 統合を作成するには、特定の IAM アクセス権限が必要です。少なくとも、次のアクションを実行するためのアクセス権限が必要です。

  • ソースの Aurora DB クラスターのゼロ ETL 統合を作成します。

  • すべてのゼロ ETL 統合を表示および削除します。

  • ターゲットデータウェアハウスへのインバウンド統合を作成します。同じアカウントが Amazon Redshift データウェアハウスを所有していて、このアカウントがそのデータウェアハウスの承認済みプリンシパルである場合は、このアクセス許可が不要となります。承認済みプリンシパルの追加については、「Amazon Redshift データウェアハウスの承認の設定」を参照してください。

以下のサンプルポリシーは、インテグレーションの作成と管理に必要な最小特権を示しています。ユーザーまたはロールが AdministratorAccess マネージドポリシーなど、より広範なアクセス許可を持つ場合、これらの正確なアクセス許可を必要としない場合があります。

注記

Redshift Amazon リソースネーム (ARN) の形式は次のとおりです。サーバーレス名前空間 UUID の前にコロン (:) ではなくフォワードスラッシュ ((/) を使用していることに注意してください。

  • プロビジョニング済みクラスタ — arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid

  • サーバーレス - arn:aws:redshift-serverless:{region}:{account-id}:namespace/namespace-uuid

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "rds:CreateIntegration" ], "Resource": [ "arn:aws:rds:{region}:{account-id}:cluster:source-db", "arn:aws:rds:{region}:{account-id}:integration:*" ] }, { "Effect": "Allow", "Action": [ "rds:DescribeIntegrations" ], "Resource": ["*"] }, { "Effect": "Allow", "Action": [ "rds:DeleteIntegration", "rds:ModifyIntegration" ], "Resource": [ "arn:aws:rds:{region}:{account-id}:integration:*" ] }, { "Effect": "Allow", "Action": [ "redshift:CreateInboundIntegration" ], "Resource": [ "arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid" ] }] }

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "rds:CreateIntegration" ], "Resource": [ "arn:aws:rds:{region}:{account-id}:cluster:source-db", "arn:aws:rds:{region}:{account-id}:integration:*" ] }, { "Effect": "Allow", "Action": [ "rds:DescribeIntegrations" ], "Resource": ["*"] }, { "Effect": "Allow", "Action": [ "rds:DeleteIntegration", "rds:ModifyIntegration" ], "Resource": [ "arn:aws:rds:{region}:{account-id}:integration:*" ] }, { "Effect": "Allow", "Action": [ "redshift:CreateInboundIntegration" ], "Resource": [ "arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid" ] }] }

別のアカウントでターゲットデータウェアハウスを選択する

別の AWS アカウント にあるターゲット Amazon Redshift データウェアハウスを指定する場合は、現在のアカウントのユーザーがターゲットアカウントのリソースにアクセスするのを許可するロールを作成する必要があります。詳細については、「所有している別の AWS アカウント の IAM ユーザーにアクセス権を付与する」を参照してください。

ロールには以下のアクセス許可が必要です。これにより、ユーザーは使用可能な Amazon Redshift のプロビジョニング済みクラスターとターゲットアカウントの Redshift Serverless 名前空間を表示できます。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "redshift:DescribeClusters", "redshift-serverless:ListNamespaces" ], "Resource":[ "*" ] } ] }

ロールには、ターゲットアカウント ID を指定する次の信頼ポリシーが必要です。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS": "arn:aws:iam::{external-account-id}:root" }, "Action":"sts:AssumeRole" } ] }

ロールを作成する手順については、「カスタム信頼ポリシーを使用したロールの作成」を参照してください。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "redshift:DescribeClusters", "redshift-serverless:ListNamespaces" ], "Resource":[ "*" ] } ] }

ロールには、ターゲットアカウント ID を指定する次の信頼ポリシーが必要です。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS": "arn:aws:iam::{external-account-id}:root" }, "Action":"sts:AssumeRole" } ] }

ロールを作成する手順については、「カスタム信頼ポリシーを使用したロールの作成」を参照してください。

ゼロ ETL 統合の作成

AWS Management Console、AWS CLI、または RDS API を使用してゼロ ETL 統合を作成できます。

ゼロ ETL 統合を作成するには
  1. AWS Management Console にサインインし、Amazon RDS コンソール https://console.aws.amazon.com/rds/ を開きます。

  2. 左側のナビゲーションペインから、[ゼロ ETL 統合] を選択します。

  3. [ゼロ ETL 統合の作成] を選択します。

  4. [統合 ID] に、統合の名前を入力します。名前には最大 63 文字の英数字を使用でき、ハイフンを含めることができます。

  5. [次へ] を選択します。

  6. [ソース] で、データの送信元となる Aurora DB クラスターを選択します。

    注記

    DB クラスターパラメータが正しく設定されていないと、RDS から通知されます。このメッセージを受け取った場合は、[Fix it for me] を選択するか、手動で設定することができます。手動で修正する手順については、「ステップ 1: カスタム DB クラスターのパラメータグループを作成する」を参照してください。

    DB クラスターパラメータを変更するには再起動が必要です。統合を作成する前に、再起動が完了し、新しいパラメータ値ののクラスターへの適用が正常に完了している必要があります。

  7. (オプション) [データフィルタリングオプションのカスタマイズ] を選択して、統合にデータフィルターを追加します。データフィルターを使用して、ターゲットデータウェアハウスへのレプリケーションの範囲を定義できます。詳細については、「Amazon Redshift との Aurora ゼロ ETL 統合でのデータフィルタリング」を参照してください。

  8. ソース DB クラスターが正常に設定されたら、[次へ] を選択します。

  9. [ターゲット] で、以下を実行します。

    1. (オプション) Amazon Redshift  ターゲットとして別の AWS アカウント を使用するには、[別のアカウントを指定] を選択します。次に、データウェアハウスを表示するアクセス許可を持つ IAM ロールの ARN を入力します。IAM ロールの作成手順については、「別のアカウントでターゲットデータウェアハウスを選択する」を参照してください。

    2. [Amazon Redshift データウェアハウス] で、ソース DB クラスターからのレプリケートデータのターゲットを選択します。ターゲットとして、プロビジョニングされた Amazon Redshift クラスターまたは Redshift Serverless 名前空間を選択できます。

    注記

    指定したデータウェアハウスのリソースポリシーまたは大文字と小文字の区別の設定が正しく構成されていないと、RDS から通知されます。このメッセージを受け取った場合は、[Fix it for me] を選択するか、手動で設定することができます。手動で修正する手順については、「Amazon Redshift 管理ガイド」の「データウェアハウスの大文字と小文字の区別を有効にする」と「データウェアハウスの認可を設定する」を参照してください。

    プロビジョニングされた Redshift クラスターの大文字と小文字の区別を変更するには、再起動が必要です。インテグレーションを作成する前に、再起動を完了し、新しいパラメータ値をクラスターに正常に適用する必要があります。

    選択したソースとターゲットの AWS アカウント が異なる場合、Amazon RDS はこれらの設定を自動的に修正できません。他のアカウントに移動し、Amazon Redshift で手動で修正する必要があります。

  10. ターゲットデータウェアハウスを正しく設定したら、[次へ] を選択します。

  11. (オプション) [タグ] で、1 つ以上のタグを統合に追加します。詳細については、「Amazon Aurora および Amazon RDS リソースのタグ付け」を参照してください。

  12. [暗号化] として、統合の暗号化方法を指定します。デフォルトでは、RDS はすべての統合を AWS 所有のキー で暗号化します。代わりにカスタマーマネージドキーを選択するには、[暗号化設定のカスタマイズ] を有効にして、暗号化に使用する KMS キーを選択します。詳細については、「Amazon Aurora リソースの暗号化」を参照してください。

    オプションで、暗号化コンテキストを追加します。詳しくは、AWS Key Management Service デベロッパーガイドEncryption context を参照してください。

    注記

    Amazon RDS は、追加する以下に加えて、次の暗号化コンテキストペアを追加します。

    • aws:redshift:integration:arn - IntegrationArn

    • aws:servicename:id - Redshift

    これにより、追加できるペアの総数が 8 から 6 に減り、許可の制約の全体的な文字数制限に影響します。詳細については、「AWS Key Management Service デベロッパーガイド」の「Using grant constraints」を参照してください。

  13. [Next] を選択します。

  14. 統合設定を確認し、[ゼロ ETL 統合を作成] を選択します。

    作成に失敗した場合は、トラブルシューティングの手順について「ゼロ ETL 統合を作成できない」を参照してください。

統合のステータスは、作成中は Creating であり、ターゲットの Amazon Redshift データウェアハウスのステータスは Modifying です。この間、データウェアハウスをクエリしたり、設定を変更したりすることはできません。

統合が正常に作成されると、統合とターゲットの Amazon Redshift データウェアハウスの両方のステータスが Active に変わります。

RDS コンソール

ゼロ ETL 統合を作成するには
  1. AWS Management Console にサインインし、Amazon RDS コンソール https://console.aws.amazon.com/rds/ を開きます。

  2. 左側のナビゲーションペインから、[ゼロ ETL 統合] を選択します。

  3. [ゼロ ETL 統合の作成] を選択します。

  4. [統合 ID] に、統合の名前を入力します。名前には最大 63 文字の英数字を使用でき、ハイフンを含めることができます。

  5. [次へ] を選択します。

  6. [ソース] で、データの送信元となる Aurora DB クラスターを選択します。

    注記

    DB クラスターパラメータが正しく設定されていないと、RDS から通知されます。このメッセージを受け取った場合は、[Fix it for me] を選択するか、手動で設定することができます。手動で修正する手順については、「ステップ 1: カスタム DB クラスターのパラメータグループを作成する」を参照してください。

    DB クラスターパラメータを変更するには再起動が必要です。統合を作成する前に、再起動が完了し、新しいパラメータ値ののクラスターへの適用が正常に完了している必要があります。

  7. (オプション) [データフィルタリングオプションのカスタマイズ] を選択して、統合にデータフィルターを追加します。データフィルターを使用して、ターゲットデータウェアハウスへのレプリケーションの範囲を定義できます。詳細については、「Amazon Redshift との Aurora ゼロ ETL 統合でのデータフィルタリング」を参照してください。

  8. ソース DB クラスターが正常に設定されたら、[次へ] を選択します。

  9. [ターゲット] で、以下を実行します。

    1. (オプション) Amazon Redshift  ターゲットとして別の AWS アカウント を使用するには、[別のアカウントを指定] を選択します。次に、データウェアハウスを表示するアクセス許可を持つ IAM ロールの ARN を入力します。IAM ロールの作成手順については、「別のアカウントでターゲットデータウェアハウスを選択する」を参照してください。

    2. [Amazon Redshift データウェアハウス] で、ソース DB クラスターからのレプリケートデータのターゲットを選択します。ターゲットとして、プロビジョニングされた Amazon Redshift クラスターまたは Redshift Serverless 名前空間を選択できます。

    注記

    指定したデータウェアハウスのリソースポリシーまたは大文字と小文字の区別の設定が正しく構成されていないと、RDS から通知されます。このメッセージを受け取った場合は、[Fix it for me] を選択するか、手動で設定することができます。手動で修正する手順については、「Amazon Redshift 管理ガイド」の「データウェアハウスの大文字と小文字の区別を有効にする」と「データウェアハウスの認可を設定する」を参照してください。

    プロビジョニングされた Redshift クラスターの大文字と小文字の区別を変更するには、再起動が必要です。インテグレーションを作成する前に、再起動を完了し、新しいパラメータ値をクラスターに正常に適用する必要があります。

    選択したソースとターゲットの AWS アカウント が異なる場合、Amazon RDS はこれらの設定を自動的に修正できません。他のアカウントに移動し、Amazon Redshift で手動で修正する必要があります。

  10. ターゲットデータウェアハウスを正しく設定したら、[次へ] を選択します。

  11. (オプション) [タグ] で、1 つ以上のタグを統合に追加します。詳細については、「Amazon Aurora および Amazon RDS リソースのタグ付け」を参照してください。

  12. [暗号化] として、統合の暗号化方法を指定します。デフォルトでは、RDS はすべての統合を AWS 所有のキー で暗号化します。代わりにカスタマーマネージドキーを選択するには、[暗号化設定のカスタマイズ] を有効にして、暗号化に使用する KMS キーを選択します。詳細については、「Amazon Aurora リソースの暗号化」を参照してください。

    オプションで、暗号化コンテキストを追加します。詳しくは、AWS Key Management Service デベロッパーガイドEncryption context を参照してください。

    注記

    Amazon RDS は、追加する以下に加えて、次の暗号化コンテキストペアを追加します。

    • aws:redshift:integration:arn - IntegrationArn

    • aws:servicename:id - Redshift

    これにより、追加できるペアの総数が 8 から 6 に減り、許可の制約の全体的な文字数制限に影響します。詳細については、「AWS Key Management Service デベロッパーガイド」の「Using grant constraints」を参照してください。

  13. [Next] を選択します。

  14. 統合設定を確認し、[ゼロ ETL 統合を作成] を選択します。

    作成に失敗した場合は、トラブルシューティングの手順について「ゼロ ETL 統合を作成できない」を参照してください。

統合のステータスは、作成中は Creating であり、ターゲットの Amazon Redshift データウェアハウスのステータスは Modifying です。この間、データウェアハウスをクエリしたり、設定を変更したりすることはできません。

統合が正常に作成されると、統合とターゲットの Amazon Redshift データウェアハウスの両方のステータスが Active に変わります。

AWS CLI を使用してゼロ ETL 統合を作成するには、create-integration コマンドに以下のオプションを指定して使用します。

  • --integration-name — 統合の名前を指定します。

  • --source-arn — 統合のソースとなる Aurora DB クラスターの ARN を指定します。

  • --target-arn — 統合のターゲットとなる Amazon Redshift データウェアハウスの ARN を指定します。

Linux、macOS、Unix の場合:

aws rds create-integration \ --integration-name my-integration \ --source-arn arn:aws:rds:{region}:{account-id}:my-db \ --target-arn arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid

Windows の場合:

aws rds create-integration ^ --integration-name my-integration ^ --source-arn arn:aws:rds:{region}:{account-id}:my-db ^ --target-arn arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid

AWS CLI を使用してゼロ ETL 統合を作成するには、create-integration コマンドに以下のオプションを指定して使用します。

  • --integration-name — 統合の名前を指定します。

  • --source-arn — 統合のソースとなる Aurora DB クラスターの ARN を指定します。

  • --target-arn — 統合のターゲットとなる Amazon Redshift データウェアハウスの ARN を指定します。

Linux、macOS、Unix の場合:

aws rds create-integration \ --integration-name my-integration \ --source-arn arn:aws:rds:{region}:{account-id}:my-db \ --target-arn arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid

Windows の場合:

aws rds create-integration ^ --integration-name my-integration ^ --source-arn arn:aws:rds:{region}:{account-id}:my-db ^ --target-arn arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid

Amazon RDS API を使用してゼロ ETL 統合を作成するには、以下のパラメータを指定して CreateIntegration オペレーションを使用します。

  • IntegrationName — 統合の名前を指定します。

  • SourceArn — 統合のソースとなる Aurora DB クラスターの ARN を指定します。

  • TargetArn — 統合のターゲットとなる Amazon Redshift データウェアハウスの ARN を指定します。

Amazon RDS API を使用してゼロ ETL 統合を作成するには、以下のパラメータを指定して CreateIntegration オペレーションを使用します。

  • IntegrationName — 統合の名前を指定します。

  • SourceArn — 統合のソースとなる Aurora DB クラスターの ARN を指定します。

  • TargetArn — 統合のターゲットとなる Amazon Redshift データウェアハウスの ARN を指定します。

カスタマーマネージドキーでの統合の暗号化

統合の作成時に AWS 所有のキー ではなくカスタム KMS キーを指定する場合、キーポリシーは Amazon Redshift サービスプリンシパルに CreateGrant アクションへのアクセスを提供する必要があります。さらに、現在のユーザーに DescribeKey アクションと CreateGrant アクションの実行を許可する必要があります。

次のポリシー例は、キーポリシーに必要なアクセス許可を指定する方法を示しています。アクセス許可の範囲をさらに狭めるためのコンテキストキーが含まれています。

{ "Version": "2012-10-17", "Id": "Key policy", "Statement": [ { "Sid": "Enables IAM user permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{account-ID}:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allows the Redshift service principal to add a grant to a KMS key", "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:{context-key}":"{context-value}" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Decrypt", "GenerateDataKey", "CreateGrant" ] } } }, { "Sid": "Allows the current user or role to add a grant to a KMS key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{account-ID}:role/{role-name}" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:{context-key}":"{context-value}", "kms:ViaService": "rds.us-east-1.amazonaws.com" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Decrypt", "GenerateDataKey", "CreateGrant" ] } } }, { "Sid": "Allows the current uer or role to retrieve information about a KMS key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{account-ID}:role/{role-name}" }, "Action": "kms:DescribeKey", "Resource": "*" } ] }

{ "Version": "2012-10-17", "Id": "Key policy", "Statement": [ { "Sid": "Enables IAM user permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{account-ID}:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allows the Redshift service principal to add a grant to a KMS key", "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:{context-key}":"{context-value}" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Decrypt", "GenerateDataKey", "CreateGrant" ] } } }, { "Sid": "Allows the current user or role to add a grant to a KMS key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{account-ID}:role/{role-name}" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:{context-key}":"{context-value}", "kms:ViaService": "rds.us-east-1.amazonaws.com" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Decrypt", "GenerateDataKey", "CreateGrant" ] } } }, { "Sid": "Allows the current uer or role to retrieve information about a KMS key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{account-ID}:role/{role-name}" }, "Action": "kms:DescribeKey", "Resource": "*" } ] }

詳細については、「AWS Key Management Service デベロッパーガイド」の「キーポリシーの作成」を参照してください。

次のステップ

ゼロ ETL 統合を正常に作成した後、ターゲット Amazon Redshift クラスターまたはワークグループ内にデスティネーションデータベースを作成する必要があります。これで、ソースの Aurora DB クラスターにデータを追加し、Amazon Redshift でクエリを実行できるようになります。手順については、「Amazon Redshift でのデスティネーションデータベースの作成」を参照してください。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.