Schemalägga U-SQL-jobb med SQL Server Integration Services (SSIS)

I det här dokumentet lär du dig att orkestrera och skapa U-SQL-jobb med hjälp av SQL Server Integration Service (SSIS).

Viktigt

Azure Data Lake Analytics drog sig tillbaka den 29 februari 2024. Läs mer med det här meddelandet.

För dataanalys kan din organisation använda Azure Synapse Analytics eller Microsoft Fabric.

Förutsättningar

Azure Feature Pack for Integration Services tillhandahåller Azure Data Lake Analytics-uppgiften och Azure-Data Lake Analytics Anslutningshanteraren som hjälper dig att ansluta till Azure Data Lake Analytics-tjänsten. Om du vill använda den här uppgiften måste du installera:

Azure Data Lake Analytics uppgift

Azure Data Lake Analytics-uppgiften låter användare skicka U-SQL-jobb till Azure Data Lake Analytics-kontot.

Lär dig hur du konfigurerar Azure Data Lake Analytics uppgift.

Azure Data Lake Analytics uppgift i SSIS

Du kan hämta U-SQL-skriptet från olika platser med hjälp av inbyggda SSIS-funktioner och uppgifter. Nedanstående scenarier visar hur du kan konfigurera U-SQL-skript för olika användarfall.

Scenario 1– Använda infogade skript anropar tvfs och lagrade procs

I Azure Data Lake Analytics Task Editor konfigurerar du SourceType som DirectInput och placerar U-SQL-uttrycken i USQLStatement.

För enkelt underhåll och kodhantering kan du bara använda korta U-SQL-skript som infogade skript, till exempel kan du anropa befintliga tabellvärdesfunktioner och lagrade procedurer i dina U-SQL-databaser.

Redigera infogat U-SQL-skript i SSIS-uppgift

Relaterad artikel: Så här skickar du parametern till lagrade procedurer

Scenario 2– Använda U-SQL-filer i Azure Data Lake Store

Du kan också använda U-SQL-filer i Azure Data Lake Store med hjälp av Azure Data Lake Store File System Task i Azure Feature Pack. Med den här metoden kan du använda skripten som lagras i molnet.

Följ stegen nedan för att konfigurera anslutningen mellan Azure Data Lake Store File System Task och Azure Data Lake Analytics Task.

Ange aktivitetskontrollflöde

I vyn SSIS-paketdesign lägger du till en Azure Data Lake Store-filsystemaktivitet, en Foreach-loopcontainer och en Azure Data Lake Analytics-uppgift i Foreach-loopcontainern. Azure Data Lake Store-filsystemuppgiften hjälper dig att ladda ned U-SQL-filer i ditt ADLS-konto till en tillfällig mapp. Foreach-loopcontainern och Azure Data Lake Analytics-uppgiften hjälper dig att skicka alla U-SQL-filer under den tillfälliga mappen till Azure Data Lake Analytics-kontot som ett U-SQL-jobb.

Diagram som visar en Azure Data Lake Store-filsystemaktivitet som läggs till i en Foreach-loopcontainer.

Konfigurera Azure Data Lake Store-filsystemuppgift

  1. Ange Åtgärden till CopyFromADLS.
  2. Konfigurera AzureDataLakeConnection, läs mer om Azure Data Lake Store Anslutningshanteraren.
  3. Ange AzureDataLakeDirectory. Peka på mappen som lagrar dina U-SQL-skript. Använd relativ sökväg som är relativ till rotmappen för Azure Data Lake Store-kontot.
  4. Ange Destination till en mapp som cachelagrar de nedladdade U-SQL-skripten. Den här mappsökvägen används i Foreach Loop Container för U-SQL-jobböverföring.

Konfigurera Azure Data Lake Store-filsystemuppgift

Läs mer om Filsystemuppgift för Azure Data Lake Store.

Konfigurera Foreach-loopcontainer

  1. samlingssidan anger du Uppräknare till Foreach File Enumerator.

  2. Ange Mapp under Enumerator-konfigurationsgruppen till den temporära mapp som innehåller de nedladdade U-SQL-skripten.

  3. Ange Filer under Uppräkningskonfiguration till *.usql så att loopcontainern bara fångar filerna som slutar med .usql.

    Skärmbild som visar foreach-loopen Editor med

  4. På sidan Variabelmappningar lägger du till en användardefinierad variabel för att hämta filnamnet för varje U-SQL-fil. Ange indexet till 0 för att hämta filnamnet. I det här exemplet definierar du en variabel med namnet User::FileName. Den här variabeln används för att dynamiskt hämta U-SQL-skriptfilanslutning och ange U-SQL-jobbnamn i Azure Data Lake Analytics Task.

    Konfigurera Foreach Loop Container för att hämta filnamn

Konfigurera Azure Data Lake Analytics uppgift

  1. Ange SourceType till FileConnection.

  2. Ange FileConnection till den filanslutning som pekar på filobjekten som returneras från Foreach Loop Container.

    Så här skapar du den här filanslutningen:

    1. Välj <Ny anslutning...> i inställningen FileConnection.

    2. Ange Användningstyp till Befintlig fil och ange filen till en befintlig fils filsökväg.

      Skärmbild som visar Anslutningshanteraren Editor med

    3. I vyn Anslutningshanterare högerklickar du på den filanslutning som skapats och väljer Egenskaper.

    4. I fönstret Egenskaperexpanderar du Uttryck och anger ConnectionString till variabeln som definierats i Foreach Loop Container, till exempel @[User::FileName].

      Konfigurera Foreach-loopcontainer

  3. Ange AzureDataLakeAnalyticsConnection till det Azure Data Lake Analytics-konto som du vill skicka jobb till. Läs mer om Azure Data Lake Analytics Anslutningshanteraren.

  4. Ange andra jobbkonfigurationer. Läs mer.

  5. Använd uttryck för att dynamiskt ange U-SQL-jobbnamn:

    1. På sidan Uttryck lägger du till ett nytt nyckel/värde-uttryck-par för JobName.

    2. Ange värdet för JobName till variabeln som definierats i Foreach Loop Container, till exempel @[User::FileName].

      Konfigurera SSIS-uttryck för U-SQL-jobbnamn

Scenario 3– Använda U-SQL-filer i Azure Blob Storage

Du kan använda U-SQL-filer i Azure Blob Storage med hjälp av Azure Blob Download Task i Azure Feature Pack. Med den här metoden kan du använda skripten i molnet.

Stegen liknar scenario 2: Använd U-SQL-filer i Azure Data Lake Store. Ändra filsystemaktiviteten för Azure Data Lake Store till Azure Blob Download Task. Läs mer om nedladdningsaktivitet för Azure Blob.

Kontrollflödet är så här:

Använda U-SQL-filer i Azure Data Lake Store

Scenario 4– Använda U-SQL-filer på den lokala datorn

Förutom att använda U-SQL-filer som lagras i molnet kan du även använda filer på din lokala dator eller filer som distribuerats med dina SSIS-paket.

  1. Högerklicka på Anslutningshanterare i SSIS-projekt och välj Ny Anslutningshanteraren.

  2. Välj Filtyp och välj Lägg till....

  3. Ange Användningstyp till Befintlig fil och ange filen till filen på den lokala datorn.

    Lägg till filanslutning till den lokala filen

  4. Lägg till Azure Data Lake Analytics-uppgift och:

    1. Ange SourceType till FileConnection.
    2. Ange FileConnection till den filanslutning som skapades.
  5. Slutför andra konfigurationer för Azure Data Lake Analytics Task.

Scenario 5– Använda U-SQL-instruktion i SSIS-variabel

I vissa fall kan du behöva generera U-SQL-uttryck dynamiskt. Du kan använda SSIS-variabeln med SSIS-uttryck och andra SSIS-uppgifter, till exempel Skriptuppgift, för att hjälpa dig att generera U-SQL-instruktionen dynamiskt.

  1. Öppna verktygsfönstret Variabler via menyn SSIS > Variables på den översta nivån.

  2. Lägg till en SSIS-variabel och ange värdet direkt eller använd Uttryck för att generera värdet.

  3. Lägg till Azure Data Lake Analytics uppgift och:

    1. Ange SourceType till Variabel.
    2. Ange SourceVariable till den SSIS-variabel som skapats nu.
  4. Slutför andra konfigurationer för Azure Data Lake Analytics Task.

Scenario 6–Skicka parametrar till U-SQL-skript

I vissa fall kanske du vill ange U-SQL-variabelvärdet dynamiskt i U-SQL-skriptet. Funktionen Parametermappning i Azure Data Lake Analytics Task hjälper dig med det här scenariot. Det finns vanligtvis två vanliga användarfall:

  • Ange sökvägsvariablerna för indata- och utdatafiler dynamiskt baserat på aktuellt datum och tid.
  • Ange parametern för lagrade procedurer.

Läs mer om hur du anger parametrar för U-SQL-skriptet.

Nästa steg