集計ポリシー
API エンドポイントにデータを書き出す際に最大の効率を確保するために、様々な設定を使用して、書き出されたプロファイルをより大きいまたは小さいバッチに集計したり、ID でグループ化したりできます。また、これを使用すると、API エンドポイントでの任意のダウンストリーム制限(レート制限、API 呼び出しごとの ID 数など)に合わせてデータ書き出しをカスタマイズできます。
設定可能な集計を使用して、Destination SDK が提供する設定を深く掘り下げたり、ベストエフォート集計を使用して、API 呼び出しをできる限りバッチ化するように Destination SDK に指示したりできます。
Destination SDK を使用してリアルタイム(ストリーミング)宛先を作成する際に、書き出されたプロファイルを結果の書き出しにどのように組み合わせるかを設定できます。この動作は、集計ポリシー設定によって決まります。
このコンポーネントがDestination SDKで作成される統合のどこに適合するかを把握するには、 設定オプションドキュメントの図を参照するか、Destination SDKを使用したストリーミング宛先の設定方法に関するガイドを参照してください。
/authoring/destinations
エンドポイントを介して集計ポリシー設定を設定できます。このページに表示されるコンポーネントを設定できる、詳細な API 呼び出しの例については、以下の API リファレンスページを参照してください。
この記事では、宛先に使用できる、サポートされるすべての集計ポリシー設定について説明します。
このドキュメントを読み終えたら、テンプレートの使用および集計キーの例に関するドキュメントを参照して、選択した集計ポリシーに基づいてメッセージ変換テンプレートに集計ポリシーを含める方法を理解します。
サポートされる統合タイプ supported-integration-types
このページで説明される機能をサポートする統合のタイプについて詳しくは、以下の表を参照してください。
ベストエフォート集計 best-effort-aggregation
ベストエフォート集計は、リクエストあたりのプロファイル数が少ないほうが好まれ、多くのデータで少ない数のリクエストを受けるよりも、少ないデータで多くのリクエストを受けることを希望する宛先に最適です。
以下の設定例に、ベストエフォート集計設定を示します。設定可能な集計の例については、設定可能な集計の節を参照してください。ベストエフォート集計に適用されるパラメーターは、以下の表に記載されています。
"aggregation":{
"aggregationType":"BEST_EFFORT",
"bestEffortAggregation":{
"maxUsersPerRequest":10,
"splitUserById":false
}
}
aggregationType
宛先が使用する必要がある、集計ポリシーのタイプを示します。サポートされる集計タイプ:
BEST_EFFORT
CONFIGURABLE_AGGREGATION
bestEffortAggregation.maxUsersPerRequest
この値は、1 回の HTTP 呼び出しでエンドポイントが受け取るプロファイルの最大数を示します。これはベストエフォートの集計であることに注意してください。例えば、値 100 を指定した場合、Platform が 1 回の呼び出しで送信するプロファイルの数は、100 未満の任意の数になります。
サーバーが 1 回のリクエストで複数のユーザーを受け入れない場合、この値を
1
に設定します。bestEffortAggregation.splitUserById
true
に設定します。設定可能な集計 configurable-aggregation
設定可能な集計は、同じ呼び出しに何千ものプロファイルを含む、大きなバッチを取りたい場合に最適です。また、このオプションを使用すると、複雑な集計ルールに基づいて、書き出されたプロファイルを集計できます。
以下の設定例に、設定可能な集計設定を示します。ベストエフォート集計の例については、ベストエフォート集計の節を参照してください。設定可能な集計に適用されるパラメーターは、以下の表に記載されています。
"aggregation":{
"aggregationType":"CONFIGURABLE_AGGREGATION",
"configurableAggregation":{
"splitUserById":true,
"maxBatchAgeInSecs":2400,
"maxNumEventsInBatch":5000,
"aggregationKey":{
"includeSegmentId":true,
"includeSegmentStatus":true,
"includeIdentity":true,
"oneIdentityPerGroup":true,
"groups":[
{
"namespaces":[
"IDFA",
"GAID"
]
},
{
"namespaces":[
"EMAIL"
]
}
]
}
}
}
aggregationType
宛先が使用する必要がある、集計ポリシーのタイプを示します。サポートされる集計タイプ:
BEST_EFFORT
CONFIGURABLE_AGGREGATION
configurableAggregation.splitUserById
true
に設定します。configurableAggregation.maxBatchAgeInSecs
このパラメーターは、maxNumEventsInBatch
と共に使用して、Experience Platform がエンドポイントに API 呼び出しを送信するまで待機する時間を決定します。
- 最小値(秒):1,800
- 最大値(秒):3,600
例えば、両方のパラメーターに最大値を使用した場合、Experience Platform は、API 呼び出しを行う前に、3,600 秒か、認定済みプロファイルが 10,000 個になるまで待機します(いずれか早い方)。
configurableAggregation.maxNumEventsInBatch
このパラメーターは、maxBatchAgeInSecs
と共に使用して API 呼び出しにいくつの認定プロファイルを集計するかを決定します。
- 最小値:1,000
- 最大値:10,000
例えば、両方のパラメーターに最大値を使用した場合、Experience Platform は、API 呼び出しを行う前に、3,600 秒か、認定済みプロファイルが 10,000 個になるまで待機します(いずれか早い方)。
configurableAggregation.aggregationKey
configurableAggregation.aggregationKey.includeSegmentId
true
に設定します。configurableAggregation.aggregationKey.includeSegmentStatus
includeSegmentId
の両方を true
に設定します。configurableAggregation.aggregationKey.includeIdentity
true
に設定します。configurableAggregation.aggregationKey.oneIdentityPerGroup
true
に設定します。configurableAggregation.aggregationKey.groups
次の手順 next-steps
この記事を読むことで、宛先に対する集計ポリシーの設定方法について、理解を深めることができました。
その他の宛先コンポーネントについて詳しくは、以下の記事を参照してください。