规划从 Azure 数据工厂迁移

Microsoft Fabric 是一种数据分析 SaaS 产品,可将Microsoft的分析工具合并为一种体验。 结构数据工厂提供与 Azure 数据工厂(ADF)类似的工作流业务流程、数据移动、复制和转换。 如果要实现 ADF 投资的现代化,本指南将帮助你了解迁移注意事项、策略和方法。

从 ADF 和 Synapse 管道迁移到 Fabric 数据工厂具有以下优势:

Fabric 专为自助服务和 IT 托管的企业数据而设计。 它可缩放以满足大型组织的需求,提供安全、可管理且可访问的解决方案。

随着数据量和复杂性的增长,Fabric 为数据集成开发人员和解决方案提供高级功能。 许多客户正在探索是否在 Fabric 中整合其数据集成解决方案。 常见问题包括:

  • Fabric 是否支持我们依赖的所有功能?
  • Fabric 提供哪些独特功能?
  • 如何将现有管道迁移到 Fabric?
  • 企业数据引入Microsoft路线图是什么?

平台差异

迁移整个 ADF 实例涉及了解 ADF 与结构数据工厂之间的主要差异。 本部分重点介绍这些差异。

有关功能的详细比较,请参阅 “在 Fabric 和 Azure 数据工厂中比较数据工厂”。

本部分介绍以下主要差异:

  • 集成运行时:Fabric 默认使用基于云的计算,而 ADF 需要配置集成运行时。 Fabric 还支持用于本地数据访问的 本地数据网关 和用于安全网络连接的 虚拟网络数据网关
  • 管道:构造管道包括其他基于 SaaS 的活动,在 JSON 定义中有所不同。
  • 链接服务:Fabric 将链接服务替换为活动内定义的连接。
  • 数据集:Fabric 消除了数据集,在活动中内联定义数据属性。
  • 数据流:构造数据流使用 Power Query,而 ADF 数据流依赖于不同的执行引擎和语言。
  • 触发器:Fabric 将触发器集成到其激活器框架中,这与 ADF 的独立触发器不同。
  • 调试:Fabric 通过删除对单独调试模式的需求来简化调试。
  • 更改数据捕获:Fabric 通过复制作业而不是 CDC 项目管理增量数据移动。
  • Azure Synapse Link:Fabric 将 Synapse Link 替换为用于数据复制的镜像功能。
  • SQL Server Integration Services (SSIS):Fabric 当前不支持 SSIS IR,但允许调用 ADF 管道来执行 SSIS。
  • 调用管道活动:Fabric 使用跨平台调用增强了 ADF 的执行管道活动。

集成运行时

在 ADF 中,集成运行时(IR)是定义用于数据处理的计算资源的配置对象。 其中包括用于本地连接的云计算、用于本地连接的自承载 IR、SQL Server Integration Services 的 SSIS IR 和已启用 VNet 的云 IR。

Azure 数据工厂中的“集成运行时”选项卡的屏幕截图。

Fabric 作为 SaaS 产品,通过在 Fabric 容量区域中使用基于云的计算来简化此作。 SSIS IR 在 Fabric 中不可用。 对于本地连接,请使用 本地数据网关 (OPDG)。 若要建立安全的网络连接,请使用虚拟网络数据网关。

迁移时,无需移动公用网络 Azure IP。 将 SHIR 重新创建为 OPDG,将已启用 VNet 的 Azure IR 重新创建为 虚拟网络数据网关

Fabric 管理页上的“管理连接和网关”选项的屏幕截图。

Pipelines

ADF 中的管道处理数据移动、转换和业务流程的工作流。 结构管道类似,但包括其他组件,例如电子邮件、Teams 和语义模型刷新的本机活动。

Fabric 管道的 JSON 定义与 ADF 略有不同,因此无法直接复制/粘贴或导入/导出管道 JSON。 使用相同的工作流模型和技能在 Fabric 中重新生成 ADF 管道,但请注意,来自 ADF 的链接服务和数据集在 Fabric 中不存在。

链接服务

在 ADF 中,链接服务定义数据存储的连接属性。 在 Fabric 中,在复制和数据流等活动中重新创建这些连接。

数据集

ADF 中的数据集定义数据属性,例如类型、列和位置。 在 Fabric 中,这些属性在管道活动和 Connection 对象中内联定义。

数据流

构造数据工厂使用 数据流 进行无代码数据转换(基于 Power Query 构建)。 在 ADF 中,类似的功能称为 数据流,该数据流使用不同的接口和执行引擎。 迁移时,重新创建 ADF 数据流 作为 Fabric 数据流

触发器

ADF 中的触发器根据计划、事件或自定义触发器执行管道。 Fabric 使用类似的概念,但将触发器集成到其实时智能框架中,称为 激活器

结构计划是平台级实体,而不是特定于管道的实体。 重新生成 ADF 计划触发器作为 Fabric 计划,并将激活器用于其他触发器类型。

Fabric 管道编辑器中“添加触发器”按钮的屏幕截图。

调试

Fabric 通过消除 ADF 的 调试模式简化了调试。 始终处于交互模式。 若要测试管道,请在编辑器中选择播放按钮。 使用活动状态来激活或停用用于测试的特定活动。

变更数据捕获

ADF 的变更数据捕获(CDC)功能支持增量数据移动。 在 Fabric 中,将 CDC 项目重新创建为 复制作业 项以获取类似的功能。 有关详细信息,请参阅 复制作业

Synapse Link,用于 Synapse 管道,将数据从 SQL 数据库复制到数据湖。 在 Fabric 中,重新创建这些项作为镜像项。 在 Fabric 中查看镜像

SQL Server Integration Services (SSIS)

Fabric 不支持 SSIS IR。 目前,若要执行 SSIS 包,请使用 ADF 管道,并使用 Invoke 管道活动从 Fabric 调用它。 请参阅 “调用管道”活动

“调用管道”活动

Fabric 的 调用管道活动 增强了 ADF 的执行 管道活动。 使用它从 Fabric 管道内联调用 ADF 管道,维护特定于 ADF 的功能,例如映射数据流或 SSIS。

示例迁移方案

根据用例,从 ADF 迁移到 Fabric 可能会涉及不同的策略。 本部分概述了有助于有效规划的常见迁移路径和注意事项。

方案 1:ADF 管道和数据流

通过将管道和数据流迁移到 Fabric,实现 ETL 环境的现代化。 规划以下元素:

  • 重新创建链接服务作为连接。
  • 在管道活动中内联定义数据集属性。
  • 将 SHIR(自承载集成运行时)替换为 OPDG(本地数据网关),将 VNet IR 替换为虚拟网络数据网关。
  • 使用 Fabric 替代项或调用管道活动重新生成不支持的 ADF 活动。 不支持的活动包括:
    • Data Lake Analytics (U-SQL),已弃用的 Azure 服务。
    • 可以使用 Get Metadata、管道循环和 If 活动重新生成验证活动。
    • Power Query,它作为数据流完全集成到 Fabric 中,可在其中重复使用 M 代码。
    • 笔记本、Jar 和 Python 活动可以替换为 Fabric 中的 Databricks 活动。
    • Hive、Pig、MapReduce、Spark 和流式处理活动可以替换为 Fabric 中的 HDInsight 活动。

例如,下面是 ADF 数据集配置页,其中包含其文件路径和压缩设置: ADF 数据集配置页的屏幕截图。

下面是 Fabric 中数据工厂的复制活动,其中压缩和文件路径内联在活动: Fabric 复制活动压缩配置的屏幕截图。

方案 2:具有 CDC、SSIS 和 Airflow 的 ADF

重新创建 CDC 作为 复制作业 项。 对于 Airflow,请将 DAG 复制到 Fabric 的 Apache Airflow 产品/服务中。 使用 ADF 管道执行 SSIS 包,并从 Fabric 调用它们。

方案 3:已启用 Git 的数据工厂迁移

如果 ADF 或 Synapse 工厂连接到外部 Git 提供程序(如 Azure DevOps(ADO)或 GitHub,则需要将这些项迁移到 Fabric 工作区。 这涉及到在 Fabric 中设置 Git 集成,并将工作流与 Fabric 的 CI/CD 功能保持一致。 请参阅 Fabric 中的 Git 集成

Fabric 提供两个主要 CI/CD 选项:

  • Git 集成:将 Fabric 工作区链接到外部 Git 存储库,例如 ADO 或 GitHub,用于版本控制和代码管理。
  • 内置部署管道:使用 Fabric 的本机管道跨环境升级代码,而无需外部 Git 存储库。

在这两种情况下,来自 ADF 的现有 Git 存储库都不适用于 Fabric。 相反,需要指向新的存储库,或在 Fabric 中启动新的 部署管道 ,并在 Fabric 中重新生成管道项。

在 Fabric 工作区中装载 ADF 实例

可以将整个 ADF 工厂装载到 Fabric 工作区中作为本机项。 这样就可以在同一接口中管理 ADF 工厂以及 Fabric 项目。 ADF UI 仍然完全可访问,允许直接从 Fabric 工作区监视、管理和编辑 ADF 工厂项。 但是,管道、活动和集成运行时的执行仍发生在 Azure 资源中。

此功能对于过渡到 Fabric 的组织特别有用,因为它提供了 ADF 和 Fabric 资源的统一视图,简化了迁移的管理和规划。

关于从 ADF 迁移到 Fabric 中的数据工厂的注意事项