Data Lake Storage 数据源的增量刷新
对基于 Azure Data Lake Storage 的数据源进行增量刷新具有以下优点:
- 刷新速度更快 - 仅刷新已更改的数据。 例如,可以仅刷新过去五天的历史数据集。
- 提高可靠性 - 因为刷新量较小,所以无需长时间与不稳定源系统保持连接,从而可以降低连接问题风险。
- 减少资源消耗 - 仅刷新所有数据中的一小部分,从而更有效地使用计算资源和降低对环境的破坏。
为 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 小时,其中包含 Upserts 和 Deletes 文件夹。 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 数据源配置增量刷新
添加或编辑数据源时,导航到表的属性窗格。
查看属性。 确保使用 dateTime数据格式和 Calendar.Date语义类型设置创建或上次更新日期属性。 如有必要,编辑属性,然后选择完成。
在选择表窗格中,编辑表。 将选中增量引入复选框。
- 浏览到包含完整数据、增量数据插入和增量数据删除的 .csv 或 .parquet 文件的根文件夹。
- 输入完整数据和两个增量文件(.csv 或 .parquet)的扩展名。
- 对于 .csv 文件,选择列分隔符以及是否要将文件的第一行作为列标题。
- 选择保存。
对于上次更新时间,选择日期时间戳属性。
如果未选择主键,选择主键。 主键是表所特有的属性。 若要使属性成为有效主键,它不应包括重复值、缺少值或 null 值。 支持将字符串、整数和 GUID 数据类型属性作为主键。
选择关闭保存并关闭窗格。
继续添加或编辑数据源。
对 Azure Data Lake 数据源运行一次性完全刷新
为 Azure Data Lake 数据源配置增量刷新后,有时需要通过完全刷新来处理数据。 为增量刷新设置的完整数据文件夹必须包含完整数据的位置。
编辑数据源时,导航到选择表窗格,编辑要刷新的表。
在编辑表窗格中,滚动到运行一次性完全刷新复选框,选中它。
对于处理的增量文件来自,指定保留增量文件的日期和时间。 完整数据加上增量数据将在指定日期和时间后开始处理。 例如,如果要在 11 月底之前执行部分数据刷新/回填,同时保留从 12 月初到今天(12 月 30 日)的增量数据,输入 12 月 1 日。 要替换所有数据,忽略增量文件夹中的数据,指定未来的日期。
选择关闭保存并关闭窗格。
选择保存应用您的更改并返回到数据源页面。 数据源已处于正在刷新状态,执行完全刷新。