Amazon Redshift コネクタ構成ガイド
この記事では、Amazon Redshift コネクタの構成方法について説明します。
構成
コネクタマーケットプレイスにアクセスし、新しいコネクタを追加します。コネクタを追加する一般的な手順については、コネクタについてを参照してください。
コネクタを追加した後、以下の構成を構成します:
- 認証タイプ
- 認証タイプを選択します:
- STS:次のフィールドが必要です Assume Role: ARN、Assume Role: Session Name。詳細については、STS 資格情報を参照してください。
- アクセスキー:次のフィールドが必要です AWS Access Key と AWS Secret Access Key。詳細については、アクセスキーとシークレット資格情報を参照してください。
 
 
- 認証タイプを選択します:
- STS - Assume Role: ARN
- STS認証に必要です。アサムするロールのAmazonリソースネーム(ARN)を提供してください。
- 例:arn:aws:iam:222222222222:role/myrole。
- 詳細については、AWS: IAMロールへの切り替えを参照してください。
 
- STS - Assume Role: Session Name
- STS認証に必要です。アサムするロールのセッション名を提供してください。
- 最小長2、最大長64。
 
- STS - Assume Role: External ID
- 第三者の外部識別子を提供してください。
- 詳細については、AWS: 第三者が所有するAWSアカウントへのアクセスを参照してください。
 
- アクセスキー - AWS Access Key
- アクセスキー認証に必要です。AWSアクセスキーを提供してください。
 
- アクセスキー - AWS Secret Access Key
- アクセスキー認証に必要です。AWSシークレットアクセスキーを提供してください。
 
- リージョン
- (必須)リージョンを選択してください。
 
- シークレット名
- (オプション)AWSシークレットマネージャーを使用してRedshiftにアクセスする場合、TealiumがRedshift接続に使用するシークレットARNを動的に引き出すためのシークレット名を提供してください。
 
- ワークグループ名
- クラスター識別子が提供されていない場合に必要です。Redshift SERVERLESSインスタンスにアクセスする場合は、ワークグループ名を提供してください。
 
- クラスター識別子
- ワークグループ名が提供されていない場合に必要です。Redshiftクラスターを使用している場合は、クラスター識別子を提供してください。
 
- データベース名
- (オプション)データベース名を提供してください。デフォルト値:dev。
 
- (オプション)データベース名を提供してください。デフォルト値:
AWS Redshiftへの接続を作成する
Tealiumは、クラスター、ワークスペース、データベースのリストを表示し、イベントデータとオーディエンスデータをRedshiftテーブルにアップロードするために、AWS Redshiftインスタンスへの接続を必要とします。認証には2つのオプションがあります:
アクセスキーとシークレット資格情報
AWSアクセスキーとシークレットを見つけるには:
- AWS管理コンソールにログインし、IAM(Identity and Access Management)サービスに移動します。
- ユーザーをクリックし、次にユーザーを追加をクリックします。
- ユーザー名を入力します。例:TealiumRedshiftUser。
- ロールにポリシーをアタッチします。詳細については、ポリシーのアタッチを参照してください。
- キーを作成します。
- セキュリティ認証情報タブに移動し、アクセスキーの作成をクリックします。
- アクセスキーIDとシークレットアクセスキーをコピーし、安全に保存します。
 
STS資格情報
STS資格情報を見つけるには:
- AWS管理コンソールにログインし、IAM(Identity and Access Management)サービスに移動します。
- ロールをクリックし、次にロールの作成をクリックします。
- 信頼されたエンティティタイプの下で、AWSアカウントを選択します。
- 別のAWSアカウントを選択し、TealiumアカウントID:757913464184を入力します。
- (オプション)外部IDが必要チェックボックスを選択し、使用したい外部IDを指定します。外部IDは最大256文字の長さで、英数字(A-Z,a-z,0-9)およびハイフン(-)、アンダースコア(_)、ピリオド(.)などの記号を含むことができます。
- ロールの名前を入力します。ロール名はTealiumRedshiftで始まる必要があります。例:TealiumRedshift-test。
- ロールにポリシーをアタッチします。詳細については、ポリシーのアタッチを参照してください。
- 信頼ポリシーを作成します。
- 信頼関係タブに移動し、信頼関係の編集をクリックします。
- 作成したロールを使用するために特定の外部IDを許可する信頼ポリシーがあることを確認し、Tealiumの本番アカウントIDが757913464184であることを確認します。
- Tealiumへの接続のためのEXTERNAL_ID値を構成します。IDは最大256文字の長さで、英数字(A-Z,a-z,0-9)およびハイフン(-)、アンダースコア(_)、ピリオド(.)などの記号を含むことができます。
 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::757913464184:root" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "EXTERNAL_ID" } } } ] }
ポリシーのアタッチ
ポリシーをアタッチするには:
- 権限タブで既存のポリシーを直接アタッチをクリックします。
- 
フルアクセス - SecretsManagerReadWrite、- AmazonRedshiftAllCommandsFullAccess、- AmazonRedshiftDataFullAccessポリシーを検索してアタッチし、フルアクセスを構成します。
 
- 
制限されたアクセス - 特定のクラスターへのアクセスを制限するには、以下の例のようなポリシーを作成します。例では、YOUR_CLUSTER_ARNが Tealium がイベントおよびオーディエンスデータをYOUR_DATABASE_ARNRedshift テーブルに挿入するために使用するクラスターです:
 { "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftClusterManagement", "Effect": "Allow", "Action": [ "redshift:DescribeClusters", "redshift:GetClusterCredentials", "redshift:GetClusterCredentialsWithIAM" ], "Resource": "arn:aws:redshift:YOUR_REGION:YOUR_ACCOUNT_ID:cluster/YOUR_CLUSTER_ARN" }, { "Sid": "RedshiftDataAPI", "Effect": "Allow", "Action": [ "redshift-data:ExecuteStatement", "redshift-data:BatchExecuteStatement", "redshift-data:DescribeStatement", "redshift-data:GetStatementResult", "redshift-data:ListStatements" ], "Resource": "arn:aws:redshift:YOUR_REGION:YOUR_ACCOUNT_ID:database/YOUR_DATABASE_ARN" }, { "Sid": "SecretsManagerAccess", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecrets" ], "Resource": "arn:aws:secretsmanager:YOUR_REGION:YOUR_ACCOUNT_ID:secret/YOUR_SECRET_ARN" } ] }- 特定のワークグループへのアクセスを制限するには、以下の例のようなポリシーを作成します。例では、YOUR_WORKGROUP_ARNが Tealium がイベントおよびオーディエンスデータをYOUR_DATABASE_ARNRedshift テーブルに挿入するために使用するクラスターです:
 { "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftServerlessAccess", "Effect": "Allow", "Action": [ "redshift-serverless:GetWorkgroup", "redshift-serverless:GetCredentials", "redshift-serverless:ListWorkgroups" ], "Resource": "arn:aws:redshift-serverless:YOUR_REGION:YOUR_ACCOUNT_ID:workgroup/YOUR_WORKGROUP_ARN" }, { "Sid": "RedshiftDataAPI", "Effect": "Allow", "Action": [ "redshift-data:ExecuteStatement", "redshift-data:BatchExecuteStatement", "redshift-data:DescribeStatement", "redshift-data:GetStatementResult", "redshift-data:ListStatements" ], "Resource": "arn:aws:redshift:YOUR_REGION:YOUR_ACCOUNT_ID:database/YOUR_DATABASE_ARN" }, { "Sid": "SecretsManagerAccess", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecrets" ], "Resource": "arn:aws:secretsmanager:YOUR_REGION:YOUR_ACCOUNT_ID:secret/YOUR_SECRET_ARN" } ] }
- 特定のクラスターへのアクセスを制限するには、以下の例のようなポリシーを作成します。例では、
 
- 
アクション
| アクション名 | AudienceStream | EventStream | 
|---|---|---|
| 全イベントデータ送信(マイクロバッチ) | ✗ | ✓ | 
| 全イベントデータ送信(バッチ) | ✗ | ✓ | 
| カスタムイベントデータ送信(マイクロバッチ) | ✗ | ✓ | 
| カスタムイベントデータ送信(バッチ) | ✗ | ✓ | 
| 全訪問データ送信(マイクロバッチ) | ✓ | ✗ | 
| 全訪問データ送信(バッチ) | ✓ | ✗ | 
| 全イベントデータ送信(マイクロバッチ) | ✓ | ✗ | 
| 全イベントデータ送信(マイクロバッチ) | ✓ | ✗ | 
| カスタムステートメント実行(バッチ) | ✓ | ✓ | 
アクションの名前を入力し、ドロップダウンメニューからアクションタイプを選択します。
次のセクションでは、各アクションのパラメータとオプションの構成方法について説明します。
全イベントデータ送信(マイクロバッチ)
バッチ制限
このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、Batched Actionsを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:50
- 最古のリクエストからの最大時間:16分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続したいスキーマ名を提供します。 | 
| テーブル | 接続したいテーブル名を提供します。 | 
| ペイロードを記録するカラム | ペイロードを記録するために SUPERカラムを選択します。 | 
| タイムスタンプを記録するカラム | タイムスタンプを記録するカラムを選択します。テーブルに timestamp カラムが default sysdate に構成されている場合は不要です。 | 
| 属性名の印刷 | デフォルトでは、属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にします。属性名が更新されるとペイロード名も反映されることに注意してください。 | 
| バッチの有効期限 | バッチを送信するまでの待ち時間です。この値は 1から16分の間である必要があります。デフォルト値は5分です。 | 
全イベントデータ送信(バッチ)
バッチ制限
このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、Batched Actionsを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:2,000
- 最古のリクエストからの最大時間:60分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続したいスキーマ名を提供します。 | 
| テーブル | 接続したいテーブル名を提供します。 | 
| ペイロードを記録するカラム | ペイロードを記録するために SUPERカラムを選択します。 | 
| タイムスタンプを記録するカラム | タイムスタンプを記録するカラムを選択します。テーブルに timestamp カラムが default sysdate に構成されている場合は不要です。 | 
| 属性名の印刷 | デフォルトでは、属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にします。属性名が更新されるとペイロード名も反映されることに注意してください。 | 
| バッチの有効期限 | バッチを送信するまでの待ち時間です。この値は 15から60分の間である必要があります。デフォルト値は30分です。 | 
カスタムイベントデータ送信(マイクロバッチ)
バッチ制限
このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、Batched Actionsを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:50
- 最古のリクエストからの最大時間:16分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続したいスキーマ名を提供します。 | 
| テーブル | 接続したいテーブル名を提供します。 | 
カスタムパラメータ
| パラメータ | 説明 | 
|---|---|
| バッチの有効期限 | バッチを送信するまでの待ち時間です。この値は 1から16分の間である必要があります。デフォルト値は5分です。 | 
カスタムイベントデータ送信(バッチ)
バッチ制限
このアクションは、ベンダーへの大量データ転送をサポートするためにバッチリクエストを使用します。詳細については、Batched Actionsを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:2,000
- 最古のリクエストからの最大時間:60分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続するスキーマ名を指定してください。 | 
| テーブル | 接続するテーブル名を指定してください。 | 
カスタムパラメータ
| パラメータ | 説明 | 
|---|---|
| バッチ有効時間 | バッチを送信するまでの待機時間です。この値は 15分から60分の間である必要があります。デフォルト値は30分です。 | 
全訪問データの送信(マイクロバッチ)
バッチ制限
このアクションは、バッチリクエストを使用してベンダーへの大量データ転送をサポートします。詳細については、バッチアクションを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:50
- 最古のリクエストからの最大時間:16分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続するスキーマ名を指定してください。 | 
| テーブル | 接続するテーブル名を指定してください。 | 
| ペイロードを記録する列 | ペイロードを記録するために SUPER列を選択してください。 | 
| タイムスタンプを記録する列 | タイムスタンプを記録する列を選択してください。テーブルに timestamp 列が default sysdate に構成されている場合は不要です。 | 
| 全訪問イベントを含む | 現在の訪問データを訪問データに含めます。 | 
| 属性名を印刷 | デフォルトでは属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にしてください。属性名が更新された場合、ペイロード名が更新を反映することに注意してください。 | 
| バッチ有効時間 | バッチを送信するまでの待機時間です。この値は 1分から16分の間である必要があります。デフォルト値は5分です。 | 
全訪問データの送信(バッチ)
バッチ制限
このアクションは、バッチリクエストを使用してベンダーへの大量データ転送をサポートします。詳細については、バッチアクションを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:2,000
- 最古のリクエストからの最大時間:60分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続するスキーマ名を指定してください。 | 
| テーブル | 接続するテーブル名を指定してください。 | 
| ペイロードを記録する列 | ペイロードを記録するために SUPER列を選択してください。 | 
| タイムスタンプを記録する列 | タイムスタンプを記録する列を選択してください。テーブルに timestamp 列が default sysdate に構成されている場合は不要です。 | 
| 全訪問イベントを含む | 現在の訪問データを訪問データに含めます。 | 
| 属性名を印刷 | デフォルトでは属性キーが使用されます。代わりに属性名をキーとして使用したい場合は、このチェックボックスを有効にしてください。属性名が更新された場合、ペイロード名が更新を反映することに注意してください。 | 
| バッチ有効時間 | バッチを送信するまでの待機時間です。この値は 15分から60分の間である必要があります。デフォルト値は30分です。 | 
全イベントデータの送信(マイクロバッチ)
バッチ制限
このアクションは、バッチリクエストを使用してベンダーへの大量データ転送をサポートします。詳細については、バッチアクションを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:50
- 最古のリクエストからの最大時間:16分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続するスキーマ名を指定してください。 | 
| テーブル | 接続するテーブル名を指定してください。 | 
カスタムパラメータ
| パラメータ | 説明 | 
|---|---|
| バッチ有効時間 | バッチを送信するまでの待機時間です。この値は 1分から16分の間である必要があります。デフォルト値は5分です。 | 
全イベントデータの送信(マイクロバッチ)
バッチ制限
このアクションは、バッチリクエストを使用してベンダーへの大量データ転送をサポートします。詳細については、バッチアクションを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:2,000
- 最古のリクエストからの最大時間:60分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続するスキーマ名を指定してください。 | 
| テーブル | 接続するテーブル名を指定してください。 | 
カスタムパラメータ
| パラメータ | 説明 | 
|---|---|
| バッチ有効時間 | バッチを送信するまでの待機時間です。この値は 15分から60分の間である必要があります。デフォルト値は15分です。 | 
カスタムステートメントの実行(バッチ)
バッチ制限
このアクションは、バッチリクエストを使用してベンダーへの大量データ転送をサポートします。詳細については、バッチアクションを参照してください。リクエストは、次のいずれかの閾値が達成されるか、プロファイルが公開されるまでキューに入れられます:
- 最大リクエスト数:40
- 最古のリクエストからの最大時間:60分
パラメータ
| パラメータ | 説明 | 
|---|---|
| スキーマ | 接続するスキーマ名を指定してください。 | 
| テーブル | 接続するテーブル名を指定してください。 | 
| クエリパラメータ | クエリ内のプレースホルダーに置き換えるパラメータをマッピングしてください。少なくとも1つのパラメータをマッピングする必要があります。 | 
| クエリ | SQL属性に渡す生のステートメントを指定してください。INSERTまたはUPDATEステートメントのみが許可されます。置き換える必要がある属性名を二重中括弧{{ }}で囲んでください。詳細については、クエリ例を参照してください。 | 
| バッチ有効時間 | バッチを送信するまでの待機時間です。この値は 1分から60分の間である必要があります。デフォルト値は15分です。 | 
クエリ例
クエリパラメータ セクションで my_boolean_tealium_attribute = MY_BOOLEAN_PARAM というマッピングを追加した場合、クエリ内でそのパラメータを {{MY_BOOLEAN_PARAM}} を使用して参照します。
例えば、次のクエリパラメータがマッピングされています:MY_STRING_PARAM, MY_BOOLEAN_PARAM, ANOTHER_PARAM, MY_PARAM.
INSERT INTO redshift_table (key1,key2) VALUES ('{{MY_STRING_PARAM}}', {{MY_BOOLEAN_PARAM}});
UPDATE redshift_table SET key1 = '{{MY_STRING_PARAM}}', key2 = {{MY_BOOLEAN_PARAM}} WHERE key3 = '{{ANOTHER_PARAM}}';
UPDATE redshift_table SET key2 = (SELECT new_key2 FROM source_table WHERE source_table.key1 = redshift_table.key1)
  WHERE EXISTS (SELECT 1 FROM source_table WHERE source_table.key1 LIKE %{{MY_PARAM}}%);
最終更新日 :: 2025年August月6日