在本课程中,您将为Luma的数据建模为模式。 这是教程中最长的课程之一,所以请你喝杯水,然后系好安全带!
标准化和互操作性是Adobe Experience Platform背后的关键概念。 体验数据模型(XDM)是一种旨在标准化客户体验数据并定义客户体验管理架构的工作。
XDM是一项公开记录的规范,旨在提高数字体验的强大功能。 它为用于与Platform服务通信的任何应用程序提供了通用结构和定义。 通过遵循XDM标准,可以将所有客户体验数据纳入到通用的表示形式中,以便以更快、更集成的方式提供洞察。 您可以从客户操作中获得有价值的分析,通过区段定义客户受众,以及为个性化目的表达客户属性。
XDM是基础框架,它允许Adobe Experience Cloud在Experience Platform的支持下,在适当的时间,通过适当的渠道向适当的人员提供适当的信息。 构建Experience Platform的方法, XDM系统,可操作供Platform服务使用的Experience Data Model模式。
数据架构师 将需要在本教程之外创建模式,但 数据工程师 将与Data Architect创建的架构密切配合。
在开始练习之前,请观看此简短视频,以详细了解模式和体验数据模型(XDM):
为了更深入地了解Experience Platform中的数据建模,我们建议您参加课程 使用XDM为您的客户体验数据建模,可在Experience League上免费使用!
在 配置权限 课程中,您将设置完成本课程所需的所有访问控制。
在此练习中,我们将为Luma的忠诚度数据创建架构。
接下来,系统将提示您向架构添加字段组。 必须使用组将所有字段添加到架构。 您可以从由Adobe提供的大量行业标准字段组中进行选择,也可以创建您自己的字段组。 在Experience Platform中开始建模您自己的数据时,最好熟悉Adobe提供的行业标准字段组。 尽可能地,最好使用它们,因为它们有时会支持下游服务,例如Customer AI、Attribution AI和Adobe Analytics。
使用您自己的数据时,一个重要步骤是确定应在平台中捕获哪些您自己的数据以及应如何建模。 本课程将更深入地讨论这一大主题 使用XDM为您的客户体验数据建模. 在本教程中,我将指导您完成一些预定模式的实施。
要添加字段组,请执行以下操作:
在 添加字段组 模式窗口中,选择以下字段组:
您可以通过选择行右侧的图标来预览字段组中贡献的字段。
检查 行业 > 零售 框来显示特定于行业的字段组。
选择 忠诚度 添加忠诚度计划字段。
选择 添加字段组 将所有三个字段组添加到架构。
现在,需要一些时间来探索架构的当前状态。 字段组添加了与人员、其联系详细信息和忠诚度计划状态相关的标准字段。 在为自己公司的数据创建架构时,您可能会发现这两个字段组非常有用。 选择特定字段组行或选中字段组名称旁边的复选框,以查看可视化图表的更改方式。
要保存架构,请执行以下操作:
Luma Loyalty Schema
作为 显示名称.字段组是否为您未收集的数据点添加字段,这是可以的。 例如,“faxPhone”可能是Luma不收集数据的字段。 没关系。 仅因架构中定义了字段,并不意味着该架构的数据 必须 稍后被摄食。
现在,让我们创建一个自定义字段组。
而忠诚度字段组包含 loyaltyID
字段中,Luma希望在单个组中管理其所有系统标识符,以帮助确保其架构之间的一致性。
必须在架构工作流中创建字段组。 要创建字段组,请执行以下操作:
选择 添加 下 架构字段组 标题
选择 创建新字段组
使用 Luma Identity profile field group
作为 显示名称
使用 system identifiers for XDM Individual Profile class
作为 描述
选择 添加字段组
新的空字段组将添加到您的架构中。 的 + 按钮可用于向层次结构中的任意位置添加新字段。 在本例中,我们希望在根级别添加字段:
选择 + 架构名称旁边。 这会在租户ID命名空间下添加一个新字段,以管理自定义字段与任何标准字段之间的冲突。
在 字段属性 侧栏添加新字段的详细信息:
systemIdentifier
System Identifier
现在,在 systemIdentifier
对象:
loyaltyId
Loyalty Id
crmId
CRM Id
您的新字段组应如下所示。 选择 保存 按钮来保存您的架构,但请保持架构处于打开状态,以供下一个练习使用。
字段组,如新 Luma Identity profile field group
,可在其他架构中重复使用,从而允许您跨多个系统强制实施标准数据定义。 但它们只能被重复利用 在共享类的架构中,在本例中为XDM个人用户档案类。
数据类型是另一个可在架构中重用的多字段结构 跨多个类. 让我们转换新 systemIdentifier
对象转换为数据类型:
使用 Luma Loyalty Schema
仍然打开,选择 systemIdentifier
对象和选择 转换为新数据类型
如果您 取消 退出架构,然后导航到 数据类型 选项卡,则会看到新创建的数据类型。 我们将在课程的稍后部分使用此数据类型。
现在,我们将使用API创建模式。
如果您希望跳过API练习,可以使用用户界面方法创建以下架构:
Luma CRM Schema
首先,我们创建空架构:
Open Postman
如果您在过去24小时内未发出请求,则授权令牌可能已过期。 打开请求 Adobe I/O Access Token Generation > Local Signing (Non-production use-only) > IMS: JWT Generate + Auth via User Token 选择 发送 请求新的JWT和访问令牌。
打开环境变量并更改 CONTAINER_ID 从 global
to tenant
. 请记住,您必须使用 tenant
当您想要在Platform中与自己的自定义元素进行交互时,例如创建架构。
选择 保存
打开请求 Schema Registry API > Schemas > Create a new custom schema.
打开 正文 选项卡,然后粘贴以下代码并选择 发送 以进行API调用。 此调用使用 XDM Individual Profile
基类:
{
"type": "object",
"title": "Luma CRM Schema",
"description": "Schema for CRM data of Luma Retail ",
"allOf": [{
"$ref": "https://ns.adobe.com/xdm/context/profile"
}]
}
此代码示例和后续代码示例中的命名空间引用(例如 https://ns.adobe.com/xdm/context/profile
),则可以将列表API调用与 CONTAINER_ID 并接受标头设置为正确的值。 部分用户也可以在用户界面中轻松访问。
你应该得到 201 Created
响应
复制 meta:altId
从响应主体。 我们稍后会在另一个练习中使用它。
新架构应在用户界面中可见,但没有任何字段组
的 meta:altId
或架构id也可通过发出API请求来获取 Schema Registry API > Schemas > Retrieve a list of schemas within the specified container. 和 CONTAINER_ID 设置为 tenant
和接受标头 application/vnd.adobe.xdm+json
.
此调用的常见问题和可能的修复:
401: Not Authorized to PUT/POST/PATCH/DELETE for this path : /global/schemas/
:更新 CONTAINER_ID 环境变量 global
to tenant
403: PALM Access Denied. POST access is denied for this resource from access control
:在Admin Console中验证用户权限现在该将字段组添加到架构了:
在 Postman,打开请求 Schema Registry API > Schemas > Update one or more attributes of a custom schema specified by ID.
在 参数 选项卡,粘贴 meta:altId
值 SCHEMA_ID
打开“正文”选项卡并粘贴以下代码,然后选择 发送 以进行API调用。 此调用会将标准字段组添加到 Luma CRM Schema
:
[{
"op": "add",
"path": "/allOf/-",
"value": {
"$ref": "https://ns.adobe.com/xdm/context/profile-personal-details"
}
},
{
"op": "add",
"path": "/allOf/-",
"value": {
"$ref": "https://ns.adobe.com/xdm/context/profile-person-details"
}
}
]
您应该获得响应的200 OK状态,并且字段组应作为架构的一部分在UI中可见
现在,让我们将 Luma Identity profile field group
到架构。 首先,我们需要使用列表API来查找新字段组的ID:
打开请求 Schema Registry API > Field groups > Retrieve a list of field groups within the specified container.
选择 发送 用于检索帐户中所有自定义字段组的列表的按钮
抓住 $id
值 Luma Identity profile field group
(您的将与此屏幕截图中的值不同)
打开请求 Schema Registry API > Schemas > Update one or more attributes of a custom schema specified by ID. 再次
的 参数 选项卡 $id
您的架构
打开 正文 选项卡,并粘贴以下代码, $ref
值 $id
你自己 Luma Identity profile field group
:
[{
"op": "add",
"path": "/allOf/-",
"value": {
"$ref": "REPLACE_WITH_YOUR_OWN_FIELD_GROUP_ID"
}
}]
选择 发送
通过检查API响应和界面中的,验证字段组是否已添加到架构中。
现在,让我们基于 XDM ExperienceEvent Luma的离线购买数据的类。 由于您现在已熟悉架构编辑器用户界面,因此我将减少说明中屏幕截图的数量:
Luma Identity profile field group
. 它不可用! 请记住,字段组已绑定到类,由于我们在此架构中使用不同的类,因此无法使用它。 我们需要为XDM ExperienceEvent类添加一个包含标识字段的新字段组。 我们的数据类型将使这变得非常简单!Luma Identity ExperienceEvent field group
,然后选择 添加字段组 按钮systemIdentifier
System Identifier
Luma Offline Purchase Events Schema
请注意数据类型如何添加所有字段!
此外,选择 XDM ExperienceEvent 下 类 标题并检查本课贡献的一些字段。 请注意,使用XDM ExperienceEvent类时,需要_id和时间戳字段,因为在使用此架构时,必须为您摄取的每个记录填充这些字段:
现在,我们将为Luma的网站数据再创建一个模式。 此时,您应该是创建模式的专家! 使用这些属性构建以下架构
属性 | 值 |
---|---|
类 | XDM ExperienceEvent |
字段组 | AEP Web SDK ExperienceEvent Mixin |
字段组 | 消费者体验事件 |
架构名称 | Luma Web事件架构 |
选择 消费者体验事件 字段组。 此字段组包含商务和productListItems对象,这些对象也位于 商务详细信息. 的确 消费者体验事件 是其他几个标准字段组的组合,这些字段组也可单独使用。 AEP Web SDK ExperienceEvent Mixin 字段组还包含其他字段组,包括 消费者体验事件. 幸运的是,它们完美地融合在一起。
请注意,我们未在 Luma Identity ExperienceEvent field group
到此模式。 这是因为Web SDK有不同的身份收集方式。 如果您选择 XDM ExperienceEvent 类 组合物 在架构编辑器的部分中,您会注意到它添加的默认字段之一称为 IdentityMap. IdentityMap 被各种Adobe应用程序用来链接到平台。 您将在流摄取课程中了解如何通过identityMap将身份发送到平台。
通过使用 商务详细信息 和 消费者体验事件 字段组中,Luma会通过标准productListItems数据类型报告产品相关事件的一些详细信息。 但是,他们还有其他产品详细信息字段,要发送到Platform。 Luma不愿在其销售点和电子商务系统中捕获所有这些字段,而是希望直接从其产品目录系统中摄取这些字段。 “架构关系”允许您为分类或查找目的定义两个架构之间的关系。 Luma将使用关系对其产品详细信息进行分类。 我们将立即开始该过程,并在下一课程结束时完成该过程。
如果您是现有Analytics或Target客户,则使用架构关系对实体进行分类类似于SAINT分类或上传Recommendations产品目录
首先,我们必须使用自定义类为Luma的产品目录创建架构:
Luma Product Catalog Class
Luma Product Catalog field group
,其中包含以下字段:
Luma Product Catalog Schema
(请务必更新正确的字段,而不更新类名)您的新架构应当如下所示。 请注意 productSku
字段 必填字段 部分:
下一步是定义两个ExperienceEvent架构与 Luma Product Catalog Schema
但是,在执行此操作之前,我们必须在下一课程中执行一些其他步骤。
现在,您的模式可以 映射标识!