Gegevens onboarden vanuit Azure Data Lake Storage Gen2

In dit artikel wordt beschreven hoe u gegevens kunt onboarden naar een nieuwe Azure Databricks-werkruimte vanuit Azure Data Lake Storage Gen2. U leert hoe u veilig toegang krijgt tot brongegevens in een opslaglocatie voor cloudobjecten die overeenkomt met een Unity Catalog-volume (aanbevolen) of een externe locatie voor Unity Catalog. Vervolgens leert u hoe u de gegevens incrementeel opneemt in een beheerde tabel van Unity Catalog met behulp van automatisch laden met Delta Live Tables.

Voordat u begint

Als u geen beheerder bent, wordt in dit artikel ervan uitgegaan dat een beheerder u het volgende heeft verstrekt:

  • Toegang tot een Azure Databricks-werkruimte waarvoor Unity Catalog is ingeschakeld. Zie Unity Catalog instellen en beheren voor meer informatie.

  • De READ FILES machtiging voor het externe volume van de Unity Catalog of de externe locatie van Unity Catalog die overeenkomt met de opslaglocatie in de cloud die uw brongegevens bevat. Zie Een externe locatie maken om cloudopslag te verbinden met Azure Databricks voor meer informatie.

  • Het pad naar de brongegevens.

    Voorbeeld van volumepad: /Volumes/<catalog>/<schema>/<volume>/<path>/<folder>

    Voorbeeld van extern locatiepad: abfss://<container>@<storage-account>.dfs.core.windows.net/<folder>

  • De USE SCHEMA en CREATE TABLE bevoegdheden voor het schema waarnaar u gegevens wilt laden.

  • Machtiging voor het maken van clusters of toegang tot een clusterbeleid dat een pijplijncluster van Delta Live Tables definieert (cluster_type veld ingesteld op dlt).

    Als het pad naar uw brongegevens een volumepad is, moet uw cluster Databricks Runtime 13.3 LTS of hoger uitvoeren.

Belangrijk

Als u vragen hebt over deze vereisten, neemt u contact op met uw accountbeheerder.

Stap 1: Een cluster maken

Ga als volgt te werk om een cluster te maken:

  1. Meld u aan bij uw Azure Databricks-werkruimte.
  2. Klik in de zijbalk op Nieuw>cluster.
  3. Geef in de gebruikersinterface van clusters een unieke naam op voor uw cluster.
  4. Als het pad naar uw brongegevens een volumepad is, selecteert u voor de Runtime-versie van Databricks Runtime 13.2 of hoger.
  5. Klik op Cluster maken.

Stap 2: Een notebook voor gegevensverkenning maken

In deze sectie wordt beschreven hoe u een notebook voor gegevensverkenning maakt, zodat u uw gegevens begrijpt voordat u uw gegevenspijplijn maakt.

  1. Klik in de zijbalk op +Nieuw>notitieblok.

    Het notebook wordt automatisch gekoppeld aan het laatste cluster dat u hebt gebruikt (in dit geval het cluster dat u in stap 1 hebt gemaakt: een cluster maken).

  2. Voer een naam in voor het notitieblok.

  3. Klik op de taalknop en selecteer of selecteer in PythonSQL de vervolgkeuzelijst. Python is standaard geselecteerd.

  4. Als u gegevenstoegang tot uw brongegevens in ADLS Gen2 wilt bevestigen, plakt u de volgende code in een notebookcel, klikt u Menu Uitvoerenop en klikt u vervolgens op Cel uitvoeren.

    SQL

    LIST '<path-to-source-data>'
    

    Python

    %fs ls '<path-to-source-data>'
    

    Vervang <path-to-source-data> door het pad naar de map die uw gegevens bevat.

    Hiermee wordt de inhoud weergegeven van de map die de gegevensset bevat.

  5. Als u een voorbeeld van de records wilt weergeven om de inhoud en opmaak van elke record beter te begrijpen, plakt u het volgende in een notebookcel, klikt u Menu Uitvoerenen klikt u vervolgens op Cel uitvoeren.

    SQL

    SELECT * from read_files('<path-to-source-data>', format => '<file-format>') LIMIT 10
    

    Python

    spark.read.format('<file-format>').load('<path-to-source-data>').limit(10).display()
    

    Vervang de volgende waarden:

    • <file-format>: Een ondersteunde bestandsindeling. Zie opties voor bestandsindeling.
    • <path to source data>: het pad naar een bestand in de map met uw gegevens.

    Hiermee worden de eerste tien records uit het opgegeven bestand weergegeven.

Stap 3: Onbewerkte gegevens opnemen

Ga als volgt te werk om onbewerkte gegevens op te nemen:

  1. Klik in de zijbalk op Nieuw>notitieblok.

    Het notebook wordt automatisch gekoppeld aan het laatste cluster dat u hebt gebruikt (in dit geval het cluster dat u eerder in dit artikel hebt gemaakt).

  2. Voer een naam in voor het notitieblok.

  3. Klik op de taalknop en selecteer of selecteer in PythonSQL de vervolgkeuzelijst. Python is standaard geselecteerd.

  4. Plak de volgende code in een notebookcel:

    SQL

    CREATE OR REFRESH STREAMING TABLE
      <table-name>
    AS SELECT
      *
    FROM
      STREAM read_files(
        '<path-to-source-data>',
        format => '<file-format>'
      )
    

    Python

    @dlt.table(table_properties={'quality': 'bronze'})
    def <table-name>():
      return (
         spark.readStream.format('cloudFiles')
         .option('cloudFiles.format', '<file-format>')
         .load(f'{<path-to-source-data>}')
     )
    

    Vervang de volgende waarden:

    • <table-name>: Een naam voor de tabel die de opgenomen records bevat.
    • <path-to-source-data>: het pad naar de brongegevens.
    • <file-format>: Een ondersteunde bestandsindeling. Zie opties voor bestandsindeling.

Notitie

Delta Live Tables is niet ontworpen om interactief te worden uitgevoerd in notebookcellen. Het uitvoeren van een cel met de syntaxis van Delta Live Tables in een notebook retourneert een bericht over of de query syntactisch geldig is, maar voert geen querylogica uit. In de volgende stap wordt beschreven hoe u een pijplijn maakt op basis van het opnamenotitieblok dat u zojuist hebt gemaakt.

Stap 4: Een pijplijn maken en publiceren

Ga als volgt te werk om een pijplijn te maken en te publiceren naar Unity Catalog:

  1. Klik in de zijbalk op Werkstromen, klik op het tabblad Delta Live Tables en klik vervolgens op Pijplijn maken.
  2. Voer een naam in voor uw pijplijn.
  3. Selecteer Geactiveerd voor de pijplijnmodus.
  4. Selecteer voor broncode het notebook dat de broncode van uw pijplijn bevat.
  5. Selecteer Unity Catalog voor Bestemming.
  6. Om ervoor te zorgen dat uw tabel wordt beheerd door Unity Catalog en elke gebruiker met toegang tot het bovenliggende schema een query kan uitvoeren, selecteert u een catalogus en een doelschema in de vervolgkeuzelijsten.
  7. Als u geen machtiging voor het maken van clusters hebt, selecteert u een clusterbeleid dat Ondersteuning biedt voor Delta Live Tables in de vervolgkeuzelijst.
  8. Voor Geavanceerd stelt u het kanaal in op Preview.
  9. Accepteer alle andere standaardwaarden en klik op Maken.

Stap 5: De pijplijn plannen

Ga als volgt te werk om de pijplijn te plannen:

  1. Klik in de zijbalk op Delta Live Tables.
  2. Klik op de naam van de pijplijn die u wilt plannen.
  3. Klik op Een>planning toevoegen.
  4. Voer een naam in voor de taaknaam.
  5. Stel de planning in op Gepland.
  6. Geef de periode, begintijd en tijdzone op.
  7. Configureer een of meer e-mailadressen voor het ontvangen van waarschuwingen bij het starten, slagen of mislukken van de pijplijn.
  8. Klik op Create.

Volgende stappen