[Ultimate]{class="badge positive"}
Amazon Kinesis 接続
概要 overview
Amazon Web Services による Kinesis Data Streams サービスを使用すると、データレコードの大きなストリームをリアルタイムで収集および処理できます。
Amazon Kinesis ストレージへのリアルタイムアウトバウンド接続を作成して、Adobe Experience Platformからデータをストリーミングできます。
- Amazon Kinesis について詳しくは、Amazon ドキュメントを参照してください。
- プログラムによってに接続する Amazon Kinesis は、 ストリーミング宛先 API チュートリアルを参照してください。
- Platform ユーザーインターフェイスを使用して Amazon Kinesis に接続するには、以下の節を参照してください。
ユースケース use-cases
Amazon Kinesis などのストリーミング宛先を使用すると、価値の高いセグメント化イベントや関連するプロファイル属性を、選択したシステムに簡単にフィードできます。
例えば、ある見込み客がダウンロードしたホワイトペーパーによって、「コンバージョンする傾向の高い」セグメントに見込み客を選定するとします。 見込み客が含まれるオーディエンスを Amazon Kinesis の宛先にマッピングすると、Amazon Kinesis でこのイベントを受け取ります。 そこで、エンタープライズの IT システムで最も効果が高いと思われる通り、日曜大工のアプローチを採用し、イベントの上にビジネスロジックを記述できます。
サポートされるオーディエンス supported-audiences
この節では、この宛先に書き出すことができるオーディエンスのタイプについて説明します。
書き出しのタイプと頻度 export-type-frequency
宛先の書き出しのタイプと頻度について詳しくは、以下の表を参照してください。
IP アドレスの許可リスト ip-address-allowlist
お客様のセキュリティおよびコンプライアンスの要件を満たすために、Experience Platformは Amazon Kinesis しい宛先に許可リストできる静的 IP のリストを提供します。 許可リストに使用できる IP のリストについて詳しくは、ストリーミング宛先用 IP アドレスの許可リストを参照してください。
必要な Amazon Kinesis 権限 required-kinesis-permission
Amazon Kinesis ストリームに正常に接続してデータを書き出すには、Experience Platformに次のアクションの権限が必要です。
kinesis:ListStreams
kinesis:PutRecord
kinesis:PutRecords
これらの権限は Kinesis コンソールを通じて整理され、Platform ユーザーインターフェイスでKinesisを設定したら、Platform によって確認されます。
次の例は、Kinesis の宛先にデータを正常に書き出すために必要な最小アクセス権を示しています。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kinesis:ListStreams",
"kinesis:PutRecord",
"kinesis:PutRecords"
],
"Resource": [
"arn:aws:kinesis:us-east-2:901341027596:stream/*"
]
}
]
}
kinesis:ListStreams
kinesis:PutRecord
kinesis:PutRecords
データストリームのアクセス制御 Kinesis ついて詳しくは、次の Kinesis ドキュメントを参照してください。
宛先への接続 connect
この宛先に接続するには、宛先設定のチュートリアルの手順に従ってください。この宛先に接続する際は、次の情報を指定する必要があります。
認証情報 authentication-information
以下のフィールドに入力し、「宛先に接続」を選択します。
- Amazon Web Servicesアクセスキーと秘密鍵: Amazon Web Services で
access key - secret access key
ペアを生成して、Amazon Kinesis アカウントに Platform アクセス権を付与します。 詳しくは、Amazon Web Services に関するドキュメントを参照してください。 - Region:データのストリーミング先 Amazon Web Services リージョンを示します。
宛先の詳細の入力 destination-details
宛先の詳細を設定するには、以下の必須フィールドとオプションフィールドに入力します。UI のフィールドの横のアスタリスクは、そのフィールドが必須であることを示します。
- 名前:Amazon Kinesis への接続の名前を指定します
- 説明:Amazon Kinesis への接続の説明を指定します。
- ストリーム:Amazon Kinesis アカウントの既存のデータストリームの名前を指定します。 Platform はこのストリームにデータを書き出します。
- セグメント名を含める:書き出すオーディエンスの名前をデータの書き出しに含めるかどうかを切り替えます。 このオプションを選択したデータの書き出しの例については、書き出されたデータの節を参照してください。
- セグメントのタイムスタンプを含める:オーディエンスが作成および更新された際の UNIX タイムスタンプと、アクティブ化のためにオーディエンスが宛先にマッピングされた際の UNIX タイムスタンプをデータの書き出しに含めるかどうかを切り替えます。 このオプションを選択したデータの書き出しの例については、書き出されたデータの節を参照してください。
アラートの有効化 enable-alerts
アラートを有効にすると、宛先へのデータフローのステータスに関する通知を受け取ることができます。リストからアラートを選択して、データフローのステータスに関する通知を受け取るよう登録します。アラートについて詳しくは、UI を使用した宛先アラートの購読についてのガイドを参照してください。
宛先接続の詳細の入力を終えたら「次へ」を選択します。
この宛先に対してオーディエンスをアクティブ化 activate
この宛先にオーディエンスをアクティブ化する手順については、 ストリーミングプロファイル書き出し宛先に対するオーディエンスデータのアクティブ化を参照してください。
プロファイルの書き出し動作 profile-export-behavior
Experience Platformでは、オーディエンスの選定または他の重要なイベントに続いてプロファイルに関連する更新が発生した際に宛先へデータを書き出すためにのみ、Amazon Kinesis ースの宛先へのプロファイルの書き出し動作を最適化します。 プロファイルは、以下の状況で宛先に書き出されます。
- 宛先にマッピングされた 1 つ以上のオーディエンスのオーディエンスメンバーシップの変更によって、プロファイルの更新が決定された場合。 例えば、プロファイルは、宛先にマッピングされたいずれかのオーディエンスに適合しているか、宛先にマッピングされたいずれかのオーディエンスから退出しています。
- プロファイルの更新が、ID マップの変更によって決定する場合。例えば、宛先にマッピングされたオーディエンスの 1 つに対して既に適合しているプロファイルの ID マップ属性に新しい ID が追加されたとします。
- プロファイルの更新は、宛先にマッピングされた属性のうち、少なくとも 1 つの属性が変更されたことで判断されました。例えば、マッピング手順で宛先にマッピングされた属性の 1 つがプロファイルに追加されます。
上記のすべての場合で、適切な更新が行われたプロファイルのみが宛先に書き出されます。例えば、宛先フローにマッピングされたオーディエンスに 100 人のメンバーがいて、5 つの新しいプロファイルがセグメントに適合している場合、宛先への書き出しは増分で行われ、5 つの新しいプロファイルのみが含まれます。
変更箇所に関わらず、マッピングされたすべての属性がプロファイルに対して書き出されることに注意してください。 したがって、上の例では、属性自体が変更されていない場合でも、これら 5 つの新しいプロファイルに対してマッピングされた属性がすべて書き出されます。
データの書き出しを決定する要素と、書き出しに含まれる内容 what-determines-export-what-is-included
特定のプロファイルについて書き出されるデータに関しては、Amazon Kinesis ースの宛先へのデータ書き出しを決定する要因は何か および 書き出しに含まれるデータはどれか という 2 つの異なる概念を理解することが重要です。
- マッピングされた属性とオーディエンスは、宛先の書き出しのキューとして機能します。つまり、マッピングされたオーディエンスのステータスが(
null
からrealized
に、またはrealized
からexiting
に)変更されたり、マッピングされた属性が更新されたりすると、宛先の書き出しが開始されます。 - 現在 ID は Amazon Kinesis の宛先にマッピングできないので、特定のプロファイルの ID が変わると、宛先の書き出しも決まります。
- 属性の変更は、同じ値であるかどうかに関わらず、属性に対する更新として定義されます。つまり、値自体が変更されていない場合でも、属性の上書きは変更と見なされます。
segmentMembership
オブジェクトには、アクティブ化データフローでマッピングされたオーディエンスが含まれます。このオーディエンスについて、プロファイルのステータスが選定またはオーディエンス離脱イベントの後に変更されました。なお、これらのオーディエンスが、アクティブ化データフローでマッピングされたオーディエンスと同じ結合ポリシーに属する場合、プロファイルが対象となっていた、他のマッピングされていないオーディエンスを宛先の書き出しに含めることができます。identityMap
オブジェクト内のすべての ID も含まれます(Experience Platformでは現在、Amazon Kinesis の宛先での ID マッピングをサポートしていません)。- マッピングされた属性のみが宛先の書き出しに含まれます。
例えば、Amazon Kinesis の宛先に対するこのデータフローについて考えてみましょう。ここでは、3 つのオーディエンスがデータフローで選択され、4 つの属性が宛先にマッピングされます。
宛先へのプロファイルの書き出しは、3 つのマッピングされたセグメント のいずれかに適合またはいずれかを離脱するプロファイルによって決定されます。ただし、データの書き出しでは、segmentMembership
オブジェクト(以下の 書き出されたデータの節を参照)に、その特定のプロファイルがメンバーであり、書き出しをトリガーしたオーディエンスと同じ結合ポリシーを共有している場合、マッピングされていない他のオーディエンスが表示されることがあります。 プロファイルが デロリアンを保有する顧客 オーディエンスに適合すると同時に、「Watched "Back to the Future" 映画および SF ファン オーディエンスのメンバーでもある場合、他の 2 つのオーディエンスもデータ書き出しの segmentMembership
オブジェクトに表示されます。ただし、これらのオーディエンスが デロリアンを保有する顧客 セグメントと同じ結合ポリシーを共有すると、データフローでマッピングされません。
プロファイル属性の観点から、上記でマッピングした 4 つの属性に対する変更によって、書き出しの宛先が決定し、プロファイルに存在する 4 つのマッピング済み属性のいずれかがデータ書き出しに表示されます。
履歴データのバックフィル historical-data-backfill
既存の宛先に新しいオーディエンスを追加する場合、または新しい宛先を作成し、その宛先にオーディエンスをマッピングする場合、Experience Platformは、履歴オーディエンスの選定データを宛先に書き出します。 オーディエンス 以前 に適合し、オーディエンスが宛先に追加されたプロファイルは、約 1 時間以内に宛先に書き出されます。
書き出したデータ exported-data
書き出された Experience Platform データは、JSON 形式で Amazon Kinesis の宛先に格納されます。例えば、以下の書き出しには、特定のセグメントに適合し、別の 2 つのセグメントのメンバーであり、別のセグメントから離脱したプロファイルが含まれています。 書き出しには、プロファイル属性の名、姓、生年月日、個人メールアドレスも含まれます。 このプロファイルの ID は、ECID とメールです。
{
"person": {
"birthDate": "YYYY-MM-DD",
"name": {
"firstName": "John",
"lastName": "Doe"
}
},
"personalEmail": {
"address": "john.doe@acme.com"
},
"segmentMembership": {
"ups":{
"7841ba61-23c1-4bb3-a495-00d3g5fe1e93":{
"lastQualificationTime":"2022-01-11T21:24:39Z",
"status":"exited"
},
"59bd2fkd-3c48-4b18-bf56-4f5c5e6967ae":{
"lastQualificationTime":"2022-01-02T23:37:33Z",
"status":"realized"
},
"947c1c46-008d-40b0-92ec-3af86eaf41c1":{
"lastQualificationTime":"2021-08-25T23:37:33Z",
"status":"realized"
},
"5114d758-ce71-43ba-b53e-e2a91d67b67f":{
"lastQualificationTime":"2022-01-11T23:37:33Z",
"status":"realized"
}
}
},
"identityMap": {
"ecid": [
{
"id": "14575006536349286404619648085736425115"
},
{
"id": "66478888669296734530114754794777368480"
}
],
"email_lc_sha256": [
{
"id": "655332b5fa2aea4498bf7a290cff017cb4"
},
{
"id": "66baf76ef9de8b42df8903f00e0e3dc0b7"
}
]
}
}
書き出されたデータのその他の例を以下に示します。これらは「セグメント名を含める」および「セグメントのタイムスタンプを含める」オプションに対して接続データフローで選択した UI 設定によって異なります。
segmentMembership
セクションにオーディエンス名が含まれていますcode language-json |
---|
|
segmentMembership
セクションにオーディエンスのタイムスタンプが含まれていますcode language-json |
---|
|
制限と再試行ポリシー limits-retry-policy
Experience Platform は 95% の確率で、HTTP 宛先の各データフローにおいて、送信に成功したメッセージのスループット待ち時間を 10 分未満、リクエスト数を 1 秒あたり 10,000 件未満で提供しようと試みます。
HTTP API 宛先へのリクエストが失敗した場合、Experience Platform は失敗したリクエストを保存し、リクエストをエンドポイントに送信するために 2 回再試行します。