DLT-pijplijnen gebruiken met een legacy Hive-metastore
In dit artikel worden configuraties en opmerkingen beschreven die specifiek zijn voor DLT-pijplijnen die zijn geconfigureerd voor het publiceren van gegevens naar de verouderde Hive-metastore. Databricks raadt het gebruik van Unity Catalog aan voor alle nieuwe pijplijnen. Zie Unity Catalog gebruiken met uw DLT-pijplijnen.
Notitie
In dit artikel wordt de functionaliteit voor de huidige standaardpublicatiemodus voor pijplijnen besproken. Pijplijnen die vóór 5 februari 2025 zijn gemaakt, kunnen gebruikmaken van de verouderde publicatiemodus en LIVE
virtueel schema. Zie LIVE-schema (verouderd).
Query's uitvoeren op streamingtabellen en gerealiseerde weergaven in de verouderde Hive-metastore
Nadat een update is voltooid, kunt u het schema en de tabellen bekijken, de gegevens opvragen of de gegevens gebruiken in downstreamtoepassingen.
Na publicatie kunnen DLT-tabellen vanuit elke omgeving worden opgevraagd met toegang tot het doelschema. Dit omvat Databricks SQL, notebooks en andere DLT-pijplijnen.
Belangrijk
Wanneer u een target
-configuratie maakt, worden alleen tabellen en gekoppelde metagegevens gepubliceerd. Weergaven worden niet gepubliceerd in de metastore.
Een pijplijn configureren voor publiceren naar Hive-metastore
Wanneer u een nieuwe pijplijn maakt, kunt u Hive-metastore opgeven onder de Opslagopties om te publiceren naar de verouderde Hive-metastore. U moet een standaarddoelschema opgeven bij het publiceren naar hive-metastore. Zie Een DLT-pijplijn configureren.
Een opslaglocatie opgeven
U kunt een opslaglocatie opgeven voor een pijplijn die wordt gepubliceerd naar de Hive Metastore. De primaire motivatie voor het opgeven van een locatie is het beheren van de opslaglocatie van objecten voor gegevens die zijn geschreven door uw pijplijn. Databricks raadt altijd aan om een opslaglocatie te specificeren om te voorkomen dat er naar de DBFS-hoofdmap wordt geschreven.
Omdat alle tabellen, gegevens, controlepunten en metagegevens voor DLT-pijplijnen volledig worden beheerd door DLT, gebeurt de meeste interactie met DLT-gegevenssets via tabellen die zijn geregistreerd bij de Hive-metastore of Unity Catalog.
Cloudopslagconfiguratie
Als u toegang wilt krijgen tot Azure Storage-, moet u de vereiste parameters configureren, inclusief toegangstokens, met behulp van spark.conf
-instellingen in uw clusterconfiguraties. Zie voor een voorbeeld van het configureren van toegang tot een ADLS Gen2-opslagaccount (Azure Data Lake Storage Gen2) Veilig toegang krijgen tot opslagreferenties met geheimen in een pijplijn.
Werken met gebeurtenislogboek voor Hive-metastore-pijplijnen
Als uw pijplijn tabellen publiceert naar de Hive-metastore, wordt het gebeurtenislogboek opgeslagen in /system/events
onder de storage
locatie. Als u bijvoorbeeld de instelling voor de pijplijn hebt geconfigureerd storage
als /Users/username/data
, wordt het gebeurtenislogboek opgeslagen op het pad /Users/username/data/system/events
in DBFS.
Als u de storage
-instelling niet hebt geconfigureerd, wordt de standaardlocatie van het gebeurtenislogboek /pipelines/<pipeline-id>/system/events
in DBFS. Als de id van uw pijplijn bijvoorbeeld is 91de5e48-35ed-11ec-8d3d-0242ac130003
, wordt de opslaglocatie /pipelines/91de5e48-35ed-11ec-8d3d-0242ac130003/system/events
.
U kunt een weergave maken om het uitvoeren van query's op het gebeurtenislogboek te vereenvoudigen. In het volgende voorbeeld wordt een tijdelijke weergave met de naam event_log_raw
gemaakt. Deze weergave wordt gebruikt in de voorbeeldquery's voor gebeurtenislogboeken die zijn opgenomen in dit artikel:
CREATE OR REPLACE TEMP VIEW event_log_raw
AS SELECT * FROM delta.`<event-log-path>`;
Vervang <event-log-path>
door de locatie van het gebeurtenislogboek.
Elk exemplaar van een pijplijnuitvoering wordt een updategenoemd. U wilt vaak informatie extraheren voor de meest recente update. Voer de volgende query uit om de id voor de meest recente update te vinden en op te slaan in de latest_update_id
tijdelijke weergave. Deze weergave wordt gebruikt in de voorbeeldquery's voor gebeurtenislogboeken die zijn opgenomen in dit artikel:
CREATE OR REPLACE TEMP VIEW latest_update AS
SELECT origin.update_id AS id
FROM event_log_raw
WHERE event_type = 'create_update'
ORDER BY timestamp DESC
LIMIT 1;
U kunt een query uitvoeren op het gebeurtenislogboek in een Azure Databricks-notebook of de SQL-editor. Gebruik een notebook of de SQL-editor om de voorbeeldquery's voor gebeurtenislogboeken uit te voeren.
voorbeeld van broncodenotebook voor pijplijnen voor werkruimten zonder Unity Catalog
U kunt de volgende notebooks importeren in een Azure Databricks-werkruimte zonder Unity Catalog ingeschakeld en deze gebruiken om een DLT-pijplijn te implementeren. Importeer het notebook van je gekozen taal en geef het pad op in het veld Broncode bij het configureren van een pijplijn met de Hive metastore opslagoptie. Zie Een DLT-pijplijn configureren.