你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将本地 SSIS 工作负载迁移到 ADF 或 Synapse 管道中的 SSIS

适用于: Azure 数据工厂 Azure Synapse Analytics(预览版)

概述

将数据库工作负荷从本地 SQL Server 迁移到 Azure 数据库服务(即 Azure SQL 数据库或 Azure SQL 托管实例)时,也需要迁移 SQL Server Integration Services (SSIS)(主要的增值服务之一)上的 ETL 工作负荷。

Azure 数据工厂 (ADF) 或 Synapse 管道中的 Azure-SSIS Integration Runtime (IR) 支持运行 SSIS 包。 预配 Azure-SSIS IR 后,可以使用熟悉的工具(例如 SQL Server Data Tools (SSDT)/SQL Server Management Studio (SSMS),以及 dtinstall/dtutil/dtexec 等命令行实用工具)在 Azure 中部署和运行包。 有关详细信息,请参阅 Azure SSIS 直接迁移概述

本文重点介绍将 ETL 工作负荷从本地 SSIS 迁移到 ADF 中的 SSIS 的过程。 迁移过程包括两个阶段:评估迁移

评估

若要建立完整的迁移计划,可以进行全面的评估,以帮助识别源 SSIS 包中存在的会妨碍成功迁移的问题。

数据迁移助手 (DMA) 是一个可免费下载的工具,可在本地安装和执行以实现此目的。 可以创建“Integration Services”类型的 DMA 评估项目来分批评估 SSIS 包,并识别以下类别的兼容性问题:

  • 迁移阻碍因素:阻碍迁移源包在 Azure-SSIS IR 上运行的兼容性问题。 DMA 将提供指导来帮助你解决这些问题。

  • 信息性问题:源包中使用的部分受支持的或已弃用的功能。 DMA 将提供全面的建议、Azure 中可用的替代方法和缓解步骤来解决这些问题。

在此处获取迁移阻碍因素和信息性问题的详细信息列表。

SSIS 包的四种存储类型

  • SSIS 目录 (SSISDB)。 在 SQL Server 2012 中引入,其中包含一组用于处理 SSIS 项目/包的存储过程、视图和表值函数。
  • 文件系统。
  • SQL Server 系统数据库 (MSDB)。
  • SSIS 包存储。 位于两个子类型之上的包管理层:
    • MSDB:SQL Server 中用于存储 SSIS 包的系统数据库。
    • 托管文件系统:SQL Server 安装路径中用于存储 SSIS 包的特定文件夹。

DMA 当前支持对自 DMA 版本 5.0 以来存储在文件系统包存储SSIS 目录中的包进行批量评估。

获取 DMA,并使用它来执行包评估

迁移

根据源 SSIS 包的存储类型,迁移 SSIS 包的步骤与迁移计划 SSIS 包执行的 SQL 服务器代理作业的步骤可能不同。

这也是使用 SSIS DevOps 工具的实用方法,可以执行批处理包重新部署到迁移目标。

包存储类型 如何迁移 SSIS 包 如何迁移 SSIS 作业
SSISDB 通过 SSDT/SSMS 将包重新部署到托管在 Azure 托管实例中的 SSISDB。 有关详细信息,请参阅在 Azure 中部署 SSIS 包
  • 通过脚本/手动复制方式从本地 SQL Server 代理迁移到 SQL 托管实例代理。 有关详细信息,请参阅通过 Azure SQL 托管实例代理运行 SSIS 包
  • 通过脚本/SSMS/ADF 门户将其转换为 ADF 管道/活动/触发器。 有关详细信息,请参阅 SSMS 计划功能
  • 文件系统 通过 dtinstall/dtutil/手动复制将其重新部署到文件共享/Azure 文件,或将其保留在文件系统中,以通过 VNet/自承载 IR 进行访问。 有关详细信息,请参阅 dtutil 实用工具
  • 通过脚本/手动复制方式从本地 SQL Server 代理迁移到 SQL 托管实例代理。 有关详细信息,请参阅通过 Azure SQL 托管实例代理运行 SSIS 包
  • 通过 SSMS 中的 SSIS 作业迁移向导进行迁移
  • 通过脚本/SSMS/ADF 门户将其转换为 ADF 管道/活动/触发器。 有关详细信息,请参阅 SSMS 计划功能
  • SQL Server (MSDB) 通过 SSMS/dtutil 将其导出到文件系统/文件共享/Azure 文件。 有关详细信息,请参阅导出 SSIS 包 通过脚本/SSMS/ADF 门户将其转换为 ADF 管道/活动/触发器。 有关详细信息,请参阅 SSMS 计划功能
    包存储 通过 SSMS/dtutil 将它们导出到包存储,或通过 dtinstall/dtutil/手动复制将它们重新部署到包存储。 有关详细信息,请参阅使用 Azure-SSIS Integration Runtime 包存储来管理包
  • 通过脚本/手动复制方式从本地 SQL Server 代理迁移到 SQL 托管实例代理。 有关详细信息,请参阅通过 Azure SQL 托管实例代理运行 SSIS 包
  • 通过脚本/SSMS/ADF 门户将其转换为 ADF 管道/活动/触发器。 有关详细信息,请参阅 SSMS 计划功能
  • 其他资源

    后续步骤