Co to jest Unity Catalog?
W tym artykule przedstawiono środowisko Unity Catalog, ujednolicone rozwiązanie do zapewniania ładu dla danych i zasobów sztucznej inteligencji w usłudze Azure Databricks.
Uwaga
Unity Catalog jest również dostępny jako implementacja open source. Zobacz blogu anonsu i publicznym repozytorium Unity Catalog repozytorium GitHub.
Omówienie Unity Catalog
Platforma Unity Catalog zapewnia scentralizowaną kontrolę dostępu, audytowanie, śledzenie pochodzenia i możliwości odkrywania danych w obszarach roboczych usługi Azure Databricks.
Najważniejsze funkcje Unity Catalog obejmują:
- Zdefiniuj raz, zabezpieczaj wszędzie: Unity Catalog oferuje jedno miejsce do zarządzania politykami dostępu do danych, które mają zastosowanie we wszystkich przestrzeniach roboczych.
- model zabezpieczeń zgodny ze standardami: model zabezpieczeń platformy Unity Catalogopiera się na standardowym języku ANSI SQL i umożliwia administratorom grant uprawnienia w istniejącym magazynie danych przy użyciu znanej składni na poziomie catalogs, schematów (nazywanych również bazami danych), tablesi views.
- Wbudowany audyt i historia: Unity Catalog automatycznie przechwytuje dzienniki audytu na poziomie użytkownika, które rejestrują dostęp do danych. System Unity Catalog również zbiera dane genealogiczne, które śledzą, jak tworzone i używane są zasoby danych we wszystkich językach.
- Odnajdywanie danych: Unity Catalog umożliwia tagowanie i dokumentowanie zasobów danych oraz udostępnia interfejs wyszukiwania, ułatwiając konsumentom danych ich znajdowanie.
- system tables (publiczna wersja zapoznawcza): Unity Catalog umożliwia łatwe uzyskiwanie dostępu do danych operacyjnych konta, w tym dzienniki audytu, rozliczalne użycie i pochodzenie danych.
model obiektów Catalog Unity
W Unity Catalogwszystkie metadane są rejestrowane w metasklepie. Hierarchia obiektów bazy danych w dowolnym metadanych Unity Catalog jest podzielona na trzy poziomy, reprezentowane jako trójpoziomowa przestrzeń nazw (catalog.schema.table-etc
) przy powołaniu się na tables, views, volumes, modele i funkcje.
diagram modelu obiektu Unity Catalog
Metastores
Magazyn metadanych jest kontenerem najwyższego poziomu dla metadanych w środowisku Unity Catalog. Rejestruje metadane dotyczące danych i zasobów sztucznej inteligencji oraz uprawnienia, które zarządzają dostępem do nich. Aby obszar roboczy używał Unity Catalog, musi mieć dołączony metastore Catalog Unity.
Musisz mieć jeden magazyn metadanych dla każdego regionu, w którym masz obszary robocze. W jaki sposób obszar roboczy get jest dołączany do magazynu metadanych? Zobacz Jak mogę set ustawić Unity Catalog dla mojej organizacji?.
Hierarchia obiektów w magazynie metadanych
W magazynie metadanych Unity Catalog hierarchia obiektów bazy danych o trzech poziomach składa się z catalogs, które zawierają schematy, a te z kolei zawierają dane i obiekty AI, takie jak tables i modele.
Poziom jeden:
- Catalogs są używane do organizowania zasobów danych i są zwykle używane jako najwyższy poziom w schemacie izolacji danych. Catalogs często odzwierciedlają jednostki organizacyjne lub zakresy cyklu życia tworzenia oprogramowania. Zobacz , czym są catalogs w usłudze Azure Databricks?
- Obiekty, których nie można zabezpieczyć jako dane, takie jak credentials magazyny i lokalizacje zewnętrzne, są używane do zarządzania modelem ładu danych w środowisku Unity Catalog. Te żyją również bezpośrednio w magazynie metadanych. Opisano je bardziej szczegółowo w temacie Inne zabezpieczane obiekty.
Poziom drugi:
- Schematy (znane również jako bazy danych) zawierają tables, views, volumes, modele sztucznej inteligencji i funkcje. Schematy organizują dane i zasoby sztucznej inteligencji w kategorie logiczne, które są bardziej szczegółowe niż catalogs. Zazwyczaj schema reprezentuje pojedynczy przypadek użycia, projekt lub środowisko testowe zespołu. Zobacz Co to są schematy w usłudze Azure Databricks?.
Poziom trzeci:
- Volumes są logicznymi volumes danych niestrukturalnych, nietabelarycznych w chmurowym magazynie obiektów. Volumes mogą być zarządzane, a aparat Unity Catalog zarządzać pełnym cyklem życia i układem danych w magazynie lub zewnętrznymi, a aparat Unity Catalog zarządza dostępem do danych z poziomu usługi Azure Databricks, ale nie zarządza dostępem do danych w magazynie w chmurze od innych klientów. Zobacz Co to jest CatalogvolumesUnity? i zarządzane w porównaniu do zewnętrznych tables i volumes.
- Tables to kolekcje danych uporządkowane według wierszy i columns. Tables może być zarządzanaprzez Unity Catalog, który zarządza pełnym cyklem życia table, lub zewnętrzna, gdzie Unity Catalog zarządza dostępem do danych z poziomu Azure Databricks, ale nie zarządza dostępem do danych w magazynie chmurowym z innych klientów. Zobacz Co to są tables i views? i Zarządzane kontra zewnętrzne tables i volumes.
- Views to zapytania zapisywane dla co najmniej jednego tables. Zobacz Co to jest widok?.
- Funkcje to jednostki zapisanej logiki, które zwracają wartość skalarną lub set wierszy. Zobacz funkcje zdefiniowane przez użytkownika (UDF-y) w Unity Catalog.
- Modele to modele sztucznej inteligencji spakowane za pomocą biblioteki MLflow i zarejestrowane w środowisku Unity Catalog jako funkcje. Zobacz Zarządzanie cyklem życia modelu w środowisku Unity Catalog.
Praca z obiektami bazy danych w Unity Catalog
Praca z obiektami bazy danych w środowisku Unity Catalog jest bardzo podobna do pracy z obiektami bazy danych zarejestrowanymi w magazynie metadanych Hive, z wyjątkiem tego, że magazyn metadanych Hive nie zawiera catalogs w przestrzeni nazw obiektów. Możesz użyć znanej składni ANSI do tworzenia obiektów bazy danych, zarządzania obiektami bazy danych, zarządzania uprawnieniami i pracy z danymi w środowisku Unity Catalog. Można również tworzyć obiekty bazy danych, zarządzać obiektami bazy danych i zarządzać uprawnieniami do obiektów bazy danych przy użyciu interfejsu użytkownika programu Catalog Explorer.
Aby uzyskać więcej informacji, zobacz Obiekty bazy danych w Azure Databricks oraz Praca z Unity Catalog i starszy metastore Hive.
Inne zabezpieczane obiekty
Oprócz obiektów bazy danych i zasobów sztucznej inteligencji, które znajdują się w schematach, Unity Catalog również zarządza dostępem do danych przy użyciu następujących obiektów zabezpieczających:
Service credentials, które hermetyzują długoterminowe dane uwierzytelniające do chmury zapewniające dostęp do usługi zewnętrznej. Zobacz Zarządzanie dostępem do zewnętrznych usług w chmurze przy użyciu usługi credentials.
credentials Storage, które zawierają długoterminowe poświadczenia chmury zapewniające dostęp do magazynu w chmurze. Zobacz Tworzenie poświadczeń magazynu na potrzeby nawiązywania połączenia z usługą Azure Data Lake Storage Gen2.
Lokalizacje zewnętrzne, które zawierają odwołanie do poświadczeń magazynu i ścieżki magazynu w chmurze. Lokalizacje zewnętrzne mogą służyć do tworzenia tables zewnętrznych lub przypisywania zarządzanej lokalizacji magazynu dla zarządzanych tables i volumes. Zobacz "Utwórz lokalizację zewnętrzną, aby połączyć pamięć masową w chmurze z Azure Databricks", "Izolacja danych za pomocą zarządzanej pamięci masowej"oraz "Określ lokalizację zarządzanej pamięci masowej w Unity" Catalog.
Connections, które reprezentują credentials, które zapewniają dostęp tylko do odczytu do zewnętrznej bazy danych w systemie baz danych, takim jak MySQL przy użyciu usługi Lakehouse Federation. Zobacz Lakehouse Federation and Unity Catalog i Co to jest federacja Lakehouse?.
Czyszczenie pomieszczeń, które reprezentują środowisko zarządzane przez usługę Databricks where wielu uczestników może współpracować nad projektami bez udostępniania sobie danych bazowych. Zobacz Co to jest usługa Azure Databricks Clean Rooms?.
Shares, które są obiektami Delta Sharing, reprezentującymi kolekcję danych i zasobów AI tylko do odczytu, które dostawca danych shares udostępnia z co najmniej jednym recipients.
Recipients, które są obiektami udostępniania Delta reprezentującymi podmiot odbierający shares od dostawcy danych.
Providers, które są obiektami udostępniania różnicowego reprezentującymi jednostkę, która shares dane z adresatem.
Aby uzyskać więcej informacji na temat zabezpieczanych obiektów udostępniania różnicowego, zobacz Co to jest udostępnianie różnicowe?.
Udzielanie i odwołowywanie dostępu do obiektów bazy danych i innych zabezpieczanych obiektów w środowisku Unity Catalog
Można uzyskać grant i revoke dostęp do zabezpieczanych obiektów na dowolnym poziomie w hierarchii, w tym samego metastore. Dostęp do obiektu niejawnie udziela tego samego dostępu wszystkim elementom podrzędnym tego obiektu, chyba że dostęp zostanie odwołany.
Typowe polecenia ANSI SQL umożliwiają grant i revoke dostęp do obiektów w Unity Catalog. Na przykład:
GRANT CREATE TABLE ON SCHEMA mycatalog.myschema TO `finance-team`;
Do zarządzania uprawnieniami obiektów można również użyć eksploratora Catalog, interfejsu wiersza polecenia usługi Databricks i interfejsów API REST.
Aby dowiedzieć się, jak zarządzać uprawnieniami w usłudze Unity Catalog, zobacz Zarządzanie uprawnieniami w programie Unity Catalog.
Domyślny dostęp do obiektów bazy danych w Unity Catalog
Aparat Unity Catalog działa na zasadzie najniższych uprawnień, where użytkownicy mają minimalny dostęp, którego potrzebują do wykonywania wymaganych zadań. Po utworzeniu obszaru roboczego, użytkownicy niebędący administratorami mają dostęp tylko do automatycznie aprowizowanego obszaru roboczego catalog, dzięki czemu catalog jest wygodnym miejscem, gdzie użytkownicy mogą wypróbować proces tworzenia i uzyskiwania dostępu do obiektów bazy danych w środowisku Unity Catalog. Zobacz uprawnienia Workspace catalog.
Role administratora
Administratorzy obszaru roboczego i administratorzy konta domyślnie mają dodatkowe uprawnienia. administrator magazynu metadanych jest opcjonalną rolą, wymaganą, jeśli chcesz zarządzać table i przechowywaniem woluminów na poziomie magazynu metadanych, i wygodną, gdyż chcesz zarządzać danymi centralnie w wielu obszarach roboczych w regionie. Aby uzyskać więcej informacji, zobacz uprawnienia administratora w Unity Catalog oraz (opcjonalnie) przypisanie roli administratora magazynu metadanych.
zarządzane versus zewnętrzne tables i volumes
Tables i volumes mogą być zarządzane lub pochodzić z zewnątrz.
- zarządzane tables są w pełni zarządzane przez Unity Catalog, co oznacza, że Unity Catalog zarządza zarówno zarządzaniem, jak i podstawowymi plikami danych dla każdego zarządzanego table. Zarządzane tables są przechowywane w lokalizacji zarządzanej przez platformę Unity Catalogw przechowalni w chmurze. Zarządzane tables zawsze używają formatu Delta Lake. Możesz przechowywać zarządzane tables na poziomie magazynu metadanych, cataloglub schema.
- zewnętrzne tables są tables, których dostęp z Azure Databricks jest zarządzany przez Unity Catalog, ale których cykl życia danych i układ plików są zarządzane przez dostawcę chmury i inne platformy danych. Zazwyczaj korzystasz zewnętrznego tables, aby rejestrować duże ilości istniejących danych w Azure Databricks, lub gdy potrzebujesz również dostępu do zapisu danych za pomocą narzędzi spoza Azure Databricks. Zewnętrzne tables są obsługiwane w wielu formatach danych. Po zarejestrowaniu zewnętrznego table w metasklepie Catalog Unity, możesz zarządzać dostępem Azure Databricks i audytować go oraz pracować z nim tak, jak w przypadku zarządzanych tables.
- volumes są w pełni zarządzane przez Unity Catalog, co oznacza, że Unity Catalog zarządza dostępem do lokalizacji magazynu woluminu na koncie dostawcy usług chmurowych. Podczas tworzenia zarządzanego woluminu jest on automatycznie przechowywany w zarządzanej lokalizacji przechowywania przypisanej do zawierającego obiektu schema.
- zewnętrzne volumes reprezentują istniejące dane w lokalizacjach przechowywania zarządzanych poza usługą Azure Databricks, ale zarejestrowane w usłudze Unity Catalog w celu kontrolowania i inspekcji dostępu z poziomu usługi Azure Databricks. Podczas tworzenia woluminu zewnętrznego w usłudze Azure Databricks należy określić jego lokalizację, która musi znajdować się w ścieżce zdefiniowanej w lokalizacji zewnętrznej Catalogaparatu Unity.
Databricks zaleca zarządzane tables i volumes, aby w pełni wykorzystać możliwości zarządzania i optymalizacji wydajności w środowisku Unity Catalog.
Zobacz Praca z zarządzanymi tables, Praca z zewnętrznymi tablesoraz Zarządzane a zewnętrzne volumes.
Izolacja danych przy użyciu magazynu zarządzanego
Organizacja może wymagać przechowywania określonych typów danych na określonych kontach lub zasobnikach w dzierżawie chmury.
Unity Catalog umożliwia konfigurowanie lokalizacji magazynu na poziomie metadanych, cataloglub schema, aby spełnić takie wymagania. System ocenia hierarchię lokalizacji magazynu od schema przez catalog do metamagazynu.
Załóżmy na przykład, że Organizacja ma zasady zgodności firmy, które wymagają danych produkcyjnych odnoszących się do zasobów ludzkich, które znajdują się w kontenerze abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net. W Unity Catalogmożna spełnić to wymaganie, ustawiając lokalizację na poziomie catalog, tworząc zasób catalog, nazwany na przykład hr_prod
, i przypisując do niego lokalizację abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net/unity-catalog. Oznacza to, że tables lub volumes, zarządzane i utworzone w hr_prod
catalog (na przykład przy użyciu CREATE TABLE hr_prod.default.table …
), przechowują dane w abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net/unity-catalog. Opcjonalnie możesz podać lokalizacje na poziomie schema, aby zorganizować dane w hr_prod catalog
na bardziej szczegółowy sposób.
Jeśli izolacja magazynu nie jest wymagana dla niektórych catalogs, możesz ewentualnie set lokalizację magazynu na poziomie repozytorium metadanych. Ta lokalizacja służy jako domyślna lokalizacja dla zarządzanych tables i volumes w catalogs oraz schematach, które nie mają przypisanego magazynu. Zazwyczaj jednak usługa Databricks zaleca przypisanie oddzielnych zarządzanych miejsc magazynowych dla każdego catalog.
Aby uzyskać więcej informacji, zobacz Określanie zarządzanej lokalizacji magazynu w usłudze Unity Catalog i Dane są fizycznie oddzielone w magazynie.
Obszar roboczy — powiązaniecatalog
Domyślnie właściciele catalog (i administratorzy metasklepu, jeśli są zdefiniowani dla konta) mogą umożliwić dostęp do catalog użytkownikom w wielu obszarach roboczych połączonych z tym samym metasklepem Unity Catalog. Jeśli używasz obszarów roboczych do izolowania dostępu do danych użytkownika, możesz jednak limitcatalog dostęp do określonych obszarów roboczych na koncie, aby upewnić się, że niektóre rodzaje danych są przetwarzane tylko w tych obszarach roboczych. Możesz chcieć oddzielić obszary robocze produkcyjne i programistyczne, na przykład lub oddzielny obszar roboczy do przetwarzania danych osobowych. Jest to nazywane obszarem roboczym — powiązaniecatalog. Zobacz Limitcatalog dostęp do określonych obszarów roboczych.
Uwaga
W celu zwiększenia izolacji danych można również powiązać dostęp do magazynu w chmurze i dostęp usługi w chmurze do określonych obszarów roboczych. Zobacz (Opcjonalnie) Przypisywanie poświadczeń magazynu do określonych obszarów roboczych, (opcjonalnie) Przypisywanie lokalizacji zewnętrznej do określonych obszarów roboczych i (opcjonalnie) Przypisywanie poświadczeń usługi do określonych obszarów roboczych.
Inspekcja dostępu do danych
Aparat Unity Catalog przechwytuje dziennik inspekcji akcji wykonywanych względem magazynu metadanych, umożliwiając administratorom uzyskiwanie dostępu do szczegółowych informacji o tym, kto uzyskał dostęp do danego zestawu danych i wykonanych przez nich akcji.
Dostęp do dzienników inspekcji konta można uzyskać przy użyciu systemu tables zarządzanego przez system Unity Catalog.
Zobacz wydarzenia audytu Unity Catalog, wydarzenia Unity Catalogoraz monitorowanie aktywności konta za pomocą systemu tables.
Śledzenie pochodzenia danych
Za pomocą Unity Catalog można przechwytywać pochodzenie danych podczas działania między zapytaniami w dowolnym języku wykonywanym w klastrze Azure Databricks lub magazynie SQL. Linia pochodzenia jest przechwytywana aż do poziomu column i obejmuje zeszyty, zadania i pulpity nawigacyjne związane z danym zapytaniem. Aby dowiedzieć się więcej, zobacz Przechwytywanie i wyświetlanie pochodzenia danych za pomocą Unity Catalog.
Lakehouse Federation i Unity Catalog
Federacja lakehouse to platforma federacyjna zapytań dla usługi Azure Databricks. Termin Federacja zapytań opisuje kolekcję funkcji, które umożliwiają użytkownikom i systemom uruchamianie zapytań względem wielu silosowych źródeł danych bez konieczności migrowania wszystkich danych do ujednoliconego systemu.
Usługa Azure Databricks używa Catalog Unity do zarządzania federacją zapytań. Użyj Unity Catalog, aby skonfigurować connections w trybie tylko do odczytu do popularnych zewnętrznych systemów baz danych i utworzyć zagraniczne catalogs odzwierciedlające zewnętrzne bazy danych. Unity Catalogoferuje narzędzia do zarządzania ładem danych i śledzenia pochodzenia danych, które zapewniają zarządzanie i audyt dostępu do wszystkich zapytań federacyjnych wykonywanych przez użytkowników w obszarach roboczych Azure Databricks.
Zobacz Co to jest Federacja Lakehouse?.
Delta Sharing, rynek Databricks i Unity Catalog
Delta Sharing to bezpieczna platforma do współdzielenia danych, która umożliwia udostępnianie danych i zasobów sztucznej inteligencji użytkownikom spoza organizacji, niezależnie od tego, czy użytkownicy korzystają z usługi Databricks. Chociaż Delta Sharing jest dostępne jako implementacja open source, w Databricks wymaga Unity Catalog, aby w pełni korzystać z rozszerzonych funkcji. Zobacz Co to jest udostępnianie różnicowe?.
Databricks Marketplace, otwarte forum wymiany produktów danych, jest zbudowany na bazie Delta Sharing, i dlatego musisz mieć obszar roboczy z włączonym aparatem Unity Catalog, aby być dostawcą Marketplace. Zobacz Co to jest witryna Databricks Marketplace?.
Jak mogę set skonfigurować Unity Catalog dla mojej organizacji?
Aby użyć Unity Catalog, obszar roboczy usługi Azure Databricks musi być włączony dla Unity Catalog, co oznacza, że obszar roboczy jest połączony z magazynem metadanych Unity Catalog.
W jaki sposób obszar roboczy get jest dołączony do magazynu metadanych? Zależy to od konta i obszaru roboczego:
- Zazwyczaj podczas tworzenia obszaru roboczego usługi Azure Databricks w regionie po raz pierwszy magazyn metadanych jest tworzony automatycznie i dołączany do obszaru roboczego.
- W przypadku niektórych starszych kont administrator konta musi utworzyć magazyn metadanych i przypisać obszary robocze w tym regionie do magazynu metadanych. Aby uzyskać instrukcje, zobacz Utwórz Unity Catalog metastore.
- Jeśli konto ma już przypisany magazyn metadanych dla regionu, administrator konta może zdecydować, czy automatycznie dołączyć magazyn metadanych do wszystkich nowych obszarów roboczych w tym regionie. Zobacz Włączanie automatycznego przypisywanie magazynu metadanych do nowych obszarów roboczych.
Niezależnie od tego, czy obszar roboczy został włączony dla środowiska Unity Catalog automatycznie, należy również wykonać następujące kroki, aby get rozpocząć pracę z CatalogAparatu Unity:
- Utwórz catalogs i schematy, aby zawierały obiekty bazy danych, takie jak tables i volumes.
- Utwórz zarządzane lokalizacje magazynowe do przechowywania zarządzanych tables i volumes w tych schematach oraz catalogs.
- Grant dostęp użytkownika do obiektów catalogs, schematów i bazy danych.
Obszary robocze, które są automatycznie włączane dla środowiska Unity, Catalog konfigurują obszar roboczy catalog z szerokimi uprawnieniami dla wszystkich użytkowników. Ten catalog jest wygodnym punktem wyjścia do wypróbowania środowiska Unity Catalog.
Aby uzyskać szczegółowe instrukcje dotyczące konfiguracji, zobacz Set, jak skonfigurować i zarządzać Unity Catalog.
Migrowanie istniejącej przestrzeni roboczej do Unity Catalog
Jeśli niedawno włączyłeś starszy obszar roboczy do środowiska Unity Catalog, prawdopodobnie posiadasz dane zarządzane przez dawne repozytorium metadanych Hive. Możesz pracować z danymi wraz z danymi zarejestrowanymi w środowisku Unity Catalog, ale starszy magazyn metadanych Hive jest przestarzały i należy przeprowadzić migrację danych w magazynie metadanych Hive do środowiska Unity Catalog tak szybko, jak to możliwe, aby móc korzystać z najwyższej wydajności i możliwości zapewniania ładu w środowisku Unity Catalog.
Migracja obejmuje następujące elementy:
- Konwertowanie dowolnych grup lokalnych obszaru roboczego na grupy na poziomie konta. Unity Catalog centralizuje zarządzanie tożsamością na poziomie konta.
- Migrowanie tables i views zarządzanych w magazynie metadanych Hive do platformy Unity Catalog.
- Update zapytania i zadania, aby odnosić się do nowego Unity Catalogtables zamiast starego magazynu metadanych Hive tables.
Poniższe informacje mogą pomóc w zarządzaniu migracją:
UCX, projekt Databricks Labs, udostępnia narzędzia ułatwiające uaktualnienie obszaru roboczego nie-UnityCatalog do Unity Catalog. UCX to dobry wybór w przypadku migracji na większą skalę. Zobacz Użyj narzędzi UCX w celu uaktualnienia obszaru roboczego do Unity Catalog.
Jeśli masz mniejszą liczbę tables do migracji, usługa Azure Databricks udostępnia kreator interfejsu użytkownika i polecenia SQL, których można użyć. Zobacz Ulepsz Hive tables i views do Unity Catalog.
Aby dowiedzieć się, jak używać tables w magazynie metadanych Hive wraz z obiektami bazy danych w środowisku Unity Catalog w tym samym obszarze roboczym, zobacz Work with Unity Catalog and the legacy Hive metastore.
Wymagania i ograniczenia Unity Catalog
Jednostka Unity Catalog wymaga określonych typów obliczeń i formatów plików, opisanych poniżej. Poniżej wymieniono również niektóre funkcje usługi Azure Databricks, które nie są w pełni obsługiwane w środowisku Unity Catalog we wszystkich wersjach środowiska Databricks Runtime.
Obsługa regionów
Wszystkie regiony obsługują Unity Catalog. Aby uzyskać szczegółowe informacje, zobacz Regiony usługi Azure Databricks.
Wymagania dotyczące obliczeń
Unity Catalog jest obsługiwane na klastrach z uruchomionym środowiskiem Databricks Runtime 11.3 LTS lub wyższym. Platforma Unity
Klastry działające we wcześniejszych wersjach środowiska Databricks Runtime nie zapewniają wsparcia dla wszystkich cech i funkcjonalności ogólnie dostępnych (GA) dla Unity Catalog.
Aby uzyskać dostęp do danych w Unity Catalog, klastry muszą być skonfigurowane przy użyciu poprawnego trybu dostępu . Unity Catalog jest domyślnie bezpieczny. Jeśli klaster nie jest skonfigurowany z trybem dostępu współużytkowanego lub pojedynczego użytkownika, klaster nie może uzyskać dostępu do danych w środowisku Unity Catalog. Zobacz Tryby dostępu.
Aby uzyskać szczegółowe informacje o zmianach dotyczących funkcjonalności Unity Catalog w każdej wersji Databricks Runtime, zobacz informacje o wydaniu .
Ograniczenia dotyczące środowiska Unity Catalog różnią się w zależności od trybu dostępu i wersji środowiska Databricks Runtime. Zobacz Ograniczenia trybu dostępu obliczeniowego dla środowiska Unity Catalog.
Obsługa formatu pliku
Unity Catalog obsługuje następujące formaty table:
-
zarządzany tables musi używać formatu
delta
table. -
Zewnętrzne tables mogą używać
delta
,CSV
,JSON
,avro
,parquet
,ORC
lubtext
.
Ograniczenia
Aparat Unity Catalog ma następujące ograniczenia. Niektóre z nich są specyficzne dla starszych wersji środowiska Databricks Runtime i trybów dostępu obliczeniowego.
Obciążenia przesyłania strumieniowego ze strukturą mają dodatkowe ograniczenia, w zależności od środowiska Databricks Runtime i trybu dostępu. Zobacz Ograniczenia trybu dostępu obliczeniowego dla środowiska Unity Catalog.
Databricks wprowadza nowe funkcje, które regularnie zmniejszają tę list.
Nie można używać grup utworzonych wcześniej w obszarze roboczym (czyli grupach na poziomie obszaru roboczego) w instrukcjach Catalog
GRANT
aparatu Unity. Ma to na celu zapewnienie spójnego widoku grup, które mogą obejmować obszary robocze. Aby użyć grup w instrukcjachGRAN
T, utwórz grupy na poziomie konta i update dowolną automatyzację zarządzania podmiotami zabezpieczeń lub grup (takimi jak łączniki SCIM, Okta i Microsoft Entra ID i Terraform), aby odwoływać się do punktów końcowych kont zamiast punktów końcowych obszaru roboczego. Zobacz Typy grup w usłudze Azure Databricks.Obciążenia w języku R nie obsługują używania dynamicznych views na poziomie wiersza lub column- zabezpieczeń na poziomie zasobów obliczeniowych na środowiskach z uruchomionym Databricks Runtime 15.3 i poniżej.
Użyj pojedynczego zasobu obliczeniowego dla użytkownika z uruchomionym środowiskiem Databricks Runtime 15.4 LTS lub nowszym do zadań w R, które wykonują zapytania dotyczące dynamicznego views. Takie obciążenia wymagają również obszaru roboczego, który jest włączony dla bezserwerowych obliczeń. Aby uzyskać szczegółowe informacje, zobacz Szczegółowe informacje dotyczące kontroli dostępu w obliczeniach pojedynczego użytkownika.
Płytkie klony nie są obsługiwane w środowisku Unity Catalog na platformach korzystających z Databricks Runtime w wersji 12.2 LTS i starszych. Klony płytkie umożliwiają tworzenie zarządzanych tables w środowisku Databricks Runtime 13.3 LTS lub nowszym. Nie można ich używać do tworzenia zewnętrznych tables, niezależnie od wersji środowiska Databricks Runtime. Zobacz Płytkie klonowanie dla środowiska Unity Catalogtables.
Segregacja nie jest obsługiwana w Unity Catalogtables. Jeśli uruchomisz polecenia próbujące przydzielić dane do zasobników table w Unity Catalog, spowoduje to zgłoszenie wyjątku.
Zapisywanie w tej samej ścieżce lub usłudze Delta Lake table z środowisk roboczych w wielu regionach może prowadzić do zawodnej wydajności, jeśli niektóre klastry uzyskują dostęp do Unity Catalog, a inne nie.
Manipulowanie zewnętrznymi partycjami dla tables przy użyciu poleceń takich jak
ALTER TABLE ADD PARTITION
wymaga włączenia rejestrowania metadanych partition. Zobacz odkrycie Partition dla zewnętrznych tables.W przypadku używania trybu zastępowania dla tables nie w formacie delty użytkownik musi mieć uprawnienia CREATE TABLE w schema nadrzędnym i musi być właścicielem istniejącego obiektu LUB mieć uprawnienie MODIFY w obiekcie.
Funkcje zdefiniowane przez użytkownika języka Python nie są obsługiwane w środowisku Databricks Runtime 12.2 LTS i poniżej. Obejmuje to funkcje UDAFs, funkcje zdefiniowane przez użytkownika i biblioteki Pandas na platformie Spark (
applyInPandas
imapInPandas
). Skalarne funkcje zdefiniowane przez użytkownika języka Python są obsługiwane w środowisku Databricks Runtime 13.3 LTS i nowszym.Funkcje zdefiniowane przez użytkownika języka Scala nie są obsługiwane w środowisku Databricks Runtime 14.1 i nowszym w klastrach udostępnionych. Scala skalarne funkcje zdefiniowane przez użytkownika są obsługiwane w środowisku Databricks Runtime 14.2 lub nowszym w klastrach udostępnionych.
Pule wątków języka Scala w warstwie Standardowa nie są obsługiwane. Zamiast tego użyj specjalnych pul wątków w
org.apache.spark.util.ThreadUtils
pliku , na przykładorg.apache.spark.util.ThreadUtils.newDaemonFixedThreadPool
. Jednak następujące pule wątków w programieThreadUtils
nie są obsługiwane:ThreadUtils.newForkJoinPool
i żadnaScheduledExecutorService
pula wątków.Rejestrowanie inspekcji jest obsługiwane tylko dla zdarzeń Catalog w Unity na poziomie obszaru roboczego. Zdarzenia, które odbywają się na poziomie konta bez odwołania do obszaru roboczego, takiego jak tworzenie magazynu metadanych, nie są rejestrowane.
Modele zarejestrowane w środowisku Unity Catalog mają dodatkowe ograniczenia. Zobacz Ograniczenia.
Przydziały zasobów
Unity Catalog wymusza limity przydziału zasobów dla wszystkich możliwych do zabezpieczenia obiektów. Te limity przydziału są wymienione w temacie Limity zasobów. Jeśli spodziewasz się przekroczyć te limity zasobów, skontaktuj się z zespołem konta usługi Azure Databricks.
Możesz monitorować wykorzystanie swoich limitów przeznaczenia za pomocą interfejsów API limitów zasobów Unity Catalog. Zobacz Monitoruj swoje użycie limitów przydziału zasobów Unity Catalog.