Datenfluss-task in SSIS ist sehr langsam im Vergleich zu dem schreiben der sql-Abfrage in SQL Ausführen (task)

Ich bin neu in SSIS und habe ein paar Fragen

  1. Ich übertragen möchten 1,25,000 Zeilen aus einer Tabelle in eine andere in der gleichen Datenbank. Aber Wenn ich Data Flow Task, es ist zu viel Zeit. Ich habe versucht, mit einem ADO NET Destination sowie eine OLE DB Destination aber die Leistung war nicht akzeptabel. Wenn ich schrieb die entsprechende Abfrage innerhalb einer Execute SQL Task es bot eine akzeptable Leistung. Warum wird ein solcher Unterschied in der Leistung.

    INSERT INTO table1 select * from table2

  2. Basierend auf der ersten Beobachtung, änderte ich mein Paket. Es ist ausschließlich mit Vertretern der Execute SQL Tasks entweder mit einer direkten Abfrage oder eine gespeicherte Prozedur. Wenn ich mein problem lösen kann, nur anhand der Execute SQL Task, dann warum sollte man die Verwendung von SSIS-wie so viele Dokumente und Artikel angeben. Ich habe gesehen, wie es ist zuverlässig, leicht zu pflegen und vergleichsweise schnell.
Haben Sie versucht, brechen die übertragung in Blöcke, z.B. 10K Zeilen gleichzeitig? Die Protokollierung kann traumatisch sein für große Operationen.
während der Verwendung der Datenfluss die Aufgabe, es selbst bricht die Zeile Betrag in 10k-partition und dann einfügen, ist dies die Ursache zu verlangsamen?
Haben Sie 'schnell laden' in der OLE DB-Ziel?
ja ich habe das schnelle laden auch. Aber nach dem Lesen der Antwort gepostet von billinkc, ich lass es bleiben mit all der task SQL Ausführen, und führen Sie es über den SQL-Agent. Ich bin jetzt zufrieden !

InformationsquelleAutor Teju MB | 2013-04-24

Schreibe einen Kommentar