Tsql 为什么我要在SQLServer2008中使用SSIS包而不是其他技术?
我在一个内部开发小组的QA部门工作。我们的生产数据库程序员一直在构建一个SSIS包,从各种数据库位创建一个加载文件,以便导入到第三方应用程序中(我们正在测试与此的集成) 构建之后,人们很快发现它依赖于创建它时使用的SQL Server和Visual Studio版本,并且对生产环境的依赖性也很少(这不是SSIS问题,只是描述了设置的性质) 构建这个需要几天的努力,然后在我们的QA环境下无法运行 在向该团队询问他们的包正在运行的SQL查询(在生产环境中工作正常)之后,我编写了一个python脚本,该脚本在没有任何依赖项的情况下执行相同的任务。我花了两个多小时(注意,我已经有一个自定义库来处理我们的数据库交互),并且我能够写出我需要的UTF-16LE文件 现在,我们的生产数据库程序员不是SSIS专家,但他们在工作流程中使用了相当多的SSIS——我很乐意称他们所有人都能胜任他们的工作Tsql 为什么我要在SQLServer2008中使用SSIS包而不是其他技术?,tsql,ssis,meta,Tsql,Ssis,Meta,我在一个内部开发小组的QA部门工作。我们的生产数据库程序员一直在构建一个SSIS包,从各种数据库位创建一个加载文件,以便导入到第三方应用程序中(我们正在测试与此的集成) 构建之后,人们很快发现它依赖于创建它时使用的SQL Server和Visual Studio版本,并且对生产环境的依赖性也很少(这不是SSIS问题,只是描述了设置的性质) 构建这个需要几天的努力,然后在我们的QA环境下无法运行 在向该团队询问他们的包正在运行的SQL查询(在生产环境中工作正常)之后,我编写了一个python脚本,
因此,我的问题是——考虑到它所花费的时间以及对SQL Server和Visual Studio版本的依赖性,SSIS包带来了哪些我在python代码中可能看不到的优势或好处?或者是shell脚本,或者是Ruby,或者是目前流行的代码风格?我不是SSIS方面的专家,而是一个拥有三年多SSIS工作经验的普通开发人员。与任何其他软件一样,SSIS也有不足之处,但到目前为止,我很喜欢使用SSIS。技术的选择取决于一个人的需求和偏好。我不会说SSIS优于其他技术。此外,我还没有使用Python、Ruby或您提到的其他技术 这是我的两分钱。请把这个和盐放在一起
日志记录
捕获包及其任务执行的每个操作的功能。它有助于查明错误或跟踪有关包执行的操作的信息。这不需要编码。用于日志记录检查点
有助于像记录器一样捕获包执行,并有助于从故障点重新启动包执行,而不是从一开始就运行包表达式
可用于根据给定条件确定包装流程dtsconfig
文件或基于机器的环境变量为不同的环境设置包配置。用于基于环境变量的配置。第4点至第7点是开箱即用的功能,需要少量配置,根本不需要编码3小时
这可能不是您所期望的答案,但我希望这能提供一个想法。一个开发人员可能想使用Python,另一个Ruby,第三个Perl——这比让所有开发人员都使用SSI更好吗?SSI是专为这类工作设计的(ETL——加载、大量转换数据)和b)是SQL Server的一部分,不需要额外的依赖项(如Python解释器/运行时等)?这是我的问题-是什么让SSI对您喜爱的语言具有吸引力?主要是:(1)它已经是SQL Server的一部分-不需要额外的安装(没有Python解释器或运行时),以及(2)它是