Dela via


Flytta filer 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!

ADF-kopieringsaktiviteten har inbyggt stöd för "flytta"-scenario vid kopiering av binära filer mellan lagringslager. Sättet att aktivera det är att ange "deleteFilesAfterCompletion" som sant i kopieringsaktiviteten. På så sätt tar kopieringsaktiviteten bort filer från datakällans lager när jobbet har slutförts.

I den här artikeln beskrivs en lösningsmall som en annan metod för att utnyttja ett flexibelt ADF-kontrollflöde plus kopieringsaktivitet och borttagningsaktivitet för att uppnå samma scenario. Ett av de vanliga scenarierna med att använda den här mallen: Filer tas kontinuerligt bort till en landningsmapp i källarkivet. Genom att skapa en schemautlösare kan ADF-pipelinen regelbundet flytta filerna från källan till målarkivet. Det sätt på vilket ADF-pipelinen uppnår "flytta filer" är att hämta filerna från landningsmappen, kopiera var och en av dem till en annan mapp i målarkivet och sedan ta bort samma filer från landningsmappen i källarkivet.

Kommentar

Tänk på att den här mallen är utformad för att flytta filer i stället för att flytta mappar. Om du vill flytta mappen genom att ändra datauppsättningen så att den endast innehåller en mappsökväg, och sedan använda kopieringsaktiviteten och ta bort aktiviteten för att referera till samma datauppsättning som representerar en mapp, måste du vara mycket försiktig. Det beror på att du måste se till att det INTE kommer nya filer till mappen mellan kopieringsåtgärden och borttagningsåtgärden. Om det finns nya filer som kommer till mappen just när kopieringsaktiviteten precis har slutfört kopieringsjobbet, men aktiviteten Ta bort inte har stirrades, är det möjligt att aktiviteten Ta bort tar bort den nya ankommande filen som inte har kopierats till målet ännu genom att ta bort hela mappen.

Om den här lösningsmallen

Den här mallen hämtar filerna från ditt källfilbaserade arkiv. Sedan flyttas var och en av dem till målarkivet.

Mallen innehåller fem aktiviteter:

  • GetMetadata hämtar listan över objekt, inklusive filer och undermappar från din mapp i källarkivet. Objekten hämtas inte rekursivt.
  • Filtrera objektlistan från aktiviteten GetMetadata för att endast välja filerna.
  • ForEach hämtar fillistan från filteraktiviteten och itererar sedan över listan och skickar varje fil till aktiviteten aktiviteten Kopiera och Ta bort.
  • Kopierar en fil från källan till målarkivet.
  • Ta bort tar bort samma fil från källarkivet.

Mallen definierar fyra parametrar:

  • SourceStore_Location är mappsökvägen till källarkivet där du vill flytta filer från.
  • SourceStore_Directory är undermappssökvägen till källarkivet där du vill flytta filer från.
  • DestinationStore_Location är mappsökvägen till målarkivet där du vill flytta filer till.
  • DestinationStore_Directory är undermappssökvägen till målarkivet där du vill flytta filer till.

Så här använder du den här lösningsmallen

  1. Gå till mallen Flytta filer . Välj befintlig anslutning eller skapa en Ny anslutning till källfilarkivet där du vill flytta filer från. Tänk på att DataSource_Folder och DataSource_File refererar till samma anslutning till källfilarkivet.

    Skärmbild som visar skapande av en ny anslutning till källan.

  2. Välj befintlig anslutning eller skapa en Ny anslutning till målfilarkivet där du vill flytta filer till.

    Skärmbild som visar hur du skapar en ny anslutning till målet.

  3. Välj Använd den här mallfliken .

  4. Du ser pipelinen, som i följande exempel:

    Skärmbild som visar pipelinen.

  5. Välj Felsök, ange Parametrar och välj sedan Slutför. Parametrarna är den mappsökväg där du vill flytta filer från och mappsökvägen där du vill flytta filer till.

    Skärmbild som visar var pipelinen ska köras.

  6. Granska resultatet.

    Skärmbild som visar resultatet av pipelinekörningen.