I think I may of been put off SSIS by having to use DTS in the past.A .NET product I worked on (prior to me working on it) used DTS to do imports and exports that were initiated through a .NET windows application.

This was HELL to configure and maintain plus clients IT teams would always complain about the security.

A lot of things that are wrong with DTS are still wrong with it's replacement SSIS. That is (unless I'm mistaken, which I admit could be true):1) you can't have DB level packages2) Because of (1) you can't grant on a per package basis a user/role permission to run it.3) Because of (2) running a package from a stored procedure requires using a proxy account or grant a user more permissions than you actually want them to have.

If you are using SSIS as one offs that manually get run (e.g. during migration of data from legacy system to new SQL Server system) or as a job that's run in SA context then they might be alright. Anything else, no thanks.

I still consider it a nicely featured Beta product.It is powerful and certainly up to any task thrown at it now in 2008 (or even better in R2) but the interface and how the tasks are integrated is not a common user experience. However this complexity also serves SSIS well when a task is required that is not part of the standard - it is up to the programmer/developer simply to make it up (or fudge it with a stored procedure) and it will do the job.

DTS was simpler but with more limitations.

Considering SSIS's price as a platform it is a very nice product in comparison to the big packages like Data Integrator but still has a long way to go to produce a nice homogenous user experience.

I appreciate the extra flexibility of SSIS (over DTS) but my main complaint is it is very tender. Meaning, things that would have been passed over in DTS (say very changes in a source file format) seem to cause failure, which often causes extra work. Despite the extra flexibility it seems no easier to deduce what the problem might actually be.

My DBA (I am a dev really) curses its capricity, although admittedly his general nature dictates a dislike of change etc.

I've never used DTS but I have a love-hate affair with SSIS - I think it's incredibly useful and almost always appear evangelical on the topic, but as stated by an earlier poster it is capricious. About two thirds of my time is spent dealing with what are quirks/limitations of the system, for instance I often pull my hair out trying to get the data types of unicode and non-unicode to match up between datasets and tasks, as opposed to actually developing the actual flow.

Compared to DTS it is a huge step up. Compared to tools like Sagent, Informatica, and Ab Initio it is still a "better than nothing but not ready for prime time" tool. It is inexpensive but you get what you paid for. Hopefully it will continue to improve.

For shops that have no .net development expertise (or desire to do so) its a good tool. Also very good for shops that have lots of varying but lightweight integration tasks to do on a regular basis.

Having said that, for those that have a few specific and consistent integration jobs that are a regular part of the production environment I would always use a purpose built solution in .NET (or C++ if you need that level of performance). In my experience the result is more efficient and reliable solution because you can add robust error detection and recovery procedures that make these jobs bulletproof. Does require competent .net software developer(s) though.

The probability of survival is inversely proportional to the angle of arrival.

sturner (11/4/2011)For shops that have no .net development expertise (or desire to do so) its a good tool. Also very good for shops that have lots of varying but lightweight integration tasks to do on a regular basis.

Having said that, for those that have a few specific and consistent integration jobs that are a regular part of the production environment I would always use a purpose built solution in .NET (or C++ if you need that level of performance). In my experience the result is more efficient and reliable solution because you can add robust error detection and recovery procedures that make these jobs bulletproof. Does require competent .net software developer(s) though.

Yep thats effectively what we did on the product I mentioned earlier when we dumped SQL 2000 (and hence DTS) and moved to SQL 2005/8. We wrote a solution into our .NET product rather than attempt to convert everything to SSIS (the conversion tool found lots of things in the DTS package that would require intervention)

I agree that Enterprise jobs should not use SSIS but use custom .NET code for importing and exporting complex file formats. We only use SSIS for one offs that can be ran manually. All other type of data integration tasks we use MS queues that call custom .net code. SSIS packages break frequently, our custom .NET code has been running 24/7 for 8 years without error (other than network outages) and processing millon of dollars in payments.