Udostępnij przez


Uzyskiwanie dostępu do danych usługi Databricks przy użyciu systemów zewnętrznych

Na tej stronie znajdziesz przegląd funkcji oraz zalecenia dotyczące umożliwiania innym systemom dostępu do danych zarządzanych i kontrolowanych przez Azure Databricks.

Te wzorce koncentrują się na scenariuszach, w których organizacja musi zintegrować zaufane narzędzia lub systemy z danymi usługi Azure Databricks. Jeśli szukasz wskazówek dotyczących udostępniania danych spoza organizacji, zobacz Udostępnianie danych i zasobów sztucznej inteligencji bezpiecznie użytkownikom w innych organizacjach.

Jaki dostęp zewnętrzny obsługuje usługa Azure Databricks?

Usługa Azure Databricks zaleca używanie Unity Catalog do zarządzania wszystkimi zasobami danych. Katalog Unity zapewnia integrację klientów Delta Lake przy użyciu interfejsu API REST Unity i klientów Apache Iceberg przy użyciu katalogu REST Iceberg. Aby uzyskać pełną listę obsługiwanych integracji, zobacz Integracje Unity Catalog.

Poniższa tabela zawiera omówienie formatów wsparcia i wzorców dostępu dla obiektów katalogu Unity.

Obiekt katalogu Unity Obsługiwane formaty Wzorce dostępu
Tabele zarządzane Delta Lake, Góry Lodowe Unity REST API, katalog Iceberg REST, Delta Sharing
Tabele zewnętrzne Delta Lake Interfejs API REST Unity, Iceberg REST katalog, Delta Sharing, identyfikatory URI chmury
Tabele zewnętrzne CSV, JSON, Avro, Parquet, ORC, tekst Interfejs API REST aparatu Unity, identyfikatory URI chmury
Woluminy zewnętrzne Wszystkie typy danych Chmurowe URI
Tabele zewnętrzne* Delta Lake, Góry Lodowe Interfejs API REST Unity, katalog REST Iceberg (wersja zapoznawcza), Delta Sharing
Tabele zewnętrzne* CSV, JSON, Avro, Parquet, ORC, tekst Interfejs API REST aparatu Unity, identyfikatory URI chmury

Obsługiwane są tylko tabele obce federowane przy użyciu federacji katalogu. Aby zagwarantować nowe odczyty z silników zewnętrznych w tabelach zewnętrznych, klienci mogą okresowo odświeżać metadane przy użyciu zadań Lakeflow.

Notatka

Obsługa Iceberg opisuje tabele tworzone przez Azure Databricks z wykorzystaniem Delta Lake, ale z włączonymi odczytami Iceberg (UniForm).

Aby uzyskać więcej informacji na temat tych obiektów Unity Catalog, zobacz następujące tematy:

Udostępnianie poświadczeń w Unity Catalog

Automatyzacja poświadczeń katalogu Unity umożliwia użytkownikom konfigurowanie klientów zewnętrznych w celu przejęcia uprawnień na danych zarządzanych przez Azure Databricks. Zarówno klienci Iceberg, jak i Delta mogą obsługiwać wydawanie poświadczeń. Zobacz wydawanie poświadczeń dla Unity Catalog w celu uzyskania dostępu do systemu zewnętrznego.

Czytanie tabel za pomocą klientów Delta

Użyj REST API Unity, aby odczytywać tabele zarządzane przez katalog Unity i tabele zewnętrzne obsługiwane przez Delta Lake z obsługiwanych klientów Delta. Zobacz Odczytywanie tabel Databricks z klientów Delta.

Czytać tabele z klientami Iceberg

Usługa Azure Databricks udostępnia klientom Iceberg obsługę tylko do odczytu tabel zarejestrowanych w wykazie Unity Catalog. Obsługiwani klienci to Apache Spark, Apache Flink, Trino i Snowflake. Zobacz Uzyskiwanie dostępu do tabel usługi Azure Databricks z klientów platformy Apache Iceberg.

Udostępnianie tabel tylko do odczytu między domenami

Delta Sharing umożliwia udostępnianie danych wyłącznie do odczytu dla zarządzanych lub zewnętrznych tabel Delta między domenami i obsługiwanymi systemami. Systemy oprogramowania, które obsługują operacje odczytu bez kopiowania tabel usługi Delta Sharing, obejmują systemy SAP, Amperity i Oracle. Zobacz Bezpieczne udostępnianie danych i zasobów sztucznej inteligencji użytkownikom w innych organizacjach.

Notatka

Możesz także użyć Delta Sharing, aby przyznać klientom lub partnerom dostęp tylko do odczytu. Funkcja Delta Sharing wspiera również dane udostępniane za pośrednictwem Databricks Marketplace.

Tworzenie, odczytywanie i zapisywanie zewnętrznych tabel delty

Ważne

Tworzenie zewnętrznych tabel Unity Catalog przez zewnętrznych klientów Delta Lake jest dostępne w publicznej wersji zapoznawczej.

Możesz tworzyć, odczytywać i zapisywać zewnętrzne tabele Unity Catalog obsługiwane przez Delta Lake z zewnętrznych klientów Delta Lake, korzystając z URI i poświadczeń magazynu obiektów w chmurze. Aby utworzyć tabele, zobacz Tworzenie zewnętrznych tabel Delta przez klientów zewnętrznych.

Unity Catalog nie zarządza odczytami i zapisami wykonywanymi bezpośrednio względem magazynu obiektów w chmurze z systemów zewnętrznych, dlatego należy skonfigurować dodatkowe zasady i poświadczenia na koncie w chmurze, aby zapewnić przestrzeganie zasad zarządzania danymi poza usługą Azure Databricks.

Notatka

W dokumentacji usługi Azure Databricks wymieniono ograniczenia i zagadnienia dotyczące zgodności oparte na wersjach środowiska Databricks Runtime i funkcjach platformy. Należy potwierdzić, jakie protokoły czytników i modułów zapisywania oraz funkcje tabeli obsługuje klient. Zobacz delta.io.

Uzyskiwanie dostępu do danych tabelarycznych spoza usługi Delta Lake przy użyciu tabel zewnętrznych

Tabele zewnętrzne w Unity Catalog obsługują wiele formatów innych niż Delta Lake, w tym Parquet, ORC, CSV i JSON. Tabele zewnętrzne przechowują wszystkie pliki danych w katalogach w lokalizacji magazynu obiektów w chmurze określonej przez identyfikator URI chmury podany podczas tworzenia tabeli. Inne systemy uzyskują dostęp do tych plików danych bezpośrednio z magazynu obiektów w chmurze.

Unity Catalog nie zarządza odczytami i zapisami wykonywanymi bezpośrednio względem magazynu obiektów w chmurze z systemów zewnętrznych, dlatego należy skonfigurować dodatkowe zasady i poświadczenia na koncie w chmurze, aby zapewnić przestrzeganie zasad zarządzania danymi poza usługą Azure Databricks.

Odczytywanie i zapisywanie w tabelach zewnętrznych z wielu systemów może prowadzić do problemów ze spójnością i uszkodzenia danych, ponieważ nie są zapewniane żadne gwarancje transakcyjne dla formatów innych niż usługa Delta Lake.

Unity Catalog może nie wykrywać nowych partycji zapisanych w tabelach zewnętrznych obsługiwanych przez formaty inne niż Delta Lake. Usługa Databricks zaleca regularne uruchamianie MSCK REPAIR TABLE table_name, aby upewnić się, że Unity Catalog zarejestrował wszystkie dane zapisane przez systemy zewnętrzne.

Uzyskiwanie dostępu do danych innych niż tabelaryczne przy użyciu woluminów zewnętrznych

Usługa Databricks zaleca używanie woluminów zewnętrznych do przechowywania plików danych innych niż tabelaryczne, które są odczytywane lub zapisywane przez systemy zewnętrzne oprócz usługi Azure Databricks. Zobacz Czym są wolumeny Unity Catalog?.

Unity Catalog nie zarządza odczytami i zapisami wykonywanymi bezpośrednio względem magazynu obiektów w chmurze z systemów zewnętrznych, dlatego należy skonfigurować dodatkowe zasady i poświadczenia na koncie w chmurze, aby zapewnić przestrzeganie zasad zarządzania danymi poza usługą Azure Databricks.

Wolumeny udostępniają API, SDK i inne narzędzia do pobierania plików z wolumenów i umieszczania ich w wolumenach. Zobacz Praca z plikami w woluminach katalogu Unity.

Notatka

Delta Sharing umożliwia udostępnianie zasobów innym kontom usługi Azure Databricks, ale nie integruje się z systemami zewnętrznymi.