The following tests results we recorded while debugging through Visual Studio, so real numbers will be better than what I have recorded, but the results do represent without a doubt the performance differences between the different connections.
Attunity
|
OLE DB
|
Linked Server
|
|
3000 rows |
2 seconds
|
6 seconds
|
10 seconds
|
10,000 rows |
3 seconds
|
10 seconds
|
20 seconds
|
100,000 rows |
19 seconds
|
1 minute 28 seconds
|
3 minutes 2 seconds
|
500,000 rows |
1 minute 23 seconds
|
7 minutes 35 seconds
|
16 minutes 18 seconds
|
1,000,000 rows |
2 minutes 38 seconds
|
16 minutes 37 seconds
|
30 minutes 28 seconds
|
Using the OLE DB connectors doubled the performance of the transfer compared to the Linked Server, and using the Attunity connectors more than doubled the performance of the transfer compared to the OOTB OLE DB connectors! Wow, I was not expecting that.
Using the Attunity connectors is almost exactly the same to using the OOTB OLE DB once they are installed on your system. Simply drag them from the Toolbox onto your Data Flow Task and hook them up to your output.
The one drawback to using the Attunity connectors is that your MS SQL Server has to be the Enterprise edition. This will likely reduce the number of people able to take advantage of the connectors, but if you already have Enterprise, you are good to go!
I found a similar blog post that analyzes the Attunity connectors in more depth:
http://blogs.msdn.com/b/sqlperf/archive/2009/08/14/using-ssis-to-get-data-out-of-oracle-a-big-surprise.aspx
You can get them here:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11180
No comments:
Post a Comment