Customer Data Feeds customer-data-feeds
Customer Data Feed(CDF)ファイルに関する基本情報と導入方法の説明です。CDFファイルの受信に関心がある場合や詳細を知りたい場合は、ここから始めてください。
ファイルの内容と目的 file-contents-purpose
CDF ファイルには、Audience Manager イベント呼び出し(/event
)でサーバーに送信されるデータと同じものが含まれています。ユーザー ID、trait IDs、segment IDs など、イベント呼び出しで表されるあらゆるパラメーターが含まれます。Audience Manager の内部システムがイベントデータを処理して CDF ファイルを生成します。このファイルの内容は、所定の順序で出現するフィールドで構成されます。Audience Manager は、時間ごとに CDF ファイルの生成を試み、Amazon S3 サーバー上のセキュリティで保護された顧客専用バケットにファイルを保存します。これらのファイルが提供されているのは、ユーザーインターフェイス上の制限を受けずに Audience Manager データを扱えるようにするためです。
- CDF ファイル配信を設定する前に、サードパーティのデータプロバイダーから、サードパーティの特性の書き出しに関する適切な権限を付与されていることを確認してください。Audience Manager は、現在、サードパーティのデータプロバイダーに対して、CDF ファイル配信の書き出し権限を要求するユーザーインタフェースの機能をサポートしていません。必要な場合は各プロバイダーに個別に連絡してください。
- ページトラフィックの監視、レポートの相違点の調整、請求などの代わりに CDF ファイルを使用しないでください。
はじめに getting-started
CDFファイル配信を開始するためのセルフサービスプロセスはありません。開始するには、担当の Audience Manager コンサルタントまたはカスタマーケアに問い合わせてください。実装時に Audience Manager 担当者は以下をおこないます。
- 使用する Amazon S3 ストレージバケットのセットアップ。
- S3 ファイルストレージバケットに対する読み取り専用の認証資格情報の提供。他の顧客のディレクトリやファイルを参照したりアクセスしたりすることはできません。
ファイルのダウンロード準備ができたら、ファイル通知と CDF ファイルが S3 バケットに表示されます。割り当てられた S3 ディレクトリ内のファイルの監視やダウンロードは、ユーザー自身がおこないます。顧客データフィードファイル処理の通知。
次の手順 next-steps
このサービスの詳細については、以下の節および顧客データフィードの FAQ を参照してください。
Customer Data Feed定義済みコンテンツ cdf-defined
CDFファイルのデータ要素および配列を出現順に列挙し定義します。定義にはデータタイプが含まれていますが、この情報は CDF ファイルには含まれていません。
定義 definitions
CDF ファイルには、以下に定義するフィールドの一部または全部が含まれています。内部ファイル組織について詳しくは、顧客データフィードファイルの構造を参照してください。
Event Time
データ収集サーバー(DCS)で CDF ファイルが処理された時刻。タイムスタンプは yyyy-mm-dd hhss 形式を使用し、UTC タイムゾーンに設定されます。
注意:イベント時刻は、
- ページイベントやイベント呼び出しそのものの時刻に近いですが、それらの時刻ではありません。
- ファイル名の DCS 時刻とは関係ありません。顧客データフィードファイル名 時間およびファイルコンテンツ時間も参照してください…。
Container ID
Realized Traits
イベント呼び出しで訪問者が満足した(基準を満たした)特性がすべて含まれている特性 ID 配列。
この配列には、訪問者が以前に絞り込まれた特性と、このイベント呼び出しを通じて再度絞り込まれる特性が含まれる可能性があることに注意してください。
Realized Segments
Request Parameters
イベント呼び出しで渡される、すべてのパラメーター(変数、ID、キー値ペア、デバイス広告 ID など)を取り込む文字列。
短縮化した例:
d_rtbd:json,c_contextData.a.CarrierName:mobile,c_contextData.a.adid:92D56353-49C5-431E-B474-FC528D585810,c_contextData.a,RunMode:Application,c_contextData.a.DaysSinceLastUpgrade:61,d_cid_ic:xid%01EACB6E40-AC65-4012-9FE9-ABD59965E9C4%011,c_contextData.a.PrevSessionLength:583
Referer Data Type
IP Data Type
MCDevice
All Segments
All Traits
Customer Data Feedファイル構造 cdf-file-structure
CDF ファイルのデータ構造を一覧表示および定義します。データ列、フィールド区切り文字、データファイルマップ、サンプルファイルが含まれています。
データフィールド識別子とデータ列 identifiers-and-sequence
CDF ファイルには、ラベル付きの列やフィールドヘッダーは含まれていません。代わりに、CDF ファイルでは非表示の ASCII 文字でフィールドと配列を定義します。また、CDF ファイルでは各フィールドと配列が特定の順序で並んでいます。フィールドの識別子と順序を理解すると、ファイルを適切に解析するうえで役に立ちます。
次の非表示文字で CDF ファイルの要素と構造が定義されます。
- Ctrl + A(ASCII
001
または^A
):非表示のスペースインジケーターで個々のフィールドを区切ります。 - Ctrl + B(ASCII
002
または^B
):配列やリクエストパラメーターのデータを区切ります。 - Ctrl + C(ASCII
003
または^C
):キー値ペアを定義します。
重要:Audience Manager は、今後のリリースで CDF ファイルの末尾に新規フィールドを追加する権利を留保します。つまり、ファイル解析システムの技術設計では、(既存の列については固定した順序を想定してもかまいませんが)固定した列数を前提としないでください。
CDF ファイル内のデータは、以下に示す順序で表示されます。これらのフィールドの代わりに、null 値を示す/N が表示される場合があります。
- イベント時刻
- デバイス
- コンテナ ID
- 認識済みの特性
- 認識済みのセグメント
- リクエストパラメーター
- 参照元
- IP アドレス
- Experience Cloud デバイス ID(MID)。Cookie と Adobe Experience Platform ID サービスも参照してください。
- すべてのセグメント
- すべての特性
フィールドの説明については、顧客データフィード 内容の定義を参照してください。
CDFファイルマップ cdf-file-map
CDF ファイルデータの出現順序は以下のとおりです。
配列の識別
CDF ファイル内の配列は Ctrl + a
フィールド区切り文字で始まり、同じ区切り文字で終わります。これにより、配列の先頭要素は単独のデータフィールドのように見えます。例えば、適合済みtraitsの配列は ^A1234
で始まります。このエントリの後に、配列の区切り文字と ID ^B5678
が続きます。そのため、(^B
で始まっているので)適合済みtraitsの配列の先頭要素が ID 5678 であると考えてしまうかもしれません。しかし、実際にはそうではありません。だからこそ、データファイルのデータ列と構造に熟知する必要があるのです。適合済みtraitの配列(または CDF ファイルに含まれている他の任意の配列)の先頭要素が ^A
で始まっている場合であっても、ファイル内の出現順序や位置によって配列の開始が決まります。また、配列の先頭要素は必ず ^A
で先行エントリと区切られます。
サンプル CDF ファイル sample-file
サンプル CDF ファイルは例えば次のようになります。このサンプルには、ページに合わせて改行が挿入されています。
Customer Data Feed ファイル命名規則 cdf-naming-conventions
CDF ファイル名の構成要素を次の表に列挙し定義します。
CDF ファイル名:構文と例 cdf-file-name
典型的な CDF ファイル名は以下の要素で構成されています。なお、斜体 の部分には実際の情報が入ります。
構文
s3://aam-cdf/YOUR-S3-BUCKET-NAME/day=yyyy-mm-dd/hour=hh/AAM-CDF_PARTNER-ID_FILE-SEQUENCE_0.gz
例
s3://aam-cdf/dataCompany/day=2017-09-14/hour=17/AAM_CDF_1234_0_0_0.gz
S3 ストレージバケットでは、ファイルはパートナー ID(PID)、日、時で昇順にソートされます。
CDF ファイル名要素の定義 cdf-file-name-elements
CDF ファイル名の構成要素を次の表に列挙し定義します。
s3://aam-cdf/
your S3 bucket name
day=yyyy-mm-dd
hour=hh
partner ID
File Sequence_0
.gz
Customer Data Feedファイル処理の通知 cdf-file-processing-notifications
Audience Manager は、ファイルのダウンロード準備が完了したことを知らせるために、Customer Data File(CDF)のダウンロード準備ができたことを知らせるために、S3 ディレクトリに .info
ファイルを書き込みます。.info
ファイルには、CDF ファイルの内容に関する JSON 形式のメタデータも含まれています。この通知ファイルで使用されている構文やフィールドについては、このセクションで確認してください。
サンプル .info ファイル sample-info-file
各 .info
ファイルは、Files
と Totals
の 2 つのセクションで構成されます。Files
セクションには、時間ごとのファイルの特定の指標を格納した配列が含まれています。Totals
セクションには、特定の日のすべての CDF ファイルについて集計した指標が含まれています。.info
ファイルの内容は、例えば次のようになります。
{
"Files": [
{
"FileByteSize": 2709730,
"FileChecksumMD5": "a9ea418e79511642cff11c2a898037dc-1",
"FileName": "AAM_CDF_1109_000000_0.gz",
"FileSequenceNumber": 1
},
{
"FileByteSize": 2783351,
"FileChecksumMD5": "7b469485d60274b6991acd0817855840-3",
"FileName": "AAM_CDF_1109_000001_0.gz",
"FileSequenceNumber": 2
}
],
"Totals": {
"Day": "2017-09-26",
"Hour": "18",
"TotalByteSize": 150092997,
"TotalNumberFiles": 2
}
}
Info ファイルの各フィールドの定義 info-file-fields-defined
以下の表に、CDF .info
ファイルの構成要素の一覧と説明を示します。
Files オブジェクト
Files
FileByteSize
FileChecksumMD5
ETag
はファイルの MD5 チェックサムと同一ではありません。FileName
FileSequenceNumber
Totals オブジェクト
Totals
Day
Hour
TotalByteSize
TotalNumberFiles
Customer Data Feedファイル名の時間とファイルコンテンツの時間が異なる different-processing-times
CDF ファイルでは、ファイル名とファイルコンテンツにタイムスタンプが含まれています。これらのタイムスタンプは、同じ CDF ファイルに対する異なるイベントプロセスを記録します。同じファイルの名前とコンテンツに異なるタイムスタンプが表示されることは珍しくありません。各タイムスタンプを理解すると、このデータを操作したり時刻でソートしようとしたりするときに、犯しがちなミスを避けるうえで役に立ちます。
CDF ファイルのタイムスタンプの場所 locating-timestamps
CDF ファイルでは、2 つの別個の場所に異なる時刻を記録します。
タイムスタンプの違いについて understanding-timestamps
CDF ファイルのタイムスタンプの詳細とそれらの適切な使い方を次の表に示します。
CDF ファイル名に含まれているタイムスタンプは、Audience Manager がファイルの配信準備を開始した時刻を示します。このタイムスタンプは UTC タイムゾーンに設定されています。hour=
パラメーターを使用しており、時刻は 24 時間表記の 2 桁の時で表されています。この時刻は、ファイルコンテンツに記録されているイベント時刻とは異なることがあります。CDF ファイルを処理する際、特定の時間で S3 バケットが空となることに気付く場合があります。バケットが空になるのは、次のいずれかの場合が考えられます。
- その特定の時刻にデータがない。
- サーバーの負荷が大きく、その時刻のファイルを処理できない。サーバーの処理が追いついたら、過去のバケットに含まれていたはずのファイルが、それより後の時刻のバケットに格納されます。例えば、17 時のバケットに含まれていたはずのファイルが 18 時のバケットに出現する(ファイル名に
hour=18
が含まれている)といった場合です。このような場合、サーバーはおそらく 17 時にファイルの処理を開始したものの、その時間内に処理を完了できなかったと考えられます。その代わり、そのファイルは次の時刻のバケットに入れられます。
重要:ファイル名のタイムスタンプを使用して、イベントを時間別にグループ化しないでください。時間別にグループ化する必要がある場合は、ファイルコンテンツの EventTime
タイムスタンプを使用します。
EventTime
フィールドを使用し、時刻は yyyy-mm-dd hh:mm:ss
形式で表されます。この時刻は、ページ上のイベントの実際の時刻に近いものの、ファイル名に示される時刻とは異なることがあります。ヒント:ファイル名の
hour=
タイムスタンプとは異なり、EventTime
を使用してデータを時間別にグループ化することができます。