摄取批次数据

在本课程中,您将使用各种方法将批量数据摄取到Experience Platform中。

批量数据摄取允许您一次将大量数据摄取到Adobe Experience Platform。 您可以在Platform的界面中或使用API一次性摄取批量数据。 您还可以使用Source连接器配置从第三方服务(例如云存储服务)定期计划的批量上传。

数据工程师 ​需要在本教程之外摄取批量数据。

在开始练习之前,请观看此简短视频,了解有关数据摄取的更多信息:

所需的权限

配置权限课程中,您已设置完成本课程所需的所有访问控制。

在“源”练习中,您将需要访问(S)FTP服务器或云存储解决方案。 如果您没有解决方法,则可以采取相应的措施。

使用Platform用户界面批量摄取数据

数据可以采用JSON和Parquet格式直接上传到数据集屏幕上的数据集中。 这是创建后测试部分数据摄取的绝佳方法

下载并准备数据

首先,获取示例数据并为租户对其进行自定义:

NOTE
luma-data.zip文件中包含的数据是虚构的,仅用于演示目的。
  1. luma-data.zip下载到您的​ Luma Tutorial Assets ​文件夹。

  2. 解压缩文件,创建一个名为luma-data的文件夹,其中包含我们将在本课程中使用的四个数据文件

  3. 在文本编辑器中打开luma-loyalty.json并使用您自己的下划线租户ID替换_techmarketingdemos的所有实例,如您自己的架构中所示:
    为租户ID加下划线

  4. 保存更新的文件

摄取数据

  1. 在Platform用户界面中,在左侧导航中选择​ 数据集

  2. 打开您的Luma Loyalty Dataset

  3. 向下滚动,直到在右列中看到​ 添加数据 ​部分

  4. 上传luma-loyalty.json文件。

  5. 上传文件后,将出现批处理的一行

  6. 如果在几分钟后重新加载页面,您应该会看到该批次已成功上传,包含1000条记录和1000个配置文件片段。

    引入

NOTE
在本课程的各个屏幕中,您会看到一些选项,错误诊断 ​和​ 部分摄取。 本教程中未介绍这些选项。 一些快速信息:
  • 启用错误诊断会生成有关数据摄取的数据,然后您可以使用数据访问API查看这些数据。 有关详情,请参阅文档
  • 部分摄取允许您摄取包含错误的数据,最大摄取阈值由您指定。 有关详情,请参阅文档

验证数据

有几种方法可确认数据已成功摄取。

在Platform用户界面中验证

要确认数据已摄取到数据集中,请执行以下操作:

  1. 在您摄取数据的同一页面上,选择右上方的​ 预览数据集 ​按钮

  2. 选择​ 预览 ​按钮,您应该能够看到一些摄取的数据。

    预览成功的数据集

要确认数据登陆到用户档案(可能需要几分钟时间才能将数据登陆),请执行以下操作:

  1. 在左侧导航中转到​ 配置文件
  2. 选择​ 选择身份命名空间 ​字段旁边的图标以打开模式窗口
  3. 选择您的Luma Loyalty Id命名空间
  4. 然后,输入数据集中的loyaltyId值之一,5625458
  5. 选择​ 视图
    确认来自数据集的用户档案

使用数据摄取事件进行验证

如果您在上一课程中订阅了数据摄取事件,请检查您独特的webhook.site URL。 您应该会看到三个请求按以下顺序显示,中间有一些时间,具有以下eventCode值:

  1. ing_load_success — 已摄取的批次
  2. ig_load_success — 批次已摄取到身份图中
  3. ps_load_success — 批次已引入配置文件服务

数据摄取webhook

有关通知的更多详细信息,请参阅文档

使用平台API批量摄取数据

现在,让我们使用API上传数据。

NOTE
数据架构师随时可以通过用户界面方法上传CRM数据。

下载并准备数据

  1. 您应该已经下载luma-data.zip并将其解压缩到您的Luma Tutorial Assets文件夹中。
  2. 在文本编辑器中打开luma-crm.json并使用您自己的下划线租户ID替换_techmarketingdemos的所有实例,如您的架构中所示
  3. 保存更新的文件

获取数据集ID

首先,我们获取要向其引入数据的数据集的数据集ID的ID:

  1. 打开Postman
  2. 如果您没有访问令牌,请打开请求​ OAuth: Request Access Token,然后选择​ 发送 ​以请求新的访问令牌,就像在Postman课程中一样。
  3. 打开您的环境变量,并确保​ CONTAINER_ID ​的值仍为tenant
  4. 打开请求​ Catalog Service API > Datasets > Retrieve a list of datasets. ​并选择​ 发送
  5. 您应会收到200 OK响应
  6. 从响应正文中复制Luma CRM Dataset的ID
    获取数据集ID

创建批次

现在,我们可以在数据集中创建一个批次:

  1. 数据摄取API.postman_collection.json下载到Luma Tutorial Assets文件夹

  2. 将集合导入Postman

  3. 选择请求​ Data Ingestion API > Batch Ingestion > Create a new batch in Catalog Service.

  4. 将以下内容粘贴为请求的​ Body将datasetId值替换为您自己的

    code language-json
    {
        "datasetId":"REPLACE_WITH_YOUR_OWN_DATASETID",
        "inputFormat": {
            "format": "json"
        }
    }
    
  5. 选择​ 发送 ​按钮

  6. 您应该会收到一个包含新批次ID的201已创建响应!

  7. 复制新批次的id
    已创建 批次

摄取数据

现在,我们可以将数据上传到批次中:

  1. 选择请求​ Data Ingestion API > Batch Ingestion > Upload a file to a dataset in a batch.

  2. 在​ 参数 ​选项卡中,在相应的字段中输入您的数据集ID和批次ID

  3. 在​ 参数 ​选项卡中,输入luma-crm.json作为​ filePath

  4. 在​ 正文 ​选项卡中,选择​ 二进制 ​选项

  5. 从本地Luma Tutorial Assets文件夹中选择下载的luma-crm.json

  6. 选择​ 发送,您应该会在响应正文中获得一个“200 OK”响应,其中包含“1”

    数据已上传

此时,如果您在Platform用户界面中查看批次,会看到该批次处于“正在加载”状态:
批次加载

由于批处理API通常用于上传多个文件,因此您需要在批处理完成时告知Platform,我们将在下一步中执行此操作。

完成批次

要完成批处理,请执行以下操作:

  1. 选择请求​ Data Ingestion API > Batch Ingestion > Finish uploading a file to a dataset in a batch.

  2. 在​ 参数 ​选项卡中,输入COMPLETE作为​ 操作

  3. 在​ 参数 ​选项卡中,输入您的批次ID。 如果数据集id或filePath存在,请不要担心。

  4. 确保POST的URL为https://platform.adobe.io/data/foundation/import/batches/:batchId?action=COMPLETE,并且没有对datasetIdfilePath的任何不必要的引用

  5. 选择​ 发送,您应该会在响应正文中获得一个“200 OK”响应,其中包含“1”

    批次完成

验证数据

在Platform用户界面中验证

验证数据是否已抵达Platform用户界面,就像您对Loyalty数据集所做的那样。

首先,确认该批次显示已摄取1000条记录:

批次成功

接下来,使用预览数据集确认批次:

批次预览

最后,通过按照Luma CRM Id命名空间查找其中一个配置文件来确认您的其中一个配置文件已创建,例如112ca06ed53d3db37e4cea49cc45b71e

已摄取配置文件

有一件有趣的事情刚发生过,我想指出来。 打开该Danny Wright配置文件。 配置文件同时具有LumacrmidLumaloyaltyid。 请记住Luma Loyalty Schema包含两个标识字段:Luma忠诚度ID和CRM ID。 现在,我们已经上传了两个数据集,它们合并到了一个配置文件中。 忠诚度数据将Daniel作为名字,将“New York City”作为家庭地址,而CRM数据将Danny作为名字,Portland作为具有相同忠诚度ID的客户的家庭地址。 我们将回顾合并策略课程中名字显示Danny的原因。

恭喜,您刚刚合并了配置文件!

配置文件已合并

使用数据摄取事件进行验证

如果您在上一课程中订阅了数据摄取事件,请检查您独特的webhook.site URL。 您应该会看到三个请求进入,就像忠诚度数据一样:

数据摄取webhook

有关通知的更多详细信息,请参阅文档

通过工作流引入数据

我们来看一下另一种上传数据的方法。 工作流功能允许您摄取尚未在XDM中建模的CSV数据。

下载并准备数据

  1. 您应该已经下载luma-data.zip并将其解压缩到您的Luma Tutorial Assets文件夹中。
  2. 确认您拥有luma-products.csv

创建工作流

现在,让我们设置工作流:

  1. 在左侧导航中转到​ 工作流
  2. 选择​ 将CSV映射到XDM架构 ​并选择​ 启动 ​按钮
    启动工作流
  3. 选择您的Luma Product Catalog Dataset并选择​ 下一步 ​按钮
    选择您的数据集
  4. 添加您下载的luma-products.csv文件并选择​ 下一步 ​按钮
    选择您的数据集
  5. 现在您位于映射器界面中,可以在其中将源数据(luma-products.csv文件中的列名之一)中的字段映射到目标架构中的XDM字段。 在我们的示例中,列名称与架构字段名称足够接近,因此映射器能够自动检测正确的映射! 如果映射器无法自动检测右字段,则可以选择目标字段右侧的图标以选择正确的XDM字段。 此外,如果您不想从CSV摄取其中一列,则可以从映射器中删除该行。 欢迎在luma-products.csv中随意玩耍和更改列标题,以熟悉映射器的工作方式。
  6. 选择​ 完成 ​按钮
    选择您的数据集

验证数据

上传批次后,通过预览数据集验证上传。

由于Luma Product SKU是非人员命名空间,因此我们将不会看到产品SKU的任何配置文件。

您应该会看到对webhook的三个点击。

通过源引入数据

好吧,你做了很艰难的事。 现在,让我们进入​ 自动化 ​批量摄取的乐土! 当我说“SET IT!” 你说,“算了!” “设置它!” “算了!” “设置它!” “算了!” 开玩笑的,你绝不会做这种事! 好了,回去工作。 你快完成了。

在左侧导航中转到​ ​以打开源目录。 在这里,您将看到与业界领先的数据和存储提供商的各种现成的集成。

Source目录

好,让我们使用源连接器摄取数据。

这个练习将是你自己选择冒险的方式。 我将展示使用FTP源连接器的工作流。 您可以使用在公司中使用的其他云存储源连接器,也可以使用数据集用户界面上传json文件,就像我们处理忠诚度数据时所做的那样。

许多源都具有类似的配置工作流,您可以在其中执行以下操作:

  1. 输入您的身份验证详细信息
  2. 选择要摄取的数据
  3. 选择要将其摄取到的Platform数据集
  4. 将字段映射到您的XDM架构
  5. 选择要从该位置摄取数据的频率
NOTE
我们将在本练习中使用的离线购买数据包含日期时间数据。 日期时间数据应采用ISO 8061格式字符串("2018-07-10T15:05:59.000-08:00")或以毫秒(1531263959000)为单位的Unix时间格式,并在摄取时转换为目标XDM类型。 有关数据转换和其他约束的详细信息,请参阅批次摄取API文档

下载、准备数据并将其上传到您首选的云存储供应商

  1. 您应该已经下载luma-data.zip并将其解压缩到您的Luma Tutorial Assets文件夹中。
  2. 在文本编辑器中打开luma-offline-purchases.json并使用您自己的下划线租户ID替换_techmarketingdemos的所有实例,如您的架构中所示
  3. 更新所有时间戳,以便事件发生在上个月(例如,搜索"timestamp":"2022-06并替换年和月)
  4. 选择首选的云存储提供商,确保它在源目录中可用
  5. luma-offline-purchases.json上载到首选云存储提供商中的位置

将数据摄取到您的首选云存储位置

  1. 在Platform用户界面中,将源目录筛选为​ 云存储

  2. 请注意,...下有指向文档的便捷链接

  3. 在首选云存储供应商的框中,选择​ 配置 ​按钮
    选择配置

  4. 身份验证 ​是第一步。 输入帐户的名称,例如Luma's FTP Account和身份验证详细信息。 对于所有云存储源,此步骤应该都非常相似,尽管字段可能略有不同。 输入帐户的身份验证详细信息后,您可以将其重新用于其他源连接,这些源连接可能按不同计划发送与同一帐户中其他文件不同的数据

  5. 选择​ 连接到源按钮

  6. 当平台成功连接到Source时,选择​ 下一步 ​按钮
    验证源

  7. 在​ 选择数据 ​步骤中,用户界面将使用您的凭据打开云存储解决方案上的文件夹

  8. 选择要摄取的文件,例如luma-offline-purchases.json

  9. 选择XDM JSON作为​ 数据格式

  10. 然后,您可以预览文件中的json结构和示例数据

  11. 选择​ 下一步 ​按钮
    选择您的数据文件

  12. 在​ 映射 ​步骤中,选择您的Luma Offline Purchase Events Dataset并选择​ 下一步 ​按钮。 在消息中请注意,由于我们要摄取的数据是JSON文件,因此没有将源字段映射到目标字段的映射步骤。 JSON数据必须已位于XDM中。 如果您正在摄取CSV,您将在以下步骤中看到完整映射用户界面:
    选择您的数据集

  13. 在​ 计划 ​步骤中,您可以选择从Source中摄取数据的频率。 请花些时间查看相关选项。 我们即将执行一次性摄取,因此将​ 频率 ​保留在​ 一次 ​并选择​ 下一步 ​按钮:
    计划您的数据流

  14. 在​ 数据流详细信息 ​步骤中,您可以选择数据流名称、输入可选描述、打开错误诊断以及部分摄取。 保持设置不变并选择​ 下一步 ​按钮:
    编辑数据流的详细信息

  15. 在​ 审核 ​步骤中,您可以同时审核所有设置并进行编辑或选择​ 完成 ​按钮

  16. 保存后,您将登陆到如下屏幕:
    完成

验证数据

上传批次后,通过预览数据集验证上传。

您应该会看到对webhook的三个点击。

再次在loyaltyId命名空间中查找值为5625458的配置文件,查看其配置文件中是否有任何购买事件。 您应该会看到一次购买。 您可以通过选择​ 查看JSON ​来深入了解购买的详细信息:

个人资料中的购买事件

ETL工具

与多个ETL供应商Adobe合作伙伴以支持将数据摄取到Experience Platform中。 由于第三方供应商的多样性,本教程中不包含ETL,但欢迎您查看以下部分资源:

其他资源

现在,让我们使用Web SDK 流式传输数据

recommendation-more-help
513160b6-bf42-4c58-abdd-4f817b1cccad