Kopiera data från Azure Blob Storage till en databas i Azure SQL Database med hjälp av 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!

I den här självstudiekursen skapar du en datafabrik med Azure Data Factory-användargränssnittet. Pipelinen i den här datafabriken kopierar data från Azure Blob Storage till en databas i Azure SQL Database. Konfigurationsmönstret i den här självstudien gäller kopiering av ett filbaserat datalager till ett relationsdatalager. En lista över datakällor som stöds som källor och mottagare finns i tabellen över datalager som stöds.

Kommentar

Om du inte har använt datafabriken tidigare kan du läsa Introduktion till Azure Data Factory.

I den här självstudien får du göra följande:

  • Skapa en datafabrik.
  • Skapa en pipeline med en kopieringsaktivitet.
  • Testkör pipelinen.
  • Utlös pipelinen manuellt.
  • Utlös pipelinen enligt ett schema.
  • Övervaka pipelinen och aktivitetskörningarna.

Förutsättningar

Skapa en blob och en SQL-tabell

Förbered nu Blob Storage och SQL-databasen för den här självstudien genom att utföra nedanstående steg.

Skapa en källblob

  1. Starta Anteckningar. Kopiera följande text och spara den som en emp.txt-fil på din disk:

    FirstName,LastName
    John,Doe
    Jane,Doe
    
  2. Skapa en container med namnet adftutorial i Blob Storage. Skapa en mapp som heter input i den här containern. Ladda sedan upp filen emp.txt till mappen input. Använd Azure-portalen eller verktyg som Azure Storage Explorer när du gör uppgifterna.

Skapa en SQL-mottagartabell

  1. Använd följande SQL-skript för att skapa tabellen dbo.emp i databasen:

    CREATE TABLE dbo.emp
    (
        ID int IDENTITY(1,1) NOT NULL,
        FirstName varchar(50),
        LastName varchar(50)
    )
    GO
    
    CREATE CLUSTERED INDEX IX_emp_ID ON dbo.emp (ID);
    
  2. Ge Azure-tjänster åtkomst till SQL Server. Kontrollera att inställningen Tillåt åtkomst till Azure-tjänster är för din SQL Server så att datafabriken kan skriva data till din SQL Server. Om du vill verifiera och aktivera den här inställningen går du till logisk SQL Server > Översikt > Ställ in serverbrandväggen>på Alternativet Tillåt åtkomst till Azure-tjänster till .

Skapa en datafabrik

I det här steget skapar du en datafabrik och startar sedan användargränssnittet för datafabriken för att skapa en pipeline i datafabriken.

  1. Öppna Microsoft Edge eller Google Chrome. Just nu är det bara webbläsarna Microsoft Edge och Google Chrome som har stöd för Data Factory UI.

  2. Välj Skapa en resursintegreringsdatafabrik>> på den vänstra menyn.

  3. På sidan Skapa datafabrik går du till fliken Grundläggande inställningar och väljer den Azure-prenumeration där du vill skapa datafabriken.

  4. Gör något av följande för Resursgrupp:

    a. Välj en befintlig resursgrupp i listrutan.

    b. Välj Skapa ny och ange namnet på en ny resursgrupp.

    Mer information om resursgrupper finns i Använda resursgrupper för att hantera Azure-resurser.

  5. Under Region väljer du en plats för datafabriken. Endast platser som stöds visas i listrutan. Datalagren (t.ex. Azure Storage och SQL-databas) och beräkningarna (t.ex. Azure HDInsight) som används i datafabriken kan finnas i andra regioner.

  6. Under Namn anger du ADFTutorialDataFactory.

    Namnet på Azure Data Factory måste vara globalt unikt. Ange ett annat namn för datafabriken om du får ett felmeddelande om namnvärdet. (till exempel dittnamnADFTutorialDataFactory). Se artikeln om namnregler för datafabriker för namnregler för datafabriksartefakter.

    New data factory error message for duplicate name.

  7. Under Version väljer du V2.

  8. Välj fliken Git-konfiguration överst och markera kryssrutan Konfigurera Git senare .

  9. Välj Granska + skapa och välj Skapa när valideringen har godkänts.

  10. När skapandet är klart visas meddelandet i Meddelandecenter. Välj Gå till resurs för att gå till sidan Datafabrik.

  11. Välj Öppna på panelen Öppna Azure Data Factory Studio för att starta Användargränssnittet för Azure Data Factory på en separat flik.

Skapa en pipeline

I det här steget skapar du en pipeline med en kopieringsaktivitet i datafabriken. Kopieringsaktiviteten kopierar data från Blob Storage till en SQL-databas. I snabbstartssjälvstudien skapade du en pipeline med följande steg:

  1. Skapa den länkade tjänsten.
  2. Skapa datauppsättningar för indata och utdata.
  3. Skapa en pipeline.

I denna självstudie börjar du med att skapa pipelinen. Sedan skapar du länkade tjänster och datauppsättningar när du behöver dem för att konfigurera pipelinen.

  1. På startsidan väljer du Orkestrera.

    Screenshot that shows the ADF home page.

  2. I panelen Allmänt under Egenskaper anger du CopyPipeline som Namn. Dölj sedan panelen genom att klicka på ikonen Egenskaper i det övre högra hörnet.

  3. I rutan Aktiviteter expanderar du kategorin Flytta och transformera och drar och släpper aktiviteten Kopiera data från verktygslådan till pipelinedesignytan. Ange CopyFromBlobToSql som Namn.

    Copy activity

Konfigurera källan

Dricks

I den här självstudien använder du kontonyckeln som autentiseringstyp för källdatalagret, men du kan välja andra autentiseringsmetoder som stöds: SAS URI, tjänstens huvudnamn och hanterad identitet om det behövs. Mer information finns i motsvarande avsnitt i den här artikeln . Om du vill lagra hemligheter för datalager på ett säkert sätt rekommenderar vi också att du använder ett Azure Key Vault. Mer information finns i den här artikeln.

  1. Gå till fliken Källa . Välj + Ny för att skapa en källdatauppsättning.

  2. I dialogrutan Ny datauppsättning väljer du Azure Blob Storage och sedan Fortsätt. Dina källdata finns i Blob Storage, så du väljer Azure Blob Storage för källdatauppsättningen.

  3. I dialogrutan Välj format väljer du formattypen för dina data och väljer sedan Fortsätt.

  4. I dialogrutan Ange egenskaper anger du SourceBlobDataset som Namn. Markera kryssrutan för Första raden som rubrik. Under textrutan Länkad tjänst väljer du + Ny.

  5. I dialogrutan Ny länkad tjänst (Azure Blob Storage) anger du AzureStorageLinkedService som namn och väljer ditt lagringskonto i listan Med lagringskontonamn. Testa anslutningen och välj Skapa för att distribuera den länkade tjänsten.

  6. När den länkade tjänsten har skapats navigeras den tillbaka till sidan Ange egenskaper . Vid Filsökväg väljer du Bläddra.

  7. Gå till mappen adftutorial/input , välj filen emp.txt och välj sedan OK.

  8. Välj OK. Den navigerar automatiskt till pipelinesidan. Bekräfta att SourceBlobDataset är valt på fliken Källa. Om du vill förhandsgranska data på den här sidan väljer du Förhandsgranska data.

    Source dataset

Konfigurera kanalmottagare

Dricks

I den här självstudien använder du SQL-autentisering som autentiseringstyp för ditt datalager för mottagare, men du kan välja andra autentiseringsmetoder som stöds: Tjänstens huvudnamn och hanterad identitet om det behövs. Mer information finns i motsvarande avsnitt i den här artikeln . Om du vill lagra hemligheter för datalager på ett säkert sätt rekommenderar vi också att du använder ett Azure Key Vault. Mer information finns i den här artikeln.

  1. Gå till fliken Mottagare och välj + Nytt för att skapa en datauppsättning för mottagare.

  2. I dialogrutan Ny datauppsättning anger du "SQL" i sökrutan för att filtrera anslutningsapparna, väljer Azure SQL Database och väljer sedan Fortsätt. I dessa självstudier kopierar du data till en SQL-databas.

  3. I dialogrutan Ange egenskaper anger du OutputSqlDataset som Namn. I listrutan Länkad tjänst väljer du + Ny. En datauppsättning måste associeras med en länkad tjänst. Den länkade tjänsten har den anslutningssträng som Data Factory använder för att ansluta till SQL Database vid körning. Datauppsättningen anger den container, mapp och fil (valfritt) som data kopieras till.

  4. I dialogrutan Ny länkad tjänst (Azure SQL Database) gör du följande:

    a. Under Namn anger du AzureSqlDatabaseLinkedService.

    b. Under Servernamn väljer du din SQL Server-instans.

    c. Under Databasnamn väljer du din databas.

    d. Under Användarnamn anger du namnet på användaren.

    e. För Lösenord anger du användarens lösenord.

    f. Välj Testanslutning för att testa anslutningen.

    g. Välj Skapa för att distribuera den länkade tjänsten.

    Save new linked service

  5. Den navigerar automatiskt till dialogrutan Ange egenskaper . Under Tabell väljer du [dbo].[emp]. Välj sedan OK.

  6. Gå till fliken med pipelinen och kontrollera i Sink Dataset (Datauppsättning för mottagare) att OutputSqlDataset har valts.

    Pipeline tab

Du kan också mappa schemat för källan till motsvarande målschema genom att följa schemamappningen i kopieringsaktiviteten.

Verifiera pipeline

Verifiera pipelinen genom att välja Verifiera i verktygsfältet.

Du kan se JSON-koden som är associerad med pipelinen genom att klicka på Kod uppe till höger.

Felsöka och publicera en pipeline

Du kan felsöka en pipeline innan du publicerar artefakter (länkade tjänster, datauppsättningar och pipelines) till datafabriken eller din egen Azure Repos Git-lagringsplats.

  1. Välj Felsöka i verktygsfält för att felsöka pipelinen. Du ser status för pipelinekörningen på fliken Utdata längst ned i fönstret.

  2. När pipelinen kan köras väljer du Publicera alla i det översta verktygsfältet. Med den här åtgärden publicerar du enheter (datauppsättningar och pipelines) som du skapat i datafabriken.

  3. Vänta tills du ser meddelandet om att entiteterna har publicerats. För att visa meddelanden klickar du på Visa meddelanden uppe till vänster (klockknappen).

Utlös pipelinen manuellt

I det här steget utlöser du manuellt pipelinen du publicerade i föregående steg.

  1. Välj Utlös i verktygsfältet och sedan Trigger Now (Utlös nu). På sidan PipelineKörning väljer du OK.

  2. Gå till fliken Övervaka till vänster. Du ser en pipelinekörning som är utlöst av en manuell utlösare. Du kan använda länkar under kolumnen PIPELINE NAME för att visa aktivitetsinformation och köra pipelinen igen.

    Monitor pipeline runs

  3. Om du vill se aktivitetskörningar som är associerade med pipelinekörningen väljer du länken CopyPipeline under kolumnen PIPELINE NAME . I det här exemplet finns det bara en aktivitet, så du ser bara en post i listan. Om du vill ha mer information om kopieringsåtgärden väljer du länken Information (glasögonikonen) under kolumnen AKTIVITETSNAMN . Välj Alla pipelinekörningar överst för att gå tillbaka till vyn Pipelinekörningar. Välj Uppdatera för att uppdatera vyn.

    Monitor activity runs

  4. Kontrollera att ytterligare två rader läggs till i tabellen emp i databasen.

Utlös pipelinen enligt ett schema

I det här schemat skapar du en schemautlösare för pipelinen. Utlösaren kör pipelinen enligt det angivna schemat, t.ex. varje timme eller dagligen. Här anger du att utlösaren ska köras varje minut till den angivna slutdatumtiden.

  1. Gå till fliken Författare uppe till vänster på övervakningsfliken.

  2. Gå till din pipeline, klicka på Utlösare i verktygsfältet och välj Ny/Redigera.

  3. I dialogrutan Lägg till utlösare väljer du + Ny för Välj utlösarområde.

  4. Utför följande steg i fönstret Ny utlösare:

    a. Under Namn anger du RunEveryMinute.

    b. Uppdatera startdatumet för utlösaren. Om datumet är före aktuell datetime börjar utlösaren börja gälla när ändringen har publicerats.

    c. Under Tidszon väljer du listrutan.

    d. Ange Upprepning till Var 1 minut.

    e. Markera kryssrutan för Ange ett slutdatum och uppdatera delen Slut på så att den är några minuter efter aktuell datumtid. Utlösaren aktiveras enbart när du har publicerat ändringarna. Om du ställer in den på bara några minuters mellanrum och du inte publicerar den då ser du ingen utlösarkörning.

    f. För Alternativet Aktiverad väljer du Ja.

    g. Välj OK.

    Viktigt!

    Det är kostnader associerade med varje pipelinekörning, så var noga med att ställa in slutdatum korrekt.

  5. På sidan Redigera utlösare granskar du varningen och väljer sedan Spara. Pipelinen i det här exemplet tar inga parametrar.

  6. Klicka på Publicera alla för att publicera ändringen.

  7. Växla till fliken Övervakare till vänster för att se de utlösta pipelinekörningarna.

    Triggered pipeline runs

  8. Om du vill växla från vyn Pipelinekörningar till vyn Utlösarkörningar väljer du Utlösarkörningar till vänster i fönstret.

  9. Utlösarkörningarna visas i en lista.

  10. Verifiera att två rader per minut (för varje pipelinekörning) infogas i tabellen emp tills den angivna sluttiden.

Pipelinen i det här exemplet kopierar data från en plats till en annan i Blob Storage. Du har lärt dig att:

  • Skapa en datafabrik.
  • Skapa en pipeline med en kopieringsaktivitet.
  • Testkör pipelinen.
  • Utlös pipelinen manuellt.
  • Utlös pipelinen enligt ett schema.
  • Övervaka pipelinen och aktivitetskörningarna.

Fortsätt till nästa självstudie om du vill lära dig att kopiera data från en lokal plats till molnet: