当前位置:  开发笔记 > 数据库 > 正文

.Net vs SSIS:SSIS应该用于什么?

如何解决《.NetvsSSIS:SSIS应该用于什么?》经验,为你挑选了4个好方法。

如果我可以选择使用.Net并且可以在.Net中进行数据转换,我何时需要SSIS?是否有一项SSIS会更好的任务?透明度的额外好处值得吗?这是我更舒服的吗?确定这个的最佳做法是什么?



1> Raj..:

好问题.

如果数据传输量巨大?你在处理多个数据文件并需要事务(在文件系统级别和数据库级别)?你在不同的位置处理多个数据源(例如ftp,本地文件系统,数据库)?

如果上面的答案是肯定的,那么继续进行ssis.基本上.net很酷,有小型数据导入/导出工作,但是当你有更复杂的东西时,ssis肯定是赢家

我看到的另一件事是 - 当ssis中的所有内容都可用时,是否值得编写.net代码.(不要误会我 - 我喜欢编码)但是,你编码的任何东西,你需要维护:-)



2> Lars Fastrup..:

我认为项目时间/预算限制以及标准工具的使用是使用SSIS的一些最重要的论据.创建SSIS包大多数时候比尝试在.NET中编写类似代码的方式更快.

但话虽如此,似乎SSIS有很多痛点,有时可能会使这一论点无效.在开发需要在许多不同客户端的不同环境中运行的解决方案时,它确实为我做了.我对项目进行评估的次数越来越多,SSIS看起来太痛苦了.正确构建的.NET解决方案更易于部署,更可靠,更灵活,更易于理解,并且还可以实现非常好的性能.

恕我直言:考虑将SSIS用于您只需部署到一个或两个内部SQL Server环境的项目.否则,.NET方法将很快变得更具吸引力.


@DetectiveEric,无论如何,在向关系数据库加载数据或从关系数据库加载数据时,不应该使用面向对象的编码实践.

3> Luke Puplett..:

我不使用SSIS的论点是:

设计绿地产品,使其具有RESTful数据源,用于项目计划和预算中内置的报告和提取,最好是OData等标准,以便其他工具可以直接插入.

数据馈送应从上游系统中提取和转换,并按需提供; 这样,计划任务,计划任务的配置,任务运行者VM和运行所有这些不可靠调度的人员被否定.

RESTful数据源利用HTTP缓存.

可以轻松地将源/服务/ API移动到弹性云.

SSIS需要找到具有SSIS技能的人,他们喜欢这样做几周.根据我的经验,寻找和保留SSIS开发人员既困难又昂贵,而且人们发现这一点往往低于标准.

SSIS在源代码控制和协作工作方面效果不佳.

与微服务和传统代码库不同,SSIS不适合代码重用.

与REST服务不同,SSIS不易编辑.

SSIS不适用于模块化设计和许多小变更的持续部署,它往往是大批量的可怕版本.

SSIS促进了存储过程的使用,这对SQL是一个热点需求很大.赞成对可扩展的无状态中间层提出要求的设计.

工具笨重且不可靠.

你受微软SSIS路线图的支配.

一旦数据进入应用程序,请考虑写入支持分析,报告和视图的表/服务; 请参阅CQRS和其他应用程序架构模式.

切勿将Excel用作数据 ; 培训员工.

代码是王道.

最终,我将SSIS视为企业IT的遗留物.我想问,"谷歌会使用SSIS吗?" 问题怎么解决?创造性思考.



4> Jojo..:

我想这取决于你在做什么.SSIS非常强大,就像旧的DTS一样.如果你正在装载很多物品并期望不断变化,我会一路走SSIS.如果您只想加载一些商品并且它适用于许多客户,我会把它放在代码中.我更喜欢SSIS用于内部ETL过程,但是当我需要将遗留系统中的数据加载到SQL数据库时,我在客户端商店使用.Net.现在正如我之前所说,如果你有很多转换和许多不同的数据孤岛需要加载,我想你会疯狂地在.Net中这样做,我会去SSIS.如果您只有几个要加载的项目,并且它适用于单个应用程序,并且可以作为应用程序的一部分安装在不同的客户端,我会一直使用.Net.只需2美分.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有