Łączenie się z magazynem obiektów w chmurze i usługami za pomocą Unity Catalog
Ten artykuł zawiera omówienie połączeń magazynu w chmurze wymaganych do pracy z danymi przy użyciu Unity Catalog, a także informacje o tym, jak Unity Catalog zarządza dostępem do magazynu w chmurze i zewnętrznych usług w chmurze.
Uwaga
Jeśli obszar roboczy został utworzony przed 9 listopada 2023 r., może nie być obsługiwany przez Unity Catalog. Administrator konta musi włączyć Unity Catalog dla Twojego obszaru roboczego. Zobacz Włącz obszar roboczy dla Unity Catalog.
Jak Unity Catalog korzysta z przechowalnika danych w chmurze?
Usługa Databricks zaleca używanie Unity Catalog do zarządzania dostępem do wszystkich danych przechowywanych w magazynie obiektów w chmurze obliczeniowej. Unity Catalog udostępnia zestaw narzędzi do konfigurowania bezpiecznych połączeń z magazynem obiektów w chmurze. Te połączenia zapewniają dostęp do wykonania następujących akcji:
- Pozyskiwanie danych pierwotnych do magazynu lakehouse.
- Twórz i czytaj zarządzane tabele i zarządzane woluminy danych niestrukturalnych w zarządzanej przez Unity Catalog pamięci masowej w chmurze.
- Zarejestruj lub utwórz zewnętrzne tabele zawierające dane tabelaryczne oraz zewnętrzne woluminy zawierające dane niestrukturalne w magazynie w chmurze zarządzanym przez dostawcę chmury.
- Odczytywanie i zapisywanie danych niestrukturalnych (w postaci woluminów Unity Catalog ).
Aby być bardziej szczegółowym, Unity Catalog używa magazynu w chmurze w dwóch podstawowych sposobach.
- Domyślne (lub "zarządzane") lokalizacje magazynu dla zarządzanych tabel i woluminów zarządzanych (bez struktury, danych innych niż tabelaryczne), które są tworzone w usłudze Databricks. Te zarządzane lokalizacje magazynu można zdefiniować na poziomie magazynu metadanych, katalogu lub schematu. Tworzysz zarządzane lokalizacje magazynu u swojego dostawcy usług w chmurze, ale ich cykl życia jest w pełni zarządzany przez Unity Catalog.
- Miejsca przechowywania, w których przechowywane są zewnętrzne tabele i woluminy. Są to tabele i wolumeny, których dostęp z usługi Azure Databricks jest zarządzany przez Unity Catalog, ale których cykl życia danych i układ plików są zarządzane przy użyciu Twojego dostawcy chmury i innych platform danych. Zazwyczaj używasz tabel zewnętrznych do rejestrowania dużych ilości istniejących danych w usłudze Azure Databricks lub jeśli potrzebujesz również dostępu do zapisu do danych przy użyciu narzędzi spoza usługi Azure Databricks.
Aby uzyskać więcej informacji na temat zarządzanych i zewnętrznych tabel oraz woluminów, zobacz Co to są tabele i widoki? i Co to są woluminy Unity Catalog?.
Ostrzeżenie
Nie udzielaj użytkownikom końcowym dostępu na poziomie przechowywania do zarządzanych tabel lub woluminów w systemie Unity Catalog. To zagraża bezpieczeństwu danych i ładowi.
Udzielanie użytkownikom bezpośredniego dostępu na poziomie magazynowania do zewnętrznego magazynu w usłudze Azure Data Lake Storage Gen2 nie uwzględnia żadnych uprawnień przyznanych ani inspekcji prowadzonych przez Unity Catalog. Bezpośredni dostęp ominie audyty, śledzenie pochodzenia oraz inne funkcje zabezpieczeń i monitorowania Unity Catalog, w tym kontrolę dostępu i uprawnienia. Odpowiadasz za zarządzanie bezpośrednim dostępem do magazynu za pośrednictwem usługi Azure Data Lake Storage Gen2 i zapewnienie, że użytkownicy mają odpowiednie uprawnienia przyznane za pośrednictwem sieci szkieletowej.
Unikaj wszystkich scenariuszy, które zapewniają bezpośredni dostęp do zapisu na poziomie pamięci masowej dla wiader, które przechowują tabele zarządzane przez usługę Databricks. Modyfikowanie, usuwanie lub zmienianie dowolnych obiektów bezpośrednio w magazynie, którymi pierwotnie zarządzał Unity Catalog, może spowodować uszkodzenie danych.
Którzy dostawcy magazynu w chmurze są obsługiwani?
Usługa Azure Databricks obsługuje zarówno kontenery usługi Azure Data Lake Storage Gen2, jak i zasobniki Cloudflare R2 jako lokalizacje magazynu w chmurze dla danych i zasobów AI zarejestrowanych w wykazie Unity Catalog. R2 jest przeznaczony głównie dla przypadków użycia, w których chcesz uniknąć opłat za ruch wychodzący danych, takich jak udostępnianie różnicowe w chmurach i regionach. Aby uzyskać więcej informacji, zobacz Use Cloudflare R2 replicas or migrate storage to R2 (Używanie replik cloudflare R2 lub migrowanie magazynu do wersji R2).
Jak Unity Catalog zarządza dostępem do przechowywania w chmurze?
Aby zarządzać dostępem do bazowego magazynu w chmurze zawierającego tabele i woluminy, Unity Catalog używa zabezpieczanego obiektu o nazwie lokalizacja zewnętrzna, który definiuje ścieżkę do magazynu w chmurze oraz poświadczenia niezbędne do uzyskania dostępu do tej lokalizacji. Te poświadczenia są z kolei zdefiniowane w obiekcie zabezpieczanym katalogu Unity, nazywanym poświadczeniem magazynowym . Udzielając i cofając dostęp do zewnętrznych lokalizacji bezpiecznych w Unity Catalog, można zarządzać dostępem do danych w lokalizacji przechowywania w chmurze. Nadając i cofając dostęp do zabezpieczanych poświadczeń magazynu w Unity Catalog, można kontrolować możliwość tworzenia zewnętrznych obiektów lokalizacyjnych.
Aby uzyskać szczegółowe informacje, zobacz Zarządzanie dostępem do przechowywania w chmurze za pomocą Katalogu Jedności.
Dostęp oparty na ścieżkach do magazynu w chmurze
Mimo że Unity Catalog obsługuje dostęp oparty na ścieżkach do tabel zewnętrznych i woluminów zewnętrznych przy użyciu identyfikatorów URI magazynu w chmurze, Databricks zaleca użytkownikom odczytywanie i zapisywanie wszystkich tabel Unity Catalog przy użyciu nazw tabel oraz uzyskiwanie dostępu do danych w woluminach przy użyciu ścieżek /Volumes
.
Wolumeny są obiektem, który można zabezpieczyć, z którego większość użytkowników usługi Azure Databricks powinna korzystać do bezpośredniej interakcji z danymi nietabularnymi w magazynie obiektów w chmurze. Zobacz Co to są woluminy katalogu Unity?.
Ostrzeżenie
W przypadku aktualizowania metadanych tabeli zewnętrznej za pomocą klienta innego niż Databricks lub poprzez dostęp oparty na ścieżkach z poziomu Databricks, metadane nie są automatycznie synchronizowane z Unity Catalog. Usługa Databricks odradza takie aktualizacje metadanych, ale je jednak wykonasz, należy uruchomić MSCK REPAIR TABLE <table-name> SYNC METADATA
, aby zaktualizować schemat w Unity Catalog. Zobacz REPAIR TABLE.
Najlepsze praktyki dotyczące przechowywania w chmurze z Unity Catalog
Usługa Azure Databricks wymaga użycia Azure Data Lake Storage Gen2 jako usługi Storage Azure do przechowywania danych przetwarzanych w Azure Databricks za pomocą zarządzania za pośrednictwem Unity Catalog. Usługa Azure Data Lake Storage Gen2 umożliwia oddzielenie kosztów magazynowania i kosztów obliczeń oraz korzystanie z dostępnej szczegółowej kontroli dostępu, zapewnianej przez Unity Catalog. Jeśli dane są przechowywane w OneLake (data lake Microsoft Fabric) i przetwarzane przez Databricks (z pominięciem Unity Catalog), zostaną naliczone łączone koszty magazynowania i mocy obliczeniowej. Może to prowadzić do kosztów, które są około 3 razy wyższe w przypadku operacji odczytu i 1,6 razy wyższe w przypadku operacji zapisu w porównaniu z usługą Azure Data Lake Storage Gen2 na potrzeby przechowywania, odczytywania i zapisywania danych. Usługa Azure Blob Storage nie jest zgodna z katalogiem Unity Catalog.
W jaki sposób Unity Catalog zarządza dostępem do innych usług chmury?
Unity Catalog zarządza dostępem do usług innych niż magazynowanie przy użyciu obiektu zabezpieczającego o nazwie poświadczenie usługi. Poświadczenia usługi hermetyzują długoterminowe poświadczenia chmury, które zapewniają dostęp do usługi zewnętrznej, z którą użytkownicy muszą nawiązać połączenie z usługi Azure Databricks.
Dane uwierzytelniające usług nie są przeznaczone do zarządzania dostępem do pamięci w chmurze, która jest używana jako lokalizacja pamięci zarządzana przez Unity Catalog lub zewnętrzną lokalizacją pamięci. Dla tych przypadków użycia użyj poświadczeń dostępu do magazynu zgodnie z opisem w Jak Unity Catalog zarządza dostępem do magazynu w chmurze?.
Aby uzyskać szczegółowe informacje, zobacz:
- Zarządzanie dostępem do zewnętrznych usług w chmurze przy użyciu poświadczeń usługi
- Zarządzanie poświadczeniami usługi
- używanie poświadczeń usługi wykazu aparatu Unity do nawiązywania połączenia z zewnętrznymi usługami w chmurze
Następne kroki
Jeśli dopiero zaczynasz korzystać z Unity Catalog jako administrator, zapoznaj się z:
Jeśli jesteś nowym użytkownikiem i twój obszar roboczy ma już włączony Unity Catalog, przeczytaj:
Aby dowiedzieć się więcej na temat zarządzania dostępem do magazynu w chmurze, zobacz:
Aby dowiedzieć się więcej na temat zarządzania dostępem do usług w chmurze, zobacz: