为什么我需要升级 SSIS 包?

Why do i need to upgrade SSIS packages?

似乎 SSIS 的向后兼容性涵盖了从 SQL 服务器 2008R2 到 SQL 服务器 2017(因为安装了 SQL 服务器 2017 的实例可以使用 PackageFormatVersion = 3 处理 SSIS 包)

问题是为什么我们需要更新 SSIS 包 (.dtsx)

更新 SSIS 包是否有任何性能提升或其他必要条件?

强烈建议更新软件包,因为 SQL 服务器的每个新版本都包含新功能、错误修复和性能改进。有许多文章描述了每个版本的功能,例如:

  • 在SQL Server 2016 package parts 成立,保证高可重用性
  • ODATA 组件是在 2008 R2 之后添加的

您可以参考以下页面了解更多信息:

也不是那个the support of SQL Server 2008 R2 will end soon (2019年7月9日)

SSIS 执行引擎可以 运行 当前版本或旧版本的包。这是自第二个版本以来的一个功能。

为什么我们应该将 SSIS 包从旧版本升级到当前版本,因为执行引擎可以 运行 它们 "as is?" 我能想到您想要这样做的几个原因.

执行性能

SSIS 引擎从磁盘读取作为 SSIS 包的 XML。它确定包版本与 运行 时间引擎版本不匹配,因此在它可以做任何其他事情之前,它必须首先将该包的内存表示升级到当前版本。然后可以开始执行包。包完成,然后丢弃它为升级到当前版本所做的所有工作。升级可能需要一皮秒,也可能需要一分钟。您将为每个包执行支付罚款。

对于 SSIS,增加一两秒和随后的 CPU 升级使用可能不会对服务器的整体负载产生太大影响,因为包 运行 时间通常以分钟为单位,如果不是几个小时,但我始终坚信要善用我的资源。

新功能

正如 Yahfoufi 所提到的,不同版本中包含了许多新功能。我发现从 2008 年到 2012 年的飞跃特别引人注目,因为从包部署模型到项目部署模型的转变非常引人注目,因为日志记录、配置是自动的并且很容易从 SSMS 执行。