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 van Unity Catalog. Vervolgens leert u hoe u de gegevens incrementeel opneemt in een Unity-Catalog beheerde table met behulp van Auto Loader met Delta Live Tables.
Notitie
Zie Gegevens laden met behulp van streaming-tables in Databricks SQLals u gegevens wilt onboarden in Databricks SQL in plaats van in een notebook.
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 met Unity Catalog ingeschakeld. Voor meer informatie, zie hoe je Unity instelt en beheert in SetCatalog.
De
READ VOLUME
machtiging voor het externe Unity-Catalog volume of deREAD FILES
-machtiging op de externe Unity Catalog-locatie die overeenkomt met de cloudopslaglocatie 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
enCREATE TABLE
bevoegdheden voor de schema waarnaar u gegevens wilt laden.machtiging voor het maken van clusters of toegang tot een clusterbeleid waarmee een Delta Live Tables pijplijncluster (
cluster_type
veld set voordlt
wordt gedefinieerd).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:
- Meld u aan bij uw Azure Databricks-werkruimte.
- Klik in de zijbalk op Nieuw>cluster.
- Geef in de gebruikersinterface van clusters een unieke naam op voor uw cluster.
- Als het pad naar uw brongegevens een volumepad is, voor Databricks Runtime-runtimeversie, select 13.2 of hoger.
- 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.
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).
Voer een naam in voor het notitieblok.
Klik op de taalknop en selecteer vervolgens select,
Python
ofSQL
in het keuzemenu.Python
is standaard geselecteerd.Als u gegevenstoegang tot uw brongegevens in ADLS Gen2 wilt bevestigen, plakt u de volgende code in een notebookcel, klikt u
op 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.
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
en 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 values:
-
<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:
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).
Voer een naam in voor het notitieblok.
Klik op de taalknop en select
Python
ofSQL
in de vervolgkeuzelijst.Python
is standaard geselecteerd.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 values:
-
<table-name>
: een naam voor de table die de ingevoerde 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 Delta Live Tables syntaxis 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:
- Klik in de zijbalk op Werkstromen, klik op het tabblad Delta Live Tables en klik vervolgens op Pijplijn maken.
- Voer een naam in voor uw pijplijn.
- Voor pijplijnmoduswerd selectgeactiveerd.
- Voor de broncode van is select het notebook dat de broncode van de pijplijn bevat.
- Voor Bestemming, selectEenheid Catalog.
- Om ervoor te zorgen dat uw table wordt beheerd door Unity Catalog en elke gebruiker met toegang tot de bovenliggende schema er query's op kan uitvoeren, select een Catalog en een Target-schema in de vervolgkeuzelijsten.
- Als u geen machtiging voor het maken van clusters hebt, select u een Clusterbeleid dat Ondersteuning biedt voor Delta Live-Tables in de vervolgkeuzelijst list.
- Voor Advancedde setChannel naar Preview.
- Accepteer alle andere standaard-values en klik op maken.
Stap 5: De pijplijn plannen
Ga als volgt te werk om de pijplijn te plannen:
- Klik in de zijbalk op Delta Live-Tables.
- Klik op de naam van de pijplijn die u wilt plannen.
- Klik op Een>planning toevoegen.
- Voer een naam in voor de taaknaam.
- Set het schema om te plannen.
- Geef de periode, begintijd en tijdzone op.
- Configureer een of meer e-mailadressen voor het ontvangen van waarschuwingen bij het starten, slagen of mislukken van de pijplijn.
- Klik op Create.
Volgende stappen
- Grant gebruikers toegang tot de nieuwe table. Zie Unity-Catalog bevoegdheden en beveiligbare objectenvoor meer informatie.
- Gebruikers met toegang tot de nieuwe table kunnen nu een query uitvoeren op de table in een notebook of de Databricks SQL-editor gebruiken.