Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Na tej stronie opisano, jak używać Unity Catalog do uzyskiwania informacji o dostawcach danych, którzy udostępniają Tobie dane za pomocą OpenSharing. Opisuje również, czym jest obiekt dostawcy i kiedy może być konieczne jego utworzenie w katalogu Unity Metadata, co jest zadaniem, którego większość użytkowników nigdy nie powinna musieć wykonywać.
Important
Adresaci danych muszą mieć dostęp do obszaru roboczego usługi Databricks, który ma włączony Unity Catalog, aby korzystać z opisanych funkcji. Ta strona nie ma zastosowania do odbiorców, którzy nie mają obszarów roboczych z włączonym katalogiem Unity Catalog.
Czy adresaci muszą tworzyć obiekty dostawcy?
W OpenSharing w Databricks termin „dostawca” może oznaczać zarówno organizację, która udostępnia Ci dane, jak i obiekt zabezpieczalny w metastore usługi Unity Catalog odbiorcy, który reprezentuje tę organizację. Istnienie chronionego obiektu w metastore Unity Catalog odbiorcom umożliwia zarządzanie dostępem ich zespołu do udostępnionych danych przy użyciu Unity Catalog.
Jako odbiorca z dostępem do metastore katalogu Unity, zazwyczaj nie musisz tworzyć obiektów usługodawców. Jest to spowodowane tym, że dane powinny być udostępniane za pomocą funkcji udostępniania Databricks-do-Databricks, a obiekty dostawcy są tworzone automatycznie w katalogu metadanych Unity Catalog.
Note
Jeśli otrzymujesz dane od dostawcy, który nie udostępnia ich z obszaru roboczego Azure Databricks z obsługą Unity Catalog, możesz użyć Eksploratora katalogu, aby zaimportować plik poświadczeń dostawcy. Zobacz Importowanie dostawcy i odczytywanie udostępnionych danych w Azure Databricks.
Zanim rozpoczniesz
Aby zarządzać dostawcami w obszarze roboczym usługi Azure Databricks:
- Obszar roboczy musi być włączony dla Unity Catalog.
- Aby wyświetlić dostawcę, musisz być administratorem magazynu metadanych lub administratorem magazynu metadanych musi przyznać Ci
USE PROVIDERuprawnienia. - Aby utworzyć dostawcę, musisz być administratorem magazynu metadanych lub administratorem magazynu metadanych musi przyznać Ci
CREATE PROVIDERuprawnienia. - Aby zaktualizować dostawcę, musisz być właścicielem obiektu dostawcy i mieć
CREATE PROVIDERuprawnienia. Aby uzyskać szczegółowe informacje, zobacz Aktualizowanie dostawcy (zmiana nazwy, zmiana właściciela, komentarz).
Z tego powodu jeśli obszar roboczy został utworzony bez administratora magazynu metadanych, administrator konta usługi Azure Databricks musi przyznać użytkownikowi lub grupie rolę administratora magazynu metadanych, zanim będzie można pracować z obiektami dostawcy w usłudze Azure Databricks. Zobacz Pierwsze kroki z Unity Catalog i Administratorzy magazynu metadanych.
Wyświetlanie dostawców
Aby wyświetlić listę dostępnych dostawców danych, możesz użyć Eksploratora katalogów, interfejsu wiersza poleceń Unity Catalog Databricks lub polecenia SHOW PROVIDERS SQL w notatniku usługi Azure Databricks lub edytorze zapytań SQL usługi Databricks.
Wymagane uprawnienia: musisz mieć USE PROVIDER przywilej, aby wyświetlić wszystkich dostawców w metastore. Inni użytkownicy mają dostęp tylko do dostawców, których są właścicielami.
Eksplorator wykazu
W obszarze roboczym Azure Databricks kliknij pozycję
Catalog.
W górnej części panelu Katalog kliknij ikonę koła zębatego
i wybierz pozycję OpenSharing.
Alternatywnie, w górnym prawym rogu kliknij Udostępnij > OpenSharing.
Na karcie Udostępnione mi wyświetl wszystkie dane udostępnione twojej organizacji. Dla każdego udziału podano następujące szczegóły:
- Nazwa: Nazwa organizacji określona przez dostawcę.
- Typ uwierzytelniania: Metoda udostępniania używana przez dostawcę.
- Właściciel: Nazwa lub adres e-mail dostawcy.
- Utworzono w: Data i godzina utworzenia udziału.
- Opis: Opis udziału.
SQL
Uruchom następujące polecenie w notesie lub edytorze zapytań SQL usługi Databricks. Opcjonalnie zastąp element <pattern> predykatemLIKE.
SHOW PROVIDERS [LIKE <pattern>];
Aby uzyskać więcej informacji na temat SHOW PROVIDERS, zobacz SHOW PROVIDERS.
CLI
Uruchom następujące polecenie za pomocą Databricks CLI.
databricks providers list
Wyświetlanie szczegółów dostawcy
Aby wyświetlić szczegółowe informacje o dostawcy, możesz użyć Eksploratora Katalogów, wiersza poleceń Databricks Unity Catalog CLI lub polecenia DESCRIBE PROVIDER SQL w notesie Azure Databricks albo edytorze zapytań SQL Databricks.
Wymagane uprawnienia: administrator magazynu metadanych, użytkownik z USE PROVIDER uprawnieniami lub właściciel obiektu dostawcy.
Szczegóły obejmują:
- Udziały udostępnione przez dostawcę (zobacz Udziały, które dostawca udostępnił Tobie).
- Twórca dostawcy, sygnatura czasowa tworzenia, komentarze i typ uwierzytelniania (
TOKENlubDATABRICKS).TOKENreprezentuje dostawców, którzy udostępnili Ci dane przy użyciu protokołu udostępniania usługi Databricks-to-Open.DATABRICKSreprezentuje dostawców, którzy udostępnili Ci dane przy użyciu protokołu udostępniania usługi Databricks-to-Databricks. - Jeśli dostawca korzysta z udostępniania Databricks-do-Databricks: chmura, region i identyfikator magazynu danych katalogu Unity dostawcy.
- Jeśli dostawca korzysta z udostępniania typu Databricks-to-Open: punkt końcowy profilu odbiorcy, czyli punkt końcowy, na którym jest hostowany serwer współdzielenia OpenSharing.
Eksplorator wykazu
W obszarze roboczym Azure Databricks kliknij pozycję
Catalog.
W górnej części panelu Katalog kliknij ikonę koła zębatego
i wybierz pozycję OpenSharing.
Alternatywnie, w górnym prawym rogu kliknij Udostępnij > OpenSharing.
Na karcie Udostępnione mi znajdź i wybierz dostawcę.
SQL
Uruchom następujące polecenie w notesie lub edytorze zapytań SQL usługi Databricks.
DESC PROVIDER <provider-name>;
Aby uzyskać więcej informacji na temat DESC PROVIDER, zobacz DESCRIBE PROVIDER.
CLI
Uruchom następujące polecenie za pomocą Databricks CLI.
databricks providers get <provider-name>
Wyświetl udziały, które dostawca udostępnił Tobie
Aby wyświetlić udziały udostępnione przez dostawcę, możesz użyć Eksploratora katalogów, interfejsu wiersza polecenia Databricks Unity Catalog lub polecenia SHOW SHARES IN PROVIDER SQL w notatniku Azure Databricks lub edytorze zapytań SQL usługi Databricks.
Wymagane uprawnienia: administrator magazynu metadanych, użytkownik z USE PROVIDER uprawnieniami lub właściciel obiektu dostawcy.
Eksplorator wykazu
W obszarze roboczym Azure Databricks kliknij pozycję
Catalog.
W górnej części panelu Katalog kliknij ikonę koła zębatego
i wybierz pozycję OpenSharing.
Alternatywnie, w górnym prawym rogu kliknij Udostępnij > OpenSharing.
Na karcie Udostępnione mi znajdź i wybierz dostawcę.
SQL
Uruchom następujące polecenie w notesie lub edytorze zapytań SQL usługi Databricks. Opcjonalnie zastąp element <pattern> predykatemLIKE.
SHOW SHARES IN PROVIDER [LIKE <pattern>];
Aby uzyskać więcej informacji na temat SHOW SHARES IN PROVIDER, zobacz SHOW SHARES IN PROVIDER.
CLI
Uruchom następujące polecenie za pomocą Databricks CLI.
databricks providers list-shares <provider-name>
Aktualizowanie dostawcy (zmiana nazwy, zmiana właściciela, komentarz)
Możesz użyć Eksploratora Katalogu, interfejsu wiersza polecenia Databricks Unity Catalog, polecenia SQL w notatniku Azure Databricks lub edytora zapytań SQL Databricks, aby zmodyfikować obiekt dostawcy w metastore Unity Catalog.
- Zmień nazwę dostawcy, aby zmodyfikować sposób, w jaki użytkownicy widzą obiekt dostawcy w interfejsach usługi Databricks.
- Zmień właściciela obiektu dostawcy.
- Dodawanie lub modyfikowanie komentarzy.
Wymagane uprawnienia: aby zaktualizować właściciela, musisz być właścicielem obiektu dostawcy. Aby zaktualizować nazwę dostawcy, musisz być administratorem magazynu metadanych (lub użytkownikiem z CREATE PROVIDER uprawnieniami) i właścicielem dostawcy. Aby zaktualizować komentarz, musisz być właścicielem. Początkowy właściciel jest administratorem magazynu metadanych.
Eksplorator wykazu
W obszarze roboczym Azure Databricks kliknij pozycję
Catalog.
W górnej części panelu Katalog kliknij ikonę koła zębatego
i wybierz pozycję OpenSharing.
Alternatywnie, w górnym prawym rogu kliknij Udostępnij > OpenSharing.
Na karcie Udostępnione mi znajdź i wybierz dostawcę.
Na stronie szczegółów zaktualizuj właściciela, komentarz lub nazwę dostawcy.
Aby zmienić nazwę dostawcy, kliknij
i wybierz pozycję Zmień nazwę.
SQL
Wykonaj jedno lub więcej poleceń w notatniku lub edytorze zapytań SQL Databricks:
ALTER PROVIDER <provider-name> OWNER TO <new-owner>;
COMMENT ON PROVIDER <provider-name> IS "<comment>";
ALTER PROVIDER <provider-name> RENAME TO <new-provider-name>;
Aby uzyskać więcej informacji na temat ALTER PROVIDER, zobacz ALTER PROVIDER.
CLI
Uruchom następujące polecenie za pomocą Databricks CLI. Zastąp <provider-name> bieżącą nazwą dostawcy oraz <new-provider-name> nową nazwą.
databricks providers update <provider-name> /
--new-name <new-provider-name> /
--comment "<new comment>" /
--owner <new-owner-name>
Zmiana poświadczeń dla nieschronionych odbiorców
Ta sekcja dotyczy obiektów dostawcy z typem TOKENuwierzytelniania , OAUTH_CLIENT_CREDENTIALSlub OIDC_FEDERATION. Dostawcy usługi Databricks-to-Databricks (typ DATABRICKSuwierzytelniania) obracają się automatycznie. Jeśli uzyskujesz dostęp do danych bez obiektu dostawcy, na przykład przy użyciu delta-sharing Python lub łącznika Spark, zastosuj nowy plik poświadczeń w konfiguracji łącznika. Zobacz Odczytywanie danych udostępnionych za pomocą tokenów bearer.
Dostawca korzystający z protokołu udostępniania Databricks-to-Open może zmienić Twój token okaziciela i wysłać Ci nowy plik danych uwierzytelniających. W takim przypadku użyj interfejsu API REST usługi Databricks, aby zaktualizować obiekt dostawcy. Nie usuwaj dostawcy ani nie twórz go ponownie, aby zastosować nowe dane uwierzytelniające. Wykazy są powiązane z wewnętrznym identyfikatorem dostawcy, a nie z jego nazwą. Ponowne utworzenie dostawcy o tej samej nazwie powoduje przerwanie połączenia wykazu z udostępnionymi danymi.
ALTER PROVIDER, interfejs wiersza polecenia usługi Databricks i Eksplorator Katalogów nie obsługują aktualizowania poświadczeń dostawcy.
Aktualizowanie poświadczeń
PATCH Wyślij żądanie do punktu końcowego dostawcy z zawartością nowego pliku poświadczeń w polu recipient_profile_str.
Wymagane uprawnienia: właściciel obiektu dostawcy lub administrator magazynu metadanych.
Python
Uruchom następujące polecenie z notatnika w przestrzeni roboczej odbiorcy. Zastąp <provider-name> nazwą obiektu dostawcy w magazynie metadanych i zaktualizuj new_profile wartościami z nowego pliku poświadczeń.
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>"
}'
Pomyślna rotacja zwraca następującą odpowiedź ze zaktualizowanymi metadanymi dostawcy.
{
"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"
}
Aby uzyskać szczegółowe informacje, zobacz Aktualizowanie interfejsu API REST dostawcy .
Weryfikowanie rotacji
Upewnij się, że wykaz, schematy i tabele są nadal dostępne. Nazwa wykazu powinna być taka sama jak przed rotacją.
Eksplorator wykazu
W obszarze roboczym Azure Databricks kliknij pozycję
Catalog.
W górnej części panelu Katalog kliknij ikonę koła zębatego
i wybierz pozycję OpenSharing.
Alternatywnie, w górnym prawym rogu kliknij Udostępnij > OpenSharing.
Na karcie Udostępnione mi znajdź dostawcę.
Poprzednie banery błędów powinny zniknąć, a udziały powinny zostać ponownie wyświetlone. Katalog na liście powinien być taki sam, jak poprzednio.
SQL
Uruchom następujący kod SQL w notesie lub edytorze zapytań SQL usługi 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;
Jeśli zapytania zakończą się pomyślnie, rotacja zostanie ukończona, a wszystkie istniejące zapytania, zadania i pulpity nawigacyjne będą nadal działać.
Rozwiązywanie problemów
| Error | Napraw. |
|---|---|
Wyniki żądania 403 Forbidden |
Aby wymienić poświadczenia, musisz być właścicielem dostawcy lub administratorem magazynu metadanych. Poproś administratora magazynu metadanych o zastosowanie rotacji lub przeniesienia własności. Zobacz Aktualizowanie dostawcy (zmiana nazwy, zmiana właściciela, komentarz). |
Wyniki żądania 404 Not Found |
Nazwa dostawcy jest nieprawidłowa. Uruchom polecenie , SHOW PROVIDERS aby wyświetlić dokładne nazwy w magazynie metadanych. |
Żądania są zwracane 400 Bad Request z komunikatem "Nie można zaktualizować profilu adresata" |
API aktualizuje poświadczenia tylko dla TOKEN, OAUTH_CLIENT_CREDENTIALS i OIDC_FEDERATION dostawców. W przypadku udostępniania danych z usługi Databricks do usługi Databricks poświadczenia zmieniają się automatycznie. |
Zwracane zapytania TABLE_OR_VIEW_NOT_FOUND |
Nazwa wykazu może być nieprawidłowa lub powiązanie wykazu-dostawcy może zostać przerwane. Uruchom polecenie SHOW CATALOGS i SHOW SCHEMAS IN <catalog-name> , aby potwierdzić, że wykaz istnieje. |
Eksplorator katalogu wyświetla nieaktualne dane lub błędy po pomyślnym zakończeniu PATCH. |
Widzisz wyniki buforowane sprzed rotacji. Odśwież stronę lub zaczekaj kilka minut. |
Usuwanie dostawcy
Aby usunąć dostawcę, możesz użyć Eksploratora wykazu, interfejsu wiersza polecenia usługi Databricks lub polecenia DROP PROVIDER SQL w notesie Azure Databricks lub edytorze zapytań SQL usługi Databricks. Aby usunąć dostawcę, musisz być właścicielem obiektu dostawcy.
Po usunięciu dostawcy ty i użytkownicy w organizacji (odbiorcy) nie będą już mogli uzyskiwać dostępu do danych udostępnionych przez dostawcę.
Wymagane uprawnienia: właściciel obiektu dostawcy.
Eksplorator wykazu
W obszarze roboczym Azure Databricks kliknij pozycję
Catalog.
W górnej części panelu Katalog kliknij ikonę koła zębatego
i wybierz pozycję OpenSharing.
Alternatywnie, w górnym prawym rogu kliknij Udostępnij > OpenSharing.
Na karcie Udostępnione mi znajdź i wybierz dostawcę.
Kliknij
i wybierz pozycję Usuń.
W oknie dialogowym potwierdzenia kliknij pozycję Usuń.
SQL
Uruchom następujące polecenie w notesie lub edytorze zapytań SQL usługi Databricks.
DROP PROVIDER [IF EXISTS] <provider-name>;
Aby uzyskać więcej informacji na temat DROP PROVIDER, zobacz DROP PROVIDER.
CLI
Uruchom następujące polecenie za pomocą Databricks CLI.
databricks providers delete <provider-name>
Jeśli operacja zakończy się pomyślnie, żadne wyniki nie zostaną zwrócone.