Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Op deze pagina wordt beschreven hoe u Unity Catalog gebruikt om informatie te krijgen over gegevensproviders die gegevens met u delen met behulp van Delta Sharing. Ook wordt beschreven wat een providerobject is en wanneer u mogelijk een providerobject moet maken in uw Unity Catalog-metastore, een taak die de meeste ontvangers nooit hoeven te doen.
Belangrijk
Gegevensontvangers moeten toegang hebben tot een Databricks-werkruimte die is ingeschakeld voor Unity Catalog om de beschreven functies te kunnen gebruiken. Deze pagina is niet van toepassing op ontvangers die geen werkruimten met Unity Catalog hebben.
Moeten providerobjecten door geadresseerden worden gemaakt?
In Delta Sharing op Databricks kan de term 'provider' zowel de organisatie betekenen die gegevens met u deelt als een beveiligbaar object in de Unity Catalog-metastore van een geadresseerde die die organisatie vertegenwoordigt. Het bestaan van dat beveiligbare object in de Unity Catalog-metastore van een geadresseerde stelt ontvangers in staat om de toegang van hun team tot gedeelde gegevens te beheren met behulp van Unity Catalog.
Als ontvanger met toegang tot een Unity Catalog-metastore hoeft u doorgaans geen providerobjecten te maken. Dit komt doordat gegevens met u moeten worden gedeeld via Databricks-to-Databricks sharing, en providerobjecten automatisch worden gemaakt in uw Unity Catalog-metastore.
Notitie
Als u gegevens ontvangt van een provider die niet deelt vanuit een Databricks-werkruimte met Unity Catalog, kunt u Catalog Explorer gebruiken om het referentiebestand van de provider te importeren. Zie Azure Databricks: Gedeelde gegevens lezen met behulp van connectoren voor open sharing.
Voordat u begint
Providers beheren in uw Azure Databricks-werkruimte:
- Uw werkruimte moet zijn ingeschakeld voor Unity Catalog.
- Als u een provider wilt weergeven, moet u een metastore-beheerder zijn of moet een metastore-beheerder u de
USE PROVIDERbevoegdheid verlenen. - Als u een provider wilt maken, moet u een metastore-beheerder zijn of moet een metastore-beheerder u de
CREATE PROVIDERbevoegdheid verlenen. - Als u een provider wilt bijwerken, moet u de eigenaar van het providerobject zijn en over de
CREATE PROVIDERbevoegdheid beschikken. Zie Een provider bijwerken (naam wijzigen, eigenaar wijzigen, opmerking) voor meer informatie.
Als uw werkruimte daarom is gemaakt zonder een metastore-beheerder, moet een Azure Databricks-accountbeheerder een gebruiker of groep de beheerdersrol metastore verlenen voordat u met providerobjecten in Azure Databricks kunt werken. Zie Automatisch inschakelen van Unity Catalog en (optioneel) Wijs de metastore-beheerdersrol toe.
Providers weergeven
Als u een lijst met beschikbare gegevensproviders wilt weergeven, kunt u Catalog Explorer, de Databricks Unity Catalog CLI of de SHOW PROVIDERS SQL-opdracht gebruiken in een Azure Databricks-notebook of de Databricks SQL-queryeditor.
Vereiste machtigingen: u moet de USE PROVIDER bevoegdheid hebben om alle providers in de metastore weer te geven. Andere gebruikers hebben alleen toegang tot de providers die ze bezitten.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op
Catalogus.
Klik bovenaan het deelvenster Catalogus op het
en selecteer Delta Sharing.
U kunt alternatief in de rechterbovenhoek op Share > Delta Sharing klikken.
Bekijk op het tabblad Gedeeld met mij alle gegevens die met uw organisatie worden gedeeld. Voor elke share worden de volgende details gegeven:
- Naam: De naam van de organisatie, zoals opgegeven door de provider.
- Verificatietype: De methode voor delen die door de provider wordt gebruikt.
- Eigenaar: De naam of het e-mailadres van de provider.
- Gemaakt op: De datum en tijd waarop de share is gemaakt.
- Beschrijving: De beschrijving van de share.
SQL
Voer de volgende opdracht uit in een notebook of de Sql-query-editor van Databricks. Vervang desgewenst door <pattern> een LIKE predicaat.
SHOW PROVIDERS [LIKE <pattern>];
Zie SHOW PROVIDERSvoor meer informatie over SHOW PROVIDERS.
CLI (Command Line Interface)
Voer de volgende opdracht uit met behulp van de Databricks CLI.
databricks providers list
Details van provider weergeven
Als u details over een provider wilt weergeven, kunt u Catalog Explorer, de Databricks Unity Catalog CLI of de DESCRIBE PROVIDER SQL-opdracht gebruiken in een Azure Databricks-notebook of de Databricks SQL-queryeditor.
Vereiste machtigingen: Metastore-beheerder, gebruiker met de USE PROVIDER bevoegdheid of de eigenaar van het providerobject.
Details zijn onder andere:
- Shares die door de provider worden gedeeld (zie Shares weergeven die een provider met u heeft gedeeld).
- De maker van de provider, de aanmaakdatum, opmerkingen en verificatietype (
TOKENofDATABRICKS).TOKENvertegenwoordigt providers die met u gegevens hebben gedeeld met behulp van het open sharing-protocol voor Delta Sharing.DATABRICKSvertegenwoordigt providers die gegevens met u hebben gedeeld met behulp van het Databricks-to-Databricks-sharing-protocol. - Als de provider Databricks-to-Databricks deelt: de cloud-, regio- en metastore-id van de Unity Catalog-metastore van de provider.
- Als de provider open delen gebruikt: het eindpunt van uw geadresseerdeprofiel. Dit is de locatie waar de Delta Sharing-server wordt gehost.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op
Catalogus.
Klik bovenaan het deelvenster Catalogus op het
en selecteer Delta Sharing.
U kunt alternatief in de rechterbovenhoek op Share > Delta Sharing klikken.
Zoek en selecteer de provider op het tabblad Gedeeld met mij .
SQL
Voer de volgende opdracht uit in een notebook of de Sql-query-editor van Databricks.
DESC PROVIDER <provider-name>;
Zie DESC PROVIDERvoor meer informatie over DESCRIBE PROVIDER.
CLI (Command Line Interface)
Voer de volgende opdracht uit met behulp van de Databricks CLI.
databricks providers get <provider-name>
Shares weergeven die een provider met u heeft gedeeld
Als u de shares wilt weergeven die een provider met u heeft gedeeld, kunt u Catalog Explorer, de Databricks Unity Catalog CLI of de SHOW SHARES IN PROVIDER SQL-opdracht gebruiken in een Azure Databricks-notebook of de Databricks SQL-queryeditor.
Vereiste machtigingen: Metastore-beheerder, gebruiker met de USE PROVIDER bevoegdheid of de eigenaar van het providerobject.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op
Catalogus.
Klik bovenaan het deelvenster Catalogus op het
en selecteer Delta Sharing.
U kunt alternatief in de rechterbovenhoek op Share > Delta Sharing klikken.
Zoek en selecteer de provider op het tabblad Gedeeld met mij .
SQL
Voer de volgende opdracht uit in een notebook of de Sql-query-editor van Databricks. Vervang desgewenst door <pattern> een LIKE predicaat.
SHOW SHARES IN PROVIDER [LIKE <pattern>];
Zie SHOW SHARES IN PROVIDERvoor meer informatie over SHOW SHARES IN PROVIDER.
CLI (Command Line Interface)
Voer de volgende opdracht uit met behulp van de Databricks CLI.
databricks providers list-shares <provider-name>
Een provider bijwerken (naam wijzigen, eigenaar wijzigen, opmerking)
U kunt Catalog Explorer, de Databricks Unity Catalog CLI of de ALTER PROVIDER SQL-opdracht gebruiken in een Azure Databricks-notebook of de Databricks SQL-queryeditor om het providerobject in uw Unity Catalog-metastore te wijzigen:
- Wijzig de naam van de provider om de manier te wijzigen waarop gebruikers het providerobject in hun Databricks-interfaces zien.
- Wijzig de eigenaar van het providerobject.
- Opmerkingen toevoegen of wijzigen.
Vereiste machtigingen: u moet de eigenaar van het providerobject zijn om de eigenaar bij te werken. U moet een metastore-beheerder (of gebruiker met de CREATE PROVIDER bevoegdheid) en de eigenaar van de provider zijn om de providernaam bij te werken. U moet de eigenaar zijn om de opmerking bij te werken. De initiële eigenaar is de metastore-beheerder.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op
Catalogus.
Klik bovenaan het deelvenster Catalogus op het
en selecteer Delta Sharing.
U kunt alternatief in de rechterbovenhoek op Share > Delta Sharing klikken.
Zoek en selecteer de provider op het tabblad Gedeeld met mij .
Werk op de detailpagina de naam van de eigenaar, opmerking of provider bij.
Als u de naam van een provider wilt wijzigen, klikt u op het
en selecteert u Naam wijzigen.
SQL
Voer de volgende opdracht uit in een notebook of de Sql-query-editor van Databricks.
ALTER PROVIDER <provider-name> RENAME TO <new-provider-name>
OWNER TO <new-owner>
COMMENT "<comment>";
Zie ALTER PROVIDERvoor meer informatie over ALTER PROVIDER.
CLI (Command Line Interface)
Voer de volgende opdracht uit met behulp van de Databricks CLI. Vervang <provider-name> door de naam van de huidige provider en <new-provider-name> door de nieuwe naam.
databricks providers update <provider-name> /
--new-name <new-provider-name> /
--comment "<new comment>" /
--owner <new-owner-name>
Referenties roteren voor open ontvangers
Deze sectie is van toepassing op providerobjecten met verificatietype TOKEN, OAUTH_CLIENT_CREDENTIALSof OIDC_FEDERATION. Databricks-to-Databricks-providers (verificatietype DATABRICKS) draaien automatisch. Als u bijvoorbeeld toegang hebt tot gegevens zonder een providerobject met behulp van de delta-sharing Python of Spark-connector, past u het nieuwe referentiebestand toe in de connectorconfiguratie. Zie Gegevens lezen die worden gedeeld met Delta Sharing via open delen met bearer-tokens.
Een provider die het open sharing-protocol gebruikt, kan uw Bearer-token bijwerken en u een nieuw identiteitsbestand sturen. Als dat gebeurt, gebruikt u de Databricks REST API om het providerobject bij te werken. Verwijder de provider niet en maak deze niet opnieuw aan om een nieuw referentiepunt toe te passen. Catalogi binden zich aan de interne id van de provider, niet aan de naam ervan. Het opnieuw maken van een provider met dezelfde naam breekt de verbinding van de catalogus met de gedeelde gegevens.
ALTER PROVIDER, de Databricks CLI en Catalog Explorer bieden geen ondersteuning voor het bijwerken van providerreferenties.
De referentie bijwerken
Verzend een PATCH aanvraag naar het eindpunt van de provider met de inhoud van het nieuwe referentiebestand in het recipient_profile_str veld.
Vereiste machtigingen: eigenaar van providerobject of metastore-beheerder.
Python
Voer het volgende uit vanuit een notebook in de werkruimte van de ontvanger. Vervang <provider-name> door de naam van het providerobject in uw metastore en werk new_profile bij met de waarden uit het nieuwe referentiebestand.
import json
import requests
new_profile = {
"shareCredentialsVersion": 1,
"bearerToken": "<new-bearer-token>",
"endpoint": "https://<provider-workspace>.cloud.databricks.com/api/2.0/delta-sharing/metastores/<metastore-id>",
}
token = (
dbutils.notebook.entry_point.getDbutils()
.notebook()
.getContext()
.apiToken()
.get()
)
workspace_url = spark.conf.get("spark.databricks.workspaceUrl")
response = requests.patch(
f"https://{workspace_url}/api/2.1/unity-catalog/providers/<provider-name>",
headers={
"Authorization": f"Bearer {token}",
"Content-Type": "application/json",
},
json={"recipient_profile_str": json.dumps(new_profile)},
)
print(response.status_code)
print(response.json())
curl
curl --request PATCH \
--header "Authorization: Bearer $DATABRICKS_TOKEN" \
--header "Content-Type: application/json" \
--url "https://<databricks-instance>/api/2.1/unity-catalog/providers/<provider-name>" \
--data '{
"recipient_profile_str": "<contents of the new credential file>"
}'
Een geslaagde rotatie retourneert het volgende antwoord met de bijgewerkte metagegevens van de provider.
{
"name": "<provider-name>",
"authentication_type": "TOKEN",
"owner": "user@example.com",
"recipient_profile": {
"share_credentials_version": 1,
"endpoint": "https://<provider-workspace>.cloud.databricks.com/api/2.0/delta-sharing/metastores/<metastore-id>"
},
"updated_at": 1775804332820,
"updated_by": "user@example.com",
"id": "abcd2a5b-c18e-46eb-ae11-3056cfe99bef"
}
Zie de REST API van een provider bijwerken voor meer informatie.
De draaiing controleren
Controleer of de catalogus, schema's en tabellen nog steeds toegankelijk zijn. De catalogusnaam moet hetzelfde zijn als vóór de rotatie.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op
Catalogus.
Klik bovenaan het deelvenster Catalogus op het
en selecteer Delta Sharing.
U kunt alternatief in de rechterbovenhoek op Share > Delta Sharing klikken.
Zoek uw provider op het tabblad Gedeeld met mij .
Eerdere foutbanners moeten verdwenen zijn en de aandelen moeten opnieuw worden vermeld. De vermelde catalogus moet hetzelfde zijn als voorheen.
SQL
Voer de volgende SQL uit in een notebook of de Sql-queryeditor van Databricks.
-- The catalog name should match what it was before rotation
SHOW CATALOGS;
-- Schemas in the shared catalog should still appear
SHOW SCHEMAS IN <catalog-name>;
-- Tables should still appear
SHOW TABLES IN <catalog-name>.<schema-name>;
-- A read from a shared table should return data
SELECT * FROM <catalog-name>.<schema-name>.<table-name> LIMIT 10;
Als de query's slagen, is de rotatie voltooid en blijven alle bestaande query's, opdrachten en dashboards functioneren.
Problemen oplossen
| Fout | Repareren |
|---|---|
Aanvraag retourneert 403 Forbidden |
U moet de eigenaar van de provider of een metastore-beheerder zijn om referenties te vernieuwen. Vraag een metastore-beheerder om de rotatie toe te passen of het eigendom over te dragen. Zie Shares bijwerken. |
Aanvraag retourneert 404 Not Found |
De providernaam is onjuist. Voer deze opdracht uit SHOW PROVIDERS om de exacte namen in uw metastore weer te geven. |
Aanvraag retourneert 400 Bad Request met het bericht „ontvangerprofiel kan niet worden geüpdatet” |
De API werkt alleen referenties voor TOKENen OAUTH_CLIENT_CREDENTIALSOIDC_FEDERATION providers bij. Voor Databricks-naar-Databricks-deling worden inloggegevens automatisch vernieuwd. |
Queries retourneren TABLE_OR_VIEW_NOT_FOUND |
De catalogusnaam is mogelijk onjuist of de catalogus-naar-provider-binding is mogelijk verbroken. Voer SHOW CATALOGS en SHOW SCHEMAS IN <catalog-name> uit om te bevestigen dat de catalogus bestaat. |
Catalogusverkenner toont verouderde gegevens of fouten na een geslaagde bewerking PATCH. |
U ziet resultaten in de cache van vóór de rotatie. Vernieuw de pagina of wacht enkele minuten. |
Een provider verwijderen
Als u een provider wilt verwijderen, kunt u Catalog Explorer, de Databricks CLI of de DROP PROVIDER SQL-opdracht gebruiken in een Azure Databricks notebook of de Databricks SQL-queryeditor. U moet de eigenaar van het providerobject zijn om de provider te verwijderen.
Wanneer u een provider verwijdert, hebben u en de gebruikers in uw organisatie (de ontvanger) geen toegang meer tot de gegevens die door de provider worden gedeeld.
Vereiste machtigingen: eigenaar van providerobject.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op
Catalogus.
Klik bovenaan het deelvenster Catalogus op het
en selecteer Delta Sharing.
U kunt alternatief in de rechterbovenhoek op Share > Delta Sharing klikken.
Zoek en selecteer de provider op het tabblad Gedeeld met mij .
Klik op het
Selecteer Verwijderen.
Klik in het bevestigingsvenster op Verwijderen.
SQL
Voer de volgende opdracht uit in een notebook of de Sql-query-editor van Databricks.
DROP PROVIDER [IF EXISTS] <provider-name>;
Zie DROP PROVIDERvoor meer informatie over DROP PROVIDER.
CLI (Command Line Interface)
Voer de volgende opdracht uit met behulp van de Databricks CLI.
databricks providers delete <provider-name>
Als de bewerking is geslaagd, worden er geen resultaten geretourneerd.