データ接続と統合利用可能なコネクターAmazon Kinesis

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

Amazon Kinesis

Foundry を Amazon Kinesis に接続して、Kinesis ストリームから Foundry ストリームにデータをリアルタイムで読み込みます。

サポートされる機能

機能ステータス
探索🟢 一般提供
ストリーミング同期🟢 一般提供
ストリーミングエクスポート🟢 一般提供

データモデル

partition_key(文字列)data(文字列)kinesis_ingestion_timestamp(タイムスタンプ)foundry_ingestion_timestamp(タイムスタンプ)
London{"firstName": "John", "lastName": "Doe"}2023-07-12T15:12:42.371Z2023-07-12T15:12:42.512Z
Paris{"firstName": "Jean", "lastName": "DuPont"}2023-07-12T15:12:42.418Z2023-07-12T15:12:42.512Z

Kinesis コネクターは、メッセージの内容を Unicode 文字列にパースします。構造化データをパースするには、下流のストリーミングトランスフォーム(たとえば、Pipeline Builder の parse_json)を使用します。

  • partition_key 列には、メッセージを Kinesis に送信する際に使用されたパーティションキーが含まれます。
  • kinesis_ingestion_timestamp 列には、メッセージが Kinesis に送信されたときのタイムスタンプが含まれます。
  • foundry_ingestion_timestamp 列には、メッセージが Foundry に取り込まれたときのタイムスタンプが含まれます。

パフォーマンスと制限事項

コネクターは常に、ソースの Kinesis ストリームのアクティブなシャードごとに1つのコンシューマースレッドを使用します。

ストリーミング同期は、継続的に長時間実行されるジョブとして設計されています。期待される結果によっては、ストリーミング同期の中断が障害となる可能性があります。

現在、ストリーミング同期には次の制限事項があります。

  • Foundry ワーカー上のジョブは、少なくとも48時間に1回再起動します。想定されるダウンタイムは数分です(リソースが利用可能で、ジョブをすぐに再起動できる場合)。
  • レガシーの Agent ワーカーソースでは、アップグレードを適用するため、Agent のメンテナンスウィンドウ中(通常は週に1回)にジョブが再起動します。想定されるダウンタイムは5分未満です。高可用性を確保するには、メンテナンスウィンドウが重ならない2つの Agent を介して接続してください。

メッセージの順序

Kinesis コネクターは、同じ partition_key を持つメッセージの配信順序を保証します。partition_key の値が異なるメッセージは、任意の順序で処理される可能性があります。

セットアップ

  1. Data Connection アプリケーションを開き、画面右上の + 新規ソースを選択します。
  2. 利用可能なコネクターの種類から Kinesis を選択します。
  3. 追加の設定プロンプトに従い、以下のセクションの情報を使用してコネクターのセットアップを続けます。

Foundry でのコネクターのセットアップについて詳しくはこちら。

接続設定

パラメーター必須?デフォルト説明
AWS リージョンはいus-east-1Kinesis ストリームが存在する AWS リージョン。

認証

Kinesis 接続の認証方法として、AWS インスタンスまたは固定の資格情報を選択します。

以下は、指定された Kinesis ストリームからの読み取りとストリームへの書き込みに必要な権限の例を含む IAM ポリシーのサンプルです。

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 { "Version": "2012-10-17", "Statement": [ { "Sid": "ReadKinesisStream", "Effect": "Allow", "Action": [ "kinesis:ListShards", "kinesis:GetShardIterator", "kinesis:GetRecords", "kinesis:DescribeStream" ], "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/read-stream-name" }, { "Sid": "WriteKinesisStream", "Effect": "Allow", "Action": [ "kinesis:PutRecords" ], "Resource": "arn:aws:kinesis:us-east-1:123456789012:stream/write-stream-name" } ] }

AWS インスタンス

レガシー

AWS インスタンス認証は、レガシーの Agent ワーカーソースでのみ利用可能です。Foundry ワーカーソースでは AWS インスタンス認証を使用できません。代わりに IAM アクセスキーを使用してください。

Foundry Agent が、IAM ロールが割り当てられた AWS リソース(たとえば EC2 インスタンス)で実行されている場合、Kinesis コネクターはその IAM ロールを使用して Kinesis ストリームに接続します。追加の設定は必要ありません。

固定の資格情報

固定の資格情報とは、IAM ユーザーに紐づくアクセスキーIDとシークレットアクセスキーを使用する標準的な AWS 認証を指します。

パラメーター必須?デフォルト
アクセスキーIDはいなし
シークレットアクセスキーはいなし

STS ロール

Kinesis コネクターは、必要に応じて Kinesis ストリームに接続する前に STS ロールを引き受けることができます。これらのパラメーターの詳細については、AWS ドキュメント ↗ を参照してください。

パラメーター必須?デフォルト
ロール ARNはいなし
ロールセッション名はいなし
ロールセッションの期間はい900
外部IDいいえなし

ネットワーク

コネクターは、AWS Kinesis API にアクセスできる必要があります。また、STS ロールを使用する場合は、AWS STS API にもアクセスできる必要があります。

  • Kinesis API: https://kinesis.<region>.amazonaws.com
  • STS API: https://sts.<region>.amazonaws.com

Kinesis からデータを同期する

Kinesis との同期をセットアップする方法については、ストリーミング同期をセットアップするチュートリアルを参照してください。

Kinesis にデータをエクスポートする

このコネクターは、Data Connection で外部の Kinesis ストリームへのエクスポートをサポートしています。

Kinesis にエクスポートするには、まず Kinesis コネクターのエクスポートを有効にします。次に、新しいエクスポートを作成します。

エクスポート設定オプション

オプション必須?デフォルト説明
出力ストリーム ARNはい該当なしエクスポート先の Kinesis ストリームの ARN。
パーティション列はい最初の文字列列データレコードがストリーム内のどのシャードに属するかを特定するために使用される列。値は文字列である必要があり、通常は主キーです。詳細については、AWS ドキュメント ↗ を参照してください。