您能否解释一下SSIS包中各种配置(xml,环境变量等)的优缺点?
答案 0 :(得分:3)
您可以得出自己的结论here
但根据我的观点:
在“SQL Server”上,您有一个中央数据库表,可以在服务器和程序包之间存储和共享配置条目。但是,您需要一种方法来告诉您的软件包连接哪个服务器以获取配置。
“XML文件和环境变量”与机器有关,因此如果您有多个使用相同文件的软件包,您将拥有多个配置副本,每台机器一个,并且此配置不会集中。
当包使用执行包任务执行另一个包时,您也可以使用“父包变量配置”。
老实说,我更喜欢“SQL Server”,因为在生产环境中,开发人员的访问权限非常有限,您通常对数据库具有读访问权限,但如果XML文件所在,您无权访问服务器,如果你需要检查一个配置值,你只需在数据库上运行一个选择,而不是你使用的文件更复杂。
答案 1 :(得分:0)
SQL Server Integration Services(SSIS)是一个用于创建ETL包的非常强大的工具。使其如此强大的部分原因是它能够使用包配置。软件包配置允许您从外部存储软件包所需的信息,以便可以轻松更改信息,而无需重新编写软件包本身。您可以存储连接字符串,变量值,包密码,隔离级别等等。基本上,如果您可以在SSIS中设置值,则可以将其存储在程序包配置中。这使得修改包,例如从QA转移到生产,或生产服务器的名称更改时,更容易。包装配置有多种口味,您使用的配置取决于您的个性化需求。此外,每种类型都以不同方式存储数据,因此在某些情况下可以保存多个值,而在其他情况下,您只能存储一个值。以下是包配置类型的快速细分。
XML配置文件 - 多个值可以存储在磁盘上的XML文件中
环境变量 - 单个值可以存储在Windows环境变量
注册表项 - 单个值可以存储在注册表项中
父包变量 - 父包可以将变量传递给包含配置值的包
SQL Server - 可以将多个值存储在SQL Server上的表中