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
以下部分和客户数据馈送常见问题解答可以帮助您更熟悉此服务。
已定义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
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文件中的数据按以下顺序显示。/N可以代替这些字段中的任何一个,指示空值。
- 事件时间
- 设备
- 容器 ID
- 已实现的特征
- 已实现区段
- 请求参数
- Referer
- IP 地址
- Experience Cloud的设备ID(或MID)。 另请参阅 Cookie和Adobe Experience Platform Identity服务
- 所有区段
- 所有特征
有关字段说明,请参阅定义的客户数据馈送内容。
CDF文件映射 cdf-file-map
CDF文件数据的显示顺序如下所示。
标识数组
CDF文件中的数组以Ctrl + a
字段分隔符开始和结束。 这会使数组中的第一个元素看起来像是一个独立的数据字段。 例如,已实现的traits数组以^A1234
开头。 数组分隔符和ID ^B5678
遵循此条目。 因此,您可能认为已实现的traits数组中的第一个元素是ID 5678(因为它以^B
开头)。 但实际情况并非如此,因此您需要熟悉数据文件的顺序和结构。 即使已实现的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将.info
文件写入您的S3目录,以告知您的Customer Data File (CDF)何时可以下载。 .info
文件还包含有关CDF文件内容的JSON格式化的元数据。 查看此部分以了解有关此通知文件使用的语法和字段的信息。
示例信息文件 sample-info-file
每个.info
文件都包含一个Files
和Totals
节。 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-file-fields-defined
下表列出并定义CDF .info
文件中的元素。
Files对象
Files
FileByteSize
FileChecksumMD5
ETag
与文件的MD5校验和不相同。FileName
FileSequenceNumber
总计对象
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
按时间分组数据。