导入数据

注意

导入数据时,请记住SFTP存储、存储库Adobe Campaign和活动用户档案限制。

如何收集数据

使用列表中的数据:读取列表

在工作流中发送的数据可以来自列表,据此数据已事先准备好并进行结构化。

此列表可能是直接用Adobe Campaign创建的,或是由​Import a list​选项导入的。 有关此选项的详细信息,请参阅此页面

有关在工作流中使用读取列表活动的详细信息,请参阅读取列表

从文件加载数据

可以从结构化文件中提取工作流中处理的数据,以便将其导入Adobe Campaign。

数据加载(文件)部分可以找到加载活动的描述。

要导入的结构化文件示例:

lastname;firstname;birthdate;email;crmID
Smith;Hayden;23/05/1989;hayden.smith@example.com;124365
Mars;Daniel;17/11/1987;dannymars@example.com;123545
Smith;Clara;08/02/1989;hayden.smith@example.com;124567
Durance;Allison;15/12/1978;allison.durance@example.com;120987

导入数据时的最佳实践

谨慎并遵循下面详述的几个简单规则将有助于确保数据库内数据的一致性,避免在数据库更新或数据导出过程中出现常见错误。

使用导入模板

大多数导入工作流应包含以下活动:Data loading (file)EnrichmentSplitDeduplicationUpdate data

使用导入模板可以非常方便地准备类似的导入并确保数据库中的数据一致性。 了解如何在工作流模板部分构建工作流模板。

在许多项目中,导入是在没有​Deduplication​活动的情况下构建的,因为项目中使用的文件没有重复。 重复有时会从导入其他文件时显示。 因此,重复数据消除很困难。 因此,外部重复数据删除步骤是所有进口工作流的良好预防措施。

切勿假定传入数据是一致、正确的,或由IT部门或Adobe Campaign主管负责处理。 在项目过程中,请牢记数据清理。 在导入数据时,消除重复、协调和维护一致性。

设置循环导入部分中有导入模板示例。

使用平面文件格式

导入的最有效格式是平面文件。 平面文件可以在数据库级别以批量模式导入。

例如:

  • 分隔符:制表符或分号
  • 带标题的第一行
  • 无字符串分隔符
  • 日期格式:YYYY/MM/DD HH:mm:SS

Adobe Campaign无法使用标准文件导入活动导入XML文件。 可以使用JavaScript导入XML文件,但只能使用小卷:每个文件的记录少于10K。

使用压缩和加密

尽可能使用压缩文件进行导入和导出。

在Linux上,可以解压缩文件并同时使用命令行导入。 例如:

zcat nl6/var/vp/import/filename.gz

如果文件不安全,最好对通过网络发送的文件进行加密。 GPG可用于此。

从文件批量加载数据

从文件批量加载数据比实时加载一行更有效(例如,通过Web服务)。

使用Web服务导入效率不高。 最好尽可能使用文件。

调用外部Web服务来实时丰富用户档案,也会导致性能问题和内存泄漏,因为它在线级工作。

如果您需要导入数据,最好使用工作流进行批量导入,而不是使用Web 应用程序或Web服务进行实时导入。

使用数据管理

使用JavaScript以迭代模式(逐行)加载应限制为小卷。

为获得更高的效率,请始终在数据管理工作流中使用​Data Loading (File)​活动。

在增量模式中导入

常规导入必须在增量模式下完成。 这意味着每次只向Adobe Campaign发送修改或新数据,而不是向整个表发送。

完全导入应仅用于初始加载。

使用数据管理而非JavaScript导入数据。

维护一致性

要在Adobe Campaign库中保持数据一致性,请遵循以下原则:

  • 如果导入的数据与Adobe Campaign中的引用表匹配,则应将其与工作流中的该表协调。 不匹配的记录应被拒绝。

  • 确保导入的数据始终为​"normalized"(电子邮件、电话号码、直接邮件地址),并且此规范是可靠的,并且在以后的时间内不会更改。 如果不是这样,某些重复可能会出现在Adobe Campaign库中,而由于不提供进行“模糊”匹配的工具,因此很难管理和删除这些数据。

  • 事务数据应具有合并关键项并与现有数据进行协调,以避免创建重复。

  • 按顺序导入相关文件

    如果导入由多个相互依赖的文件组成,则工作流应确保以正确的顺序导入文件。 文件失败时,不导入其他文件。

  • 在导入​数据时,消除重复、协调并维护一致性。

用例:设置循环导入

如果需要定期导入结构相同的文件,使用导入模板是最佳做法。

此示例说明如何预先设置一个工作流,该工作流可用于导入来自用户档案库中CRM的Adobe Campaign。 有关每个活动的所有可能设置的详细信息,请参阅此部分

  1. 从​Resources > Templates > Workflow templates​创建新的工作流模板。

  2. 添加以下活动:

    • Data loading (file):定义包含要导入的数据的文件的预期结构。
    • Enrichment:协调导入的数据与数据库数据。
    • Split:创建过滤器,根据记录是否可以对帐,以不同方式处理记录。
    • Deduplication:在将数据插入数据库之前,从传入文件中消除重复数据。
    • Update data:使用导入的用户档案更新数据库。

  3. 配置​Data Loading (file)​活动:

    • 通过上传示例文件来定义预期结构。 示例文件应仅包含几行,但包含导入所需的所有列。 检查并编辑文件格式,确保正确设置每列的类型:文本、日期、整数等。 例如:

      lastname;firstname;birthdate;email;crmID
      Smith;Hayden;23/05/1989;hayden.smith@mailtest.com;123456
      
    • 在​Name of the file to load​部分,选择​Upload a file from the local machine​并将字段留空。 每次从此模板创建新工作流时,您都可以在此处指定所需的文件,只要该文件与定义的结构相对应。

      您可以使用任何选项,但必须相应地修改模板。 例如,如果选择​Specified in the transition,则可在前面添加​File Transfer​活动,以检索要从FTP/SFTP服务器导入的文件。 通过S3或SFTP连接,您还可以使用Adobe实时Adobe Campaign平台将细分数据导入客户。 有关详细信息,请参阅此文档

  4. 配置​Enrichment​活动。 此活动的目的是识别传入数据。

    • 在​Enrichment​选项卡中,选择​Add data​并定义导入数据与收件人定位维度之间的链接。 在此示例中,使用​CRM ID​自定义字段创建连接条件。 只要字段允许识别唯一记录,就可以使用所需字段或字段组合。
    • 在​Reconciliation​选项卡中,不选中​Identify the document from the working data​选项。

  5. 配置​Split​活动,以在一个过渡中检索已协调的收件人,在第二个过渡中检索无法协调但拥有足够数据的收件人。

    然后,具有已协调过渡的收件人可以用于更新数据库。 如果文件中有最少一组信息可用,则具有未知过渡的收件人随后可用于在数据库中创建新收件人条目。

    在补充出站收件人中,将选择无法协调且没有足够数据的过渡,并可以在单独的文件中导出,或只是忽略。

    • 在活动的​General​选项卡中,选择​Use the additional data only​作为筛选设置,并确保将​Targeting dimension​自动设置为​Enrichment

      检查​Generate complement​选项,以查看是否无法在数据库中插入任何记录。 如果需要,您随后可以对补充数据应用进一步处理:文件导出、列表更新等。

    • 在​Subsets​选项卡的第一个子集中,在入站人口中添加过滤条件,以仅选择收件人主键不等于0的记录。 这样,在该子集中选择与来自收件人库的数据协调的文件数据。

    • 添加第二个子集,它选择具有足够数据要插入数据库的未协调记录。 例如:电子邮件地址、名字和姓氏。

      子集按其创建顺序进行处理,这意味着当处理第二个子集时,已存在于数据库中的所有记录都已在第一子集中被选择。

    • 在​Complement​中选择前两个子集中未选择的所有记录。

  6. 配置位于先前配置的​Split​活动的第一个出站过渡之后的​Update data​活动。

    • 选择​Update​作为​Operation type,因为入站过渡只包含数据库中已存在的收件人。

    • 在​Record identification​部分,选择​Using reconciliation keys​并定义定位维度和在​Enrichment​中创建的链接之间的键。 在此示例中,使用​CRM ID​自定义字段。

    • 在​Fields to update​部分,指示收件人维中的字段,以使用文件中相应列的值进行更新。 如果文件列的名称与收件人维字段的名称相同或几乎相同,则可以使用魔棒按钮自动匹配不同的字段。

  7. 配置位于包含未协调活动的过渡之后的​Deduplication​收件人:

    • 选择​Edit configuration,将定位维度设置为从工作流的​Enrichment​活动生成的临时模式。

    • 在此示例中,电子邮件字段用于查找唯一用户档案。 您可以使用您确定已填写的任何字段,并且它是唯一组合的一部分。

    • 在​Deduplication method​屏幕中,选择​Advanced parameters​并选中​Disable automatic filtering of 0 ID records​选项,以确保不排除主键等于0(该键应为此过渡的所有记录)的记录。

  8. 配置位于之前配置的​Deduplication​活动之后的​Update data​活动。

    • 选择​Insert​作为​Operation type,因为入站过渡仅包含数据库中不存在的收件人。

    • 在​Record identification​部分,选择​Directly using the targeting dimension​并选择​Recipients​维。

    • 在​Fields to update​部分,指示收件人维中的字段,以使用文件中相应列的值进行更新。 如果文件列的名称与收件人维字段的名称相同或几乎相同,则可以使用魔棒按钮自动匹配不同的字段。

  9. 在​Split​活动的第三个过渡后,如果要跟踪未插入数据的活动,请添加​Data extraction (file)​和​File transfer​活动。 配置这些活动以导出所需列,并在FTP或SFTP服务器上传输文件,从中可以检索文件。

  10. 添加​End​活动并保存工作流模板。

该模板现在可以使用,并且可用于每个新工作流。 然后,需要全部指定包含要在​Data loading (file)​活动中导入的数据的文件。

在处理之前解压缩或解密文件

关于预处理阶段

Adobe Campaign允许您导入压缩或加密文件。 在数据加载(文件)活动中读取它们之前,您可以定义预处理以解压缩或解密文件。

要做到这一点,请执行以下操作:

  1. 使用控制面板生成公钥/私钥对。

    注意

    控制面板适用于在AWS上托管的所有客户(预先托管其营销实例的客户除外)。

  2. 如果Adobe Campaign安装由Adobe托管,请与Adobe客户服务部门联系,在服务器上安装必要的实用程序。

  3. 如果您的Adobe Campaign安装是事先安装的,请安装您要使用的实用程序(例如:GPG、GZIP)以及应用程序服务器上必需的密钥(加密密钥)。

然后,您可以在工作流中使用所需的预处理命令:

  1. 在工作流中添加和配置​File transfer​活动。
  2. 添加​Data loading (file)​活动并定义文件格式。
  3. 勾选 Pre-process the file 选项。
  4. 指定要应用的预处理命令。
  5. 添加其他活动以管理来自文件的数据。
  6. 保存并执行您的工作流。

在下面的用例中给出一个示例。

相关主题:

用例:导入使用控制面板生成的密钥加密的数据

在此用例中,我们将构建一个工作流,以便使用在控制面板中生成的密钥导入外部系统中已加密的数据。

在视频中发现此功能

执行此用例的步骤如下:

  1. 使用控制面板生成密钥对(公共/私有)。 在控制面板文档中提供了详细步骤。

    • 公钥将与外部系统共享,外部系统将使用公钥加密要发送给活动的数据。
    • Campaign Classic将使用私钥解密传入的加密数据。

  2. 在外部系统中,使用从控制面板下载的公钥加密要导入到Campaign Classic的数据。

  3. 在Campaign Classic中,构建一个工作流以导入加密数据,并使用通过控制面板安装的私钥对其进行解密。 为此,我们将按如下方式构建工作流:

    • File transfer 活动:将文件从外部源传输到Campaign Classic。在此示例中,我们希望从SFTP服务器传输文件。
    • Data loading (file) 活动:将文件中的数据加载到控制面板库,然后使用在数据库中生成的私钥进行解密。
  4. 打开​File transfer​活动,然后指定要从中导入加密的。gpg文件的外部帐户。

    有关如何配置活动的全局概念在此部分中可用。

  5. 打开​Data loading (file)​活动,然后根据您的需要配置它。 有关如何配置活动的全局概念在此部分中可用。

    为活动添加预处理阶段,以解密传入数据。 为此,请选择​Pre-process the file​选项,然后在​Command​字段中复制并粘贴此解密命令:

    gpg --batch --passphrase passphrase --decrypt <%=vars.filename%>

    注意

    在本示例中,我们使用控制面板默认使用的密码短语,即“密码短语”。

    如果您过去通过客户关怀请求在实例上安装了GPG密钥,则该密码可能已更改,并且默认情况下与该密码不同。

  6. 单击​OK​以确认活动配置。

  7. 您现在可以运行工作流。 一旦执行,您就可以检入已执行解密的工作流日志以及已导入文件中的数据。

教程视频

此视频演示如何使用GPG密钥解密数据。

此处提供其他Campaign Classic操作方法视频。

在此页面上