Kopiera nya och ändrade filer av LastModifiedDate med Azure Data Factory
GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics
Dricks
Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!
Den här artikeln beskriver en lösningsmall som du kan använda för att kopiera nya och ändrade filer endast av LastModifiedDate från ett filbaserat arkiv till ett målarkiv.
Om den här lösningsmallen
Den här mallen väljer först de nya och ändrade filerna endast med attributen LastModifiedDate och kopierar sedan de markerade filerna från datakällans lagringsplats till datamållagret.
Mallen innehåller en aktivitet:
- Kopiera för att kopiera nya och ändrade filer endast av LastModifiedDate från ett filarkiv till ett målarkiv.
Mallen definierar sex parametrar:
- FolderPath_Source är mappsökvägen där du kan läsa filerna från källarkivet. Du måste ersätta standardvärdet med din egen mappsökväg.
- Directory_Source är undermappssökvägen där du kan läsa filerna från källarkivet. Du måste ersätta standardvärdet med din egen undermappssökväg.
- FolderPath_Destination är mappsökvägen där du vill kopiera filer till målarkivet. Du måste ersätta standardvärdet med din egen mappsökväg.
- Directory_Destination är undermappssökvägen där du vill kopiera filer till målarkivet. Du måste ersätta standardvärdet med din egen undermappssökväg.
- LastModified_From används för att välja de filer vars LastModifiedDate-attribut är efter eller lika med det här datetime-värdet. För att endast välja de nya filerna, som inte har kopierats förra gången, kan det här datetime-värdet vara den tid då pipelinen utlöstes förra gången. Du kan ersätta standardvärdet "2019-02-01T00:00:00Z" med din förväntade LastModifiedDate i UTC-tidszonen.
- LastModified_To används för att välja de filer vars LastModifiedDate-attribut ligger före det här datetime-värdet. För att endast välja de nya filerna, som inte kopierats i tidigare körningar, kan det här datetime-värdet vara aktuell tid. Du kan ersätta standardvärdet "2019-02-01T00:00:00Z" med din förväntade LastModifiedDate i UTC-tidszonen.
Så här använder du den här lösningsmallen
Gå till mallgalleriet på fliken Författare i Azure Data Factory och välj + sedan knappen Pipeline och slutligen mallgalleriet.
Sök efter mallen Kopiera endast nya filer efter LastModifiedDate, välj den och välj sedan Fortsätt.
Skapa en ny anslutning till målarkivet. Målarkivet är den plats där du vill kopiera filer till.
Skapa en ny anslutning till källlagringsarkivet. Källlagringsarkivet är det ställe där du vill kopiera filer från.
Välj Använd denna mall.
Du ser pipelinen som är tillgänglig i panelen, som du ser i följande exempel:
Välj Felsök, skriv värdet för Parametrar och välj Slutför. I bilden nedan anger vi parametrarna enligt följande.
- FolderPath_Source = sourcefolder
- Directory_Source = undermapp
- FolderPath_Destination = destinationfolder
- Directory_Destination = undermapp
- LastModified_From = 2019-02-01T00:00:00Z
- LastModified_To = 2019-03-01T00:00:00Z
Exemplet anger att filerna, som senast ändrades inom tidsintervallet (2019-02-01T00:00:00Z till 2019-03-01T00:00:00Z) kopieras från källsökvägens källmapp/undermapp till målsökvägens målmapp/undermapp. Du kan ersätta dessa tider eller mappar med dina egna parametrar.
Granska resultatet. Du ser bara att de filer som senast ändrades inom det konfigurerade tidsintervallet kopieras till målarkivet.
Nu kan du lägga till en rullande windows-utlösare för att automatisera den här pipelinen, så att pipelinen alltid kan kopiera nya och ändrade filer endast av LastModifiedDate med jämna mellanrum. Välj Lägg till utlösare och välj Ny/Redigera.
I fönstret Lägg till utlösare väljer du + Ny.
Välj Rullande fönster för utlösartypen och ange Var 15:e minut som upprepning (du kan ändra till valfri intervalltid). Välj Ja för rutan Aktiverad och välj sedan OK.
Ange värdet för parametrarna för körning av utlösare enligt följande och välj Slutför.
- = FolderPath_Source källmapp. Du kan ersätta med mappen i källdatalagret.
- = Directory_Source undermapp. Du kan ersätta med din undermapp i källdatalagret.
- = FolderPath_Destination målmapp. Du kan ersätta med mappen i måldatalagret.
- = Directory_Destination undermapp. Du kan ersätta med undermappen i måldatalagret.
- = LastModified_From@trigger().outputs.windowStartTime. Det är en systemvariabel från utlösaren som avgör när pipelinen utlöstes förra gången.
- = LastModified_To@trigger().outputs.windowEndTime. Det är en systemvariabel från utlösaren som avgör när pipelinen utlöses den här gången.
Välj Publicera alla.
Skapa nya filer i källmappen för datakällalagret. Nu väntar du på att pipelinen ska utlösas automatiskt och endast de nya filerna kopieras till målarkivet.
Välj fliken Övervaka i den vänstra navigeringspanelen och vänta i ungefär 15 minuter om upprepningen av utlösaren har angetts till var 15:e minut.
Granska resultatet. Du ser att din pipeline utlöses automatiskt var 15:e minut, och endast de nya eller ändrade filerna från källarkivet kopieras till målarkivet i varje pipelinekörning.