U-SQL-taken plannen met SQL Server Integration Services (SSIS)

In dit document leert u hoe u U-SQL-taken kunt organiseren en maken met behulp van SQL Server Integration Service (SSIS).

Belangrijk

Azure Data Lake Analytics op 29 februari 2024 buiten gebruik gesteld. Meer informatie over deze aankondiging.

Voor gegevensanalyse kan uw organisatie gebruikmaken van Azure Synapse Analytics of Microsoft Fabric.

Vereisten

Azure Feature Pack for Integration Services biedt de Azure Data Lake Analytics-taak en de Azure Data Lake Analytics Verbindingsbeheer waarmee u verbinding kunt maken met de Azure Data Lake Analytics-service. Als u deze taak wilt gebruiken, moet u het volgende installeren:

Azure Data Lake Analytics-taak

Met de Azure Data Lake Analytics-taak kunnen gebruikers U-SQL-taken indienen bij het Azure Data Lake Analytics-account.

Meer informatie over het configureren van Azure Data Lake Analytics-taak.

Azure Data Lake Analytics-taak in SSIS

U kunt het U-SQL-script op verschillende locaties ophalen met behulp van ingebouwde SSIS-functies en -taken. In de onderstaande scenario's ziet u hoe u de U-SQL-scripts voor verschillende gebruikerscases kunt configureren.

Scenario 1- Inline script aanroepen tvfs en opgeslagen procedures gebruiken

Configureer in Azure Data Lake Analytics Task Editor SourceType als DirectInput en plaats de U-SQL-instructies in USQLStatement.

Voor eenvoudig onderhoud en codebeheer kunt u alleen korte U-SQL-scripts als inlinescripts plaatsen. U kunt bijvoorbeeld bestaande tabelwaardefuncties en opgeslagen procedures in uw U-SQL-databases aanroepen.

Inline U-SQL-script bewerken in SSIS-taak

Gerelateerd artikel: Parameter doorgeven aan opgeslagen procedures

Scenario 2: U-SQL-bestanden gebruiken in Azure Data Lake Store

U kunt ook U-SQL-bestanden in de Azure Data Lake Store gebruiken met behulp van azure Data Lake Store File System Task in Azure Feature Pack. Met deze benadering kunt u de scripts gebruiken die zijn opgeslagen in de cloud.

Volg de onderstaande stappen om de verbinding in te stellen tussen azure Data Lake Store File System Task en Azure Data Lake Analytics Task.

Taakbeheerstroom instellen

Voeg in de SSIS-pakketontwerpweergave een Azure Data Lake Store-bestandssysteemtaak, een Foreach-luscontainer en een Azure Data Lake Analytics-taak toe in de Foreach Loop-container. Met de Azure Data Lake Store-bestandssysteemtaak kunt u U-SQL-bestanden in uw ADLS-account downloaden naar een tijdelijke map. De Foreach Loop-container en de Azure Data Lake Analytics-taak helpen bij het verzenden van elk U-SQL-bestand in de tijdelijke map naar het Azure Data Lake Analytics-account als een U-SQL-taak.

Diagram met een Azure Data Lake Store-bestandssysteemtaak die wordt toegevoegd aan een Foreach Loop-container.

Azure Data Lake Store-bestandssysteemtaak configureren

  1. Stel Bewerking in op CopyFromADLS.
  2. Stel AzureDataLakeConnection in, meer informatie over Azure Data Lake Store Verbindingsbeheer.
  3. Stel AzureDataLakeDirectory in. Wijs de map aan die uw U-SQL-scripts bevat. Gebruik een relatief pad dat relatief is ten opzichte van de hoofdmap van het Azure Data Lake Store-account.
  4. Stel Bestemming in op een map die de gedownloade U-SQL-scripts in de cache opslaat. Dit mappad wordt gebruikt in Foreach Loop Container voor het verzenden van U-SQL-taken.

Azure Data Lake Store-bestandssysteemtaak configureren

Meer informatie over azure Data Lake Store-bestandssysteemtaak.

Foreach Loop-container configureren

  1. Stel op de pagina Verzameling Enumerator in op Foreach File Enumerator.

  2. Stel Map onder Enumerator-configuratiegroep in op de tijdelijke map die de gedownloade U-SQL-scripts bevat.

  3. Stel Bestanden onder Enumerator-configuratie in op *.usql zodat de luscontainer alleen de bestanden vangt die eindigen op .usql.

    Schermopname van de Foreach Loop-Editor met 'Verzameling' geselecteerd en de secties Enumerator- en Enumerator-configuratie gemarkeerd.

  4. Voeg op de pagina Variabeletoewijzingen een door de gebruiker gedefinieerde variabele toe om de bestandsnaam voor elk U-SQL-bestand op te halen. Stel index in op 0 om de bestandsnaam op te halen. In dit voorbeeld definieert u een variabele met de naam User::FileName. Deze variabele wordt gebruikt om dynamisch een U-SQL-scriptbestandsverbinding op te halen en de naam van de U-SQL-taak in Te stellen in Azure Data Lake Analytics Taak.

    Foreach Loop-container configureren om de bestandsnaam op te halen

Azure Data Lake Analytics-taak configureren

  1. Stel SourceType in op FileConnection.

  2. Stel FileConnection in op de bestandsverbinding die verwijst naar de bestandsobjecten die worden geretourneerd door de Foreach Loop-container.

    Ga als volgt te werk om deze bestandsverbinding te maken:

    1. Kies <Nieuwe verbinding...> in de instelling FileConnection.

    2. Stel Gebruikstype in op Bestaand bestand en stel het bestand in op het bestandspad van een bestaand bestand.

      Schermopname van de Verbindingsbeheer Editor Bestand met 'Bestaand bestand' geselecteerd voor 'Gebruikstype'.

    3. Klik in de weergave Verbindingsmanagers met de rechtermuisknop op de bestandsverbinding die is gemaakt en kies Eigenschappen.

    4. Vouw in het venster Eigenschappenexpressies uit en stel ConnectionString in op de variabele die is gedefinieerd in Foreach Loop Container, @[User::FileName]bijvoorbeeld .

      Foreach Loop-container configureren

  3. Stel AzureDataLakeAnalyticsConnection in op het Azure Data Lake Analytics-account waarnaar u taken wilt verzenden. Meer informatie over Azure Data Lake Analytics Verbindingsbeheer.

  4. Andere taakconfiguraties instellen. Meer informatie.

  5. Expressies gebruiken om de naam van de U-SQL-taak dynamisch in te stellen:

    1. Voeg op de pagina Expressies een nieuw sleutel-waardepaar voor de expressie toe voor JobName.

    2. Stel de waarde voor JobName in op de variabele die is gedefinieerd in Foreach Loop Container, @[User::FileName]bijvoorbeeld .

      SSIS-expressie configureren voor U-SQL-taaknaam

Scenario 3: U-SQL-bestanden gebruiken in Azure Blob Storage

U kunt U-SQL-bestanden in Azure Blob Storage gebruiken met behulp van Azure Blob Download Task in Azure Feature Pack. Met deze benadering kunt u de scripts in de cloud gebruiken.

De stappen zijn vergelijkbaar met scenario 2: U-SQL-bestanden gebruiken in Azure Data Lake Store. Wijzig de Azure Data Lake Store File System-taak in Azure Blob-downloadtaak. Meer informatie over Azure Blob-downloadtaak.

De controlestroom ziet er als volgt uit:

U-SQL-bestanden gebruiken in Azure Data Lake Store

Scenario 4: U-SQL-bestanden op de lokale computer gebruiken

Naast het gebruik van U-SQL-bestanden die zijn opgeslagen in de cloud, kunt u ook bestanden op uw lokale computer gebruiken of bestanden die zijn geïmplementeerd met uw SSIS-pakketten.

  1. Klik met de rechtermuisknop op Verbindingsmanagers in het SSIS-project en kies Nieuwe Verbindingsbeheer.

  2. Selecteer Bestandstype en selecteer Toevoegen....

  3. Stel Gebruikstype in op Bestaand bestand en stel het bestand in op het bestand op de lokale computer.

    Bestandsverbinding toevoegen aan het lokale bestand

  4. Voeg Azure Data Lake Analytics-taak toe en:

    1. Stel SourceType in op FileConnection.
    2. Stel FileConnection in op de gemaakte bestandsverbinding.
  5. Voltooi andere configuraties voor Azure Data Lake Analytics-taak.

Scenario 5- U-SQL-instructie gebruiken in SSIS-variabele

In sommige gevallen moet u mogelijk de U-SQL-instructies dynamisch genereren. U kunt de SSIS-variabele gebruiken met SSIS-expressie en andere SSIS-taken, zoals Scripttaak, om de U-SQL-instructie dynamisch te genereren.

  1. Open het hulpprogrammavenster Variabelen via het menu SSIS-variabelen > op het hoogste niveau.

  2. Voeg een SSIS-variabele toe en stel de waarde rechtstreeks in of gebruik Expressie om de waarde te genereren.

  3. Voeg Azure Data Lake Analytics-taak toe en:

    1. Stel SourceType in op Variabele.
    2. Stel SourceVariable in op de SSIS-variabele die nu is gemaakt.
  4. Voltooi andere configuraties voor Azure Data Lake Analytics-taak.

Scenario 6-Pass-parameters voor U-SQL-script

In sommige gevallen wilt u mogelijk de waarde van de U-SQL-variabele dynamisch instellen in het U-SQL-script. De functie Parametertoewijzing in Azure Data Lake Analytics Task helpt bij dit scenario. Er zijn meestal twee typische gebruikerscases:

  • Stel de variabelen voor het invoer- en uitvoerbestandspad dynamisch in op basis van de huidige datum en tijd.
  • Stel de parameter in voor opgeslagen procedures.

Meer informatie over het instellen van parameters voor het U-SQL-script.

Volgende stappen