Power Query 和 Data Lake Storage 数据源的增量刷新

基于 Power Query(预览)或 Azure Data Lake Storage 的数据源的增量刷新具有以下优点:

  • 刷新速度更快 - 仅刷新已更改的数据。 例如,可以仅刷新过去五天的历史数据集。
  • 提高可靠性 - 因为刷新量较小,所以无需长时间与不稳定源系统保持连接,从而可以降低连接问题风险。
  • 减少资源消耗 - 仅刷新所有数据中的一小部分,从而更有效地使用计算资源和降低对环境的破坏。

为基于 Power Query(预览版)的数据源配置增量刷新

[本文为预发布文档,可能会发生变化。]

在 Customer Insights - Data 中配置任何 Power Query 数据源以增量刷新数据。 数据源必须具有唯一标识记录的主键列和指示数据上次更新时间的日期/时间列。

重要提示

  • 这是一项预览功能。
  • 预览功能不适合生产使用且功能可能受限。 这些功能在正式发布之前推出,以便客户可以提前使用并提供反馈。
  1. 创建基于 Power Query 的新数据源

  2. 选择支持增量刷新的数据源,如 Azure SQL 数据库

  3. 选择要引入的表。

  4. 完成传输步骤,然后选择下一步

  5. 设置增量刷新对话框中,选择设置打开增量刷新设置。 如果选择跳过,数据源将刷新整个数据集。

    小费

    也可以在以后通过编辑现有数据源来应用增量刷新。

  6. 增量刷新设置中,为创建数据源时选择的所有表配置增量刷新。

    配置增量刷新设置。

  7. 选择表,然后提供以下详细信息:

    • 定义主键:选择表的主键。
    • 定义“上次更新时间”字段:此字段仅显示类型为日期或时间的属性。 选择用于指示记录的上次更新时间的属性。 此属性识别在增量刷新时间范围内的记录。
    • 更新检查频率:指定所需的增量刷新时间范围长度。
  8. 选择保存完成数据源的创建。 数据的初始刷新为完全刷新。 之后,将按照上一步中的配置进行数据增量刷新。

为 Azure Data Lake Storage 数据源配置增量刷新

Microsoft 建议使用 Delta Lake 格式以达到处理大型数据集的最佳性能和结果。 Customer Insights - Data 提供针对 Delta Lake 格式数据进行优化的连接器。 统一等内部流程经过优化,仅增量处理已更改的数据,从而缩短处理时间。

要对 Data Lake 表使用增量引入和刷新,在添加或编辑 Azure Data Lake 数据源时配置该表。 表数据文件夹必须包含以下文件夹:

  • FullData:具有包含初始记录的数据文件的文件夹
  • IncrementalData:具有包含增量更新的 yyyy/mm/dd/hh 格式的日期/时间层次结构文件夹的文件夹。 年、月、日和小时文件夹预计分别为四位数和两位数。 hh 表示更新的 UTC 小时,其中包含 UpsertsDeletes 文件夹。 Upserts 包含具有对现有记录的更新或新记录的数据文件。 Deletes 包含具有要删除记录的数据文件。

增量数据处理顺序

系统会在指定的 UTC 小时结束处理 IncrementalData 文件夹中的文件。 例如,如果系统在 2023 年 1 月 21 日上午 8:15 开始处理增量刷新,将处理文件夹 2023/01/21/07 中的所有文件(表示从上午 7 点到上午 8 点存储的数据文件)。 文件夹 2023/01/21/08(表示仍在生成文件的当前小时时间)中的任何文件在下次运行之前都不会被处理。

如果主键有更新插入和删除两个记录,Customer Insights - Data 将使用最新修改日期的记录。 例如,如果删除时间戳为 2023-01-21T08:00:00,更新插入时间戳为 2023-01-21T08:30:00,将使用更新插入记录。 如果删除发生在更新插入之后,系统将假定该记录已被删除。

为 Azure Data Lake 数据源配置增量刷新

  1. 添加或编辑数据源时,导航到表的属性窗格。

  2. 查看属性。 确保使用 dateTime数据格式Calendar.Date语义类型设置创建或上次更新日期属性。 如有必要,编辑属性,然后选择完成

  3. 选择表窗格中,编辑表。 将选中增量引入复选框。

    为数据源中的表配置增量刷新。

    1. 浏览到包含完整数据、增量数据插入和增量数据删除的 .csv 或 .parquet 文件的根文件夹。
    2. 输入完整数据和两个增量文件(.csv 或 .parquet)的扩展名。
    3. 对于 .csv 文件,选择列分隔符以及是否要将文件的第一行作为列标题。
    4. 选择保存
  4. 对于上次更新时间,选择日期时间戳属性。

  5. 如果未选择主键,选择主键。 主键是表所特有的属性。 若要使属性成为有效主键,它不应包括重复值、缺少值或 null 值。 支持将字符串、整数和 GUID 数据类型属性作为主键。

  6. 选择关闭保存并关闭窗格。

  7. 继续添加或编辑数据源。

对 Azure Data Lake 数据源运行一次性完全刷新

为 Azure Data Lake 数据源配置增量刷新后,有时需要通过完全刷新来处理数据。 为增量刷新设置的完整数据文件夹必须包含完整数据的位置。

  1. 编辑数据源时,导航到选择表窗格,编辑要刷新的表。

  2. 编辑表窗格中,滚动到运行一次性完全刷新复选框,选中它。

    为数据源中的表配置一次性刷新。

  3. 对于处理的增量文件来自,指定保留增量文件的日期和时间。 完整数据加上增量数据将在指定日期和时间后开始处理。 例如,如果要在 11 月底之前执行部分数据刷新/回填,同时保留从 12 月初到今天(12 月 30 日)的增量数据,输入 12 月 1 日。 要替换所有数据,忽略增量文件夹中的数据,指定未来的日期。

  4. 选择关闭保存并关闭窗格。

  5. 选择保存应用您的更改并返回到数据源页面。 数据源已处于正在刷新状态,执行完全刷新。