Share via


Gegevens transformeren in Delta Lake met behulp van toewijzingsgegevensstromen

VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics

Tip

Probeer Data Factory uit in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, business intelligence en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie .

Zie Inleiding tot Azure Data Factory als u niet bekend bent met Azure Data Factory.

In deze zelfstudie gebruikt u het canvas voor gegevensstromen om gegevensstromen te maken waarmee u gegevens in Azure Data Lake Storage (ADLS) Gen2 kunt analyseren en transformeren en opslaan in Delta Lake.

Vereisten

  • Azure-abonnement. Als u nog geen abonnement op Azure hebt, maakt u een gratis Azure-account voordat u begint.
  • Azure-opslagaccount. U gebruikt ADLS-opslag als bron- en sinkgegevensopslag. Als u geen opslagaccount hebt, raadpleegt u het artikel Een opslagaccount maken om een account te maken.

Het bestand dat we in deze zelfstudie transformeren, is MoviesDB.csv, die hier te vinden is. Als u het bestand wilt ophalen uit GitHub, kopieert u de inhoud naar een teksteditor van uw keuze om lokaal op te slaan als een CSV-bestand. Zie Blobs uploaden met Azure Portal om het bestand te uploaden naar uw opslagaccount. De voorbeelden verwijzen naar een container met de naam sample-data.

Een data factory maken

In deze stap maakt u een data factory en opent u de Data Factory UX om een pijplijn in de data factory te maken.

  1. Open Microsoft Edge of Google Chrome. Momenteel wordt de Data Factory-gebruikersinterface alleen ondersteund in de webbrowsers Microsoft Edge en Google Chrome.

  2. Selecteer een resourceintegratiegegevensfactory>>maken in het linkermenu

  3. Voer op de pagina Nieuwe data factory, onder Naam, ADFTutorialDataFactory in

  4. Selecteer het Azure-abonnement waarin u de data factory wilt maken.

  5. Voer een van de volgende stappen uit voor Resourcegroep:

    a. Selecteer Bestaande gebruiken en selecteer een bestaande resourcegroep in de vervolgkeuzelijst.

    b. Selecteer Nieuwe maken en voer de naam van een resourcegroep in.

    Zie Resourcegroepen gebruiken om Azure-resources te beheren voor meer informatie.

  6. Selecteer V2 onder Versie.

  7. Selecteer onder Locatie een locatie voor de data factory. In de vervolgkeuzelijst worden alleen ondersteunde locaties weergegeven. Gegevensarchieven (bijvoorbeeld Azure Storage en SQL Database) en berekeningen (bijvoorbeeld Azure HDInsight) die door de data factory worden gebruikt, kunnen zich in andere regio's bevinden.

  8. Selecteer Maken.

  9. Als het maken is voltooid, ziet u de melding in het meldingencentrum. Selecteer Naar resource gaan om naar de pagina Data factory te gaan.

  10. Selecteer de tegel Maken en controleren om de Data Factory-gebruikersinterface te openen op een afzonderlijk tabblad.

Een pijplijn maken met een gegevensstroomactiviteit

In deze stap maakt u een pijplijn die een gegevensstroomactiviteit bevat.

  1. Selecteer Orchestrate op de startpagina.

    Screenshot that shows the ADF home page.

  2. Voer op het tabblad Algemeen voor de pijplijn DeltaLake in voor de naam van de pijplijn.

  3. Vouw in het deelvenster Activiteiten de accordeon Verplaatsen en Transformeren uit. Sleep de Gegevensstroom activiteit van het deelvenster naar het pijplijncanvas en zet deze neer.

    Screenshot that shows the pipeline canvas where you can drop the Data Flow activity.

  4. Selecteer in het pop-upvenster Toevoegen Gegevensstroom nieuwe Gegevensstroom maken en geef uw gegevensstroom een naam deltalake. Klik op Voltooien wanneer u klaar bent.

    Screenshot that shows where you name your data flow when you create a new data flow.

  5. Schuif in de bovenste balk van het pijplijncanvas de schuifregelaar Gegevensstroom foutopsporing aan. Met de foutopsporingsmodus kunt u interactieve transformatielogica testen op een live Spark-cluster. Gegevensstroom clusters 5-7 minuten duren en gebruikers worden aangeraden eerst foutopsporing in te schakelen als ze van plan zijn Gegevensstroom ontwikkeling uit te voeren. Zie De foutopsporingsmodus voor meer informatie.

    Screenshot that shows where is the Data flow debug slider.

Transformatielogica bouwen in het gegevensstroomcanvas

In deze zelfstudie genereert u twee gegevensstromen. De eerste gegevensstroom is een eenvoudige bron om een nieuwe Delta Lake te genereren op basis van het CSV-bestand met films van bovenaf. Ten slotte maakt u dit stroomontwerp hieronder om gegevens in Delta Lake bij te werken.

Final flow

Zelfstudiedoelstellingen

  1. Neem de bron van de MoviesCSV-gegevensset van hierboven en vorm er een nieuw Delta Lake van. 1. Bouw de logica om classificaties voor 1988 films te bijwerken naar '1'.
  2. Verwijder alle films uit 1950.
  3. Voeg nieuwe films voor 2021 in door de films uit 1960 te dupliceren.

Beginnen met een leeg gegevensstroomcanvas

  1. Klik op de brontransformatie

  2. Klik op nieuw naast de gegevensset in het onderste deelvenster 1 Een nieuwe gekoppelde service maken voor ADLS Gen2

  3. Kies Tekst met scheidingstekens voor het gegevenssettype

  4. Geef de gegevensset de naam 'MoviesCSV'

  5. Wijs het MoviesCSV-bestand aan dat u hierboven naar de opslag hebt geüpload

  6. Stel deze in op door komma's gescheiden en voeg koptekst op de eerste rij toe

  7. Ga naar het tabblad Bronprojectie en klik op Gegevenstypen detecteren

  8. Zodra uw projectieset is ingesteld, kunt u doorgaan

  9. Een sinktransformatie toevoegen

  10. Delta is een inline gegevenssettype. U moet verwijzen naar uw ADLS Gen2-opslagaccount.

    Inline dataset

  11. Kies een mapnaam in uw opslagcontainer waar u wilt dat ADF de Delta Lake maakt

  12. Ga terug naar de ontwerpfunctie voor pijplijnen en klik op Fouten opsporen om de pijplijn uit te voeren in de foutopsporingsmodus met alleen deze gegevensstroomactiviteit op het canvas. Hiermee wordt uw nieuwe Delta Lake in ADLS Gen2 gegenereerd.

  13. Klik in Factory-resources op nieuwe > gegevensstroom

  14. Gebruik de MoviesCSV opnieuw als bron en klik nogmaals op Gegevenstypen detecteren

  15. Een filtertransformatie toevoegen aan uw brontransformatie in de grafiek

  16. Alleen filmrijen toestaan die overeenkomen met de drie jaar waarmee u gaat werken, zijn 1950, 1988 en 1960

  17. Classificaties voor elke film van 1988 bijwerken naar '1' door nu een afgeleide kolomtransformatie toe te voegen aan uw filtertransformatie

  18. Maak in dezelfde afgeleide kolom films voor 2021 door een bestaand jaar te nemen en het jaar te wijzigen in 2021. Laten we 1960 kiezen.

  19. Dit is hoe uw drie afgeleide kolommen eruitzien

    Derived column

  20. Update, insert, delete, and upsert beleidsregels worden gemaakt in de wijzigingsrijtransformatie. Voeg een wijzigingsrijtransformatie toe na de afgeleide kolom.

  21. Uw beleid voor het wijzigen van rijen moet er als volgt uitzien.

    Alter row

  22. Nu u het juiste beleid voor elk type wijzigingsrij hebt ingesteld, controleert u of de juiste updateregels zijn ingesteld voor de sinktransformatie

    Sink

  23. Hier gebruiken we de Delta Lake-sink voor uw ADLS Gen2-data lake en maken het mogelijk om invoegingen, updates en verwijderingen toe te staan. 

  24. Houd er rekening mee dat de sleutelkolommen een samengestelde sleutel zijn die bestaat uit de kolom primaire sleutel van de film en de jaarkolom. Dit komt doordat we nepfilms van 2021 hebben gemaakt door de 1960 rijen te dupliceren. Dit voorkomt conflicten bij het opzoeken van de bestaande rijen door uniekheid te bieden.

Voltooid voorbeeld downloaden

Hier volgt een voorbeeldoplossing voor de Delta-pijplijn met een gegevensstroom voor het bijwerken/verwijderen van rijen in het lake:

Meer informatie over de expressietaal voor gegevensstromen.