使用 Azure 数据工厂模板从数据库批量复制到 Azure 数据资源管理器

Azure 数据资源管理器是一项快速、完全托管的数据分析服务。 它针对从许多源(例如应用程序、网站和 IoT 设备)流式传输的大量数据提供实时分析。

若要将数据从 Oracle Server、Netezza、Teradata 或 SQL Server 中的数据库复制到 Azure 数据资源管理器,必须从多个表加载大量数据。 通常情况下,必须在每个表中对数据分区,以便使用多个线程从单个表并行加载行。 本文介绍可以在这些方案中使用的模板。

Azure 数据工厂模板 是预定义的数据工厂管道。 这些模板可帮助你快速开始使用数据工厂,并减少数据集成项目的开发时间。

可以使用 Lookup 和 ForEach 活动创建“从数据库批量复制到 Azure 数据资源管理器”模板。 为了更快地复制数据,可以使用模板为每个数据库或每个表创建多个管道。

重要

请务必使用适合要复制的数据量的工具。

  • 使用 从数据库大容量复制到 Azure 数据资源管理器 模板,将大量数据从 SQL Server 和 Google BigQuery 等数据库复制到 Azure 数据资源管理器。
  • 使用 数据工厂复制数据工具 将少量或中等数据的几个表复制到 Azure 数据资源管理器中。

先决条件

创建 ControlTableDataset

ControlTableDataset 指示哪些数据将从源复制到管道的目标。 行数指示复制数据所需的管道总数。 应将 ControlTableDataset 定义为源数据库的一部分。

以下代码显示了 SQL Server 源表格式的示例:

CREATE TABLE control_table (
PartitionId int,
SourceQuery varchar(255),
ADXTableName varchar(255)
);

下表描述了代码元素:

资产 DESCRIPTION 示例:
分区ID 复制顺序 1
SourceQuery 指示在管道运行时期间要复制哪些数据的查询
select * from table where lastmodifiedtime LastModifytime >= ''2015-01-01 00:00:00''>
ADXTableName 目标表名称 MyAdxTable

如果您的 ControlTableDataset 格式不同,请为您的格式创建一个可比的 ControlTableDataset。

使用“从数据库批量复制到 Azure 数据资源管理器”模板

  1. 在“ 开始” 窗格中, 从模板中选择“创建管道 ”以打开 “模板库 ”窗格。

    Azure 数据工厂“让我们开始”窗格

  2. 选择 从数据库批量复制到 Azure 数据资源管理器 模板。

    “从数据库批量复制到 Azure 数据资源管理器”模板

  3. 在 “从数据库批量复制到 Azure 数据资源管理器” 窗格中,在 “用户输入”下,通过执行以下操作来指定您的数据集:

    a。 在 ControlTableDataset 下拉列表中,选择与控制表相连接的服务,该表说明哪些数据将从源复制到目标,以及这些数据将在目标中的何处放置。

    b. 在 SourceDataset 下拉列表中,选择源数据库的链接服务。

    选项c. 在 AzureDataExplorerTable 下拉列表中,选择 Azure 数据资源管理器表。 如果数据集不存在, 请创建 Azure 数据资源管理器链接服务 以添加数据集。

    d。 选择“使用此模板” 。

    “从数据库批量复制到 Azure 数据资源管理器”窗格

  4. 在画布中选择活动外部的一个区域以访问模板流水线。 选择“ 参数 ”选项卡可输入表的参数,包括 名称 (控制表名)和 默认值 (列名)。

    管道参数。

  5. 在 “查找”下,选择 “GetPartitionList ”以查看默认设置。 将自动创建查询。

  6. 选择命令活动 ForEachPartition,选择 “设置” 选项卡,然后执行以下作:

    a。 在 “批处理计数 ”框中,输入一个介于 1 到 50 的数字。 此选择决定并行运行的管道数量,直到达到 ControlTableDataset 行数。

    b. 若要确保管道批处理并行运行, 请不要 选中 “顺序 ”复选框。

    ForEachPartition 设置。

    小窍门

    最佳做法是并行运行多个管道,以便更快地复制数据。 为了提高效率,请根据日期和表对源表中的数据进行分区,并为每个管道分配一个分区。

  7. 选择“ 全部验证 ”以验证 Azure 数据工厂管道,然后在 “管道验证输出 ”窗格中查看结果。

    验证模板管道。

  8. 如有必要,请选择 “调试”,然后选择“ 添加触发器 ”以运行管道。

    “调试”和“运行管道”按钮

现在,可以使用模板有效地从数据库和表复制大量数据。