2016-03-18 5 views
0

Ich habe ein Szenario. Ich implementiere Incremental Laden mit Merge-Anweisung auf Datumsbasis.Incremental loading Merge oder mit SSIS

Aber wenn die Daten auf Quellniveau gelöscht werden, haben wir noch die Daten im Datawarehouse.

Wie gehen wir mit solchen Szenarien um?

Bitte vorschlagen.

Danke

Antwort

0

Dann kehren Sie Ihre Quell- und Referenztabellen um. Neue/aktualisierte Daten beginnen in A und suchen in B, um festzustellen, ob eine Änderung vorliegt. Gelöschte Daten, Sie beginnen mit B und suchen in A nach einer Übereinstimmung. Wenn keine Übereinstimmung gefunden wird, löschen Sie aus B. Ob Sie alle zu löschenden Datensätze in eine Tabelle einstufen und einen satzbasierten Löschvorgang ausführen oder den OLE DB-Befehl in Ihrem Datenfluss verwenden, ist eine Frage des Volumens. Wenn Sie Zehner, vielleicht Hunderte von Löschungen erwarten, wird wahrscheinlich die Leistung des OLE DB-Befehlsobjekts gefunden. Wenn Sie Millionen zu löschen haben, werden Sie wahrscheinlich nicht die Strafe für die Zeile-für-Zeile-Eigenschaft dieser Komponente bezahlen wollen.