Ich verwende Data Factory, um unseren Staging-Bereich zu erstellen. Das Problem tritt auf, wenn Quelldaten geändert werden. Wir fügen Staging-Tabellen eine neue Zeile hinzu.Behalten Sie nur die letzte Datenzeile in der Datenfactory
Zum Beispiel übernehmen wir folgende Daten:
ID Fields created edited
100 ---------- '2017-07-01' '2017-07-05'
dies wird in unserer Staging-Tabellen wie folgt gespeichert werden:
ID Fields created edited
100 ---------- '2017-07-01' null
100 ---------- '2017-07-01' '2017-07-05'
Auswahl der letzten Zeile ist teuer und wir don‘ Ich will das. Wie können Sie vermeiden, doppelte IDs im Staging zu speichern?
Ich nehme an, beim Erstellen der Pipelines sollte es eine Möglichkeit geben, die Daten zu aktualisieren, wenn die ID bereits im Staging vorhanden ist.
das Abfrage-Format in Daten Werk ist wie folgt:
$$Text.Format('select * from <<table>> where <<column>> >= \'{0:yyyy-MM-dd HH:mm}\' AND <<column>> < \'{1:yyyy-MM-dd HH:mm}\'', WindowStart, WindowEnd)
Sie könnten ein 'MERGE' machen etwas wie [dies] (https://docs.microsoft.com/en-us/azure/data-factory/data-factory-invoke-stored-procedure-from-copy- Aktivität)? – wBob
Wenn vorhanden (wählen Sie 1 aus der Tabelle, wo ID = @ ID) update-Anweisung wo ID = @ id sonst Anweisung einfügen – JayaPrakash