Udostępnij za pośrednictwem


Utwórz metastore Unity Catalog

Na tej stronie pokazano, jak utworzyć metastore Unity Catalog i połączyć go z obszarami roboczymi.

Ważne

W przypadku obszarów roboczych, które zostały włączone automatycznie dla Unity Catalog, instrukcje na tej stronie są zbędne. Usługa Databricks zaczęła automatycznie włączać nowe obszary robocze dla Unity Catalog 9 listopada 2023 r., a wdrożenie przebiega stopniowo przez konta. Musisz postępować zgodnie z instrukcjami na tej stronie tylko wtedy, gdy masz obszar roboczy i nie masz jeszcze magazynu metadanych w regionie obszaru roboczego. Aby określić, czy magazyn metadanych już istnieje w Twoim regionie, zobacz Automatyczne włączanie Unity Catalog.

Metastore jest nadrzędnym kontenerem dla danych w katalogu Unity. Magazyny metadanych Katalogu Unity rejestrują metadane dotyczące obiektów podlegających zabezpieczeniu (takich jak tabele, woluminy, lokalizacje zewnętrzne i udziały) oraz uprawnienia, które regulują dostęp do nich. Każdy magazyn metadanych uwidacznia trzy-poziomową przestrzeń nazw (catalog.schema.),table za pomocą której można organizować dane. Musisz mieć jeden magazyn metadanych dla każdego regionu, w którym działa organizacja. Aby pracować z Unity Catalog, użytkownicy muszą znajdować się w obszarze roboczym połączonym z metastore w ich regionie.

Aby utworzyć magazyn metadanych, wykonaj następujące czynności:

  1. Na koncie platformy Azure możesz opcjonalnie utworzyć lokalizację pamięci magazynowej na poziomie metastore dla zarządzanych tabel i woluminów.

    Aby uzyskać informacje ułatwiające podjęcie decyzji, czy potrzebujesz magazynu metadanych na poziomie magazynu, zobacz (Opcjonalnie) Tworzenie magazynu metadanych na poziomie magazynu i Hierarchia zarządzanych lokalizacji magazynu.

  2. Na koncie platformy Azure utwórz tożsamość zarządzaną platformy Azure lub jednostkę usługi, która zapewnia dostęp do tej lokalizacji magazynu.

  3. W usłudze Azure Databricks utwórz magazyn metadanych, dołącz lokalizację magazynu i przypisz obszary robocze do magazynu metadanych.

Uwaga

Oprócz metod opisanych w tym artykule można również utworzyć metastore przy użyciu usługodawcy Databricks Terraform, w szczególności zasobu databricks_metastore. Aby umożliwić Unity Catalog dostęp do metasklepu, użyj databricks_metastore_data_access. Aby połączyć obszary robocze z magazynem metadanych, użyj databricks_metastore_assignment.

Zanim rozpoczniesz

Przed rozpoczęciem zapoznaj się z podstawowymi pojęciami dotyczącymi katalogu Unity Catalog, w tym magazynami metadanych i magazynem zarządzanym. Sprawdź temat Co to jest wykaz Unity?.

Należy również potwierdzić, że spełniasz następujące wymagania dotyczące wszystkich kroków konfiguracji:

  • Musisz być administratorem konta usługi Azure Databricks.

    Pierwszym administratorem konta usługi Azure Databricks musi być globalny administrator Microsoft Entra ID podczas pierwszego zalogowania się do konsoli konta usługi Azure Databricks. Po pierwszym zalogowaniu użytkownik staje się administratorem konta usługi Azure Databricks i nie potrzebuje już roli administratora globalnego microsoft Entra ID, aby uzyskać dostęp do konta usługi Azure Databricks. Pierwszy administrator konta może przypisać użytkowników dzierżawy Microsoft Entra ID do roli dodatkowych administratorów kont, którzy sami mogą przypisywać kolejnych administratorów kont. Dodatkowi administratorzy kont nie wymagają określonych ról w identyfikatorze Entra firmy Microsoft.

  • Obszary robocze dołączane do magazynu metadanych muszą znajdować się w planie usługi Azure Databricks Premium.

  • Jeśli chcesz skonfigurować główne miejsce magazynowania na poziomie magazynu metadanych, musisz mieć uprawnienia do tworzenia następujących elementów w dzierżawie Azure:

Krok 1 (opcjonalnie): Tworzenie kontenera magazynu dla magazynu zarządzanego na poziomie magazynu metadanych

W tym kroku, który jest opcjonalny, utworzysz konto magazynu i kontener do przechowywania danych tabeli i woluminu na poziomie zarządzania metadanymi. Aby określić, czy potrzebujesz magazynu na poziomie magazynu metadanych, zobacz (Opcjonalnie) Tworzenie magazynu metadanych na poziomie magazynu.

  1. Utwórz konto magazynu dla usługi Azure Data Lake Storage.

    To konto magazynu będzie zawierać tabele i woluminy zarządzane przez Unity Catalog. Musi to być konto usługi Azure Data Lake Storage w tym samym regionie co obszary robocze usługi Azure Databricks. Zobacz Jak utworzyć konto magazynowe do używania z usługą Azure Data Lake Storage.

  2. Utwórz kontener magazynu, który będzie przechowywać zarządzane tabele i dane woluminów na poziomie magazynu metadanych.

    Można utworzyć tylko jeden magazyn metadanych na region. Musisz używać tego samego regionu dla metastore’u i kontenera przechowywania.

    Ta lokalizacja magazynu na poziomie metadanych może zostać nadpisana na poziomie katalogu i schematu. Zobacz Określ lokalizację magazynu zarządzanego w Unity Catalog.

    Zanotuj identyfikator URI ADLSv2 dla kontenera, który ma następujący format:

    abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/<metastore-name>
    

    W kolejnych krokach zastąp <storage-container> tym tekstem URI.

Krok 2 (opcjonalnie): Tworzenie tożsamości zarządzanej w celu uzyskania dostępu do zarządzanej lokalizacji magazynu

W tym kroku, który jest wymagany tylko w przypadku ukończenia kroku 1, utworzysz łącznik dostępu usługi Azure Databricks, który zawiera tożsamość zarządzaną i przyznasz mu dostęp do kontenera magazynu.

Postępuj zgodnie z instrukcjami w Używanie zarządzanych tożsamości platformy Azure w Unity Catalog, aby uzyskać dostęp do zasobów pamięci.

Uwaga

Można użyć albo zarządzanej tożsamości Azure, albo jednostki usługi jako tożsamości umożliwiającej dostęp do kontenera zasobów magazynu metadanych. Usługa Databricks zdecydowanie zaleca tożsamości zarządzane, ponieważ nie wymagają od Ciebie zarządzania poświadczeniami ani rotacji sekretów, a także umożliwiają połączenie z kontem usługi Azure Data Lake Storage chronionym przez zaporę magazynu. Jeśli chcesz użyć tożsamości usługi, zobacz Tworzenie zarządzanego magazynu Unity Catalog przy użyciu tożsamości usługi (starsza wersja).

Krok 3. Tworzenie magazynu metadanych i dołączanie obszaru roboczego

Każdy region usługi Azure Databricks wymaga własnego magazynu danych Unity Catalog.

Tworzysz magazyn metadanych dla każdego regionu, w którym działa organizacja. Każdy z tych regionalnych magazynów metadanych można połączyć z dowolną liczbą obszarów roboczych w tym regionie. Każdy połączony obszar roboczy ma ten sam widok danych w magazynie metadanych, a kontrola dostępu do danych może być zarządzana między obszarami roboczymi. Możesz uzyskać dostęp do danych w innych przechowalniach metadanych za pomocą Delta Sharing.

Jeśli zdecydujesz się utworzyć magazyn na poziomie magazynu metadanych, magazyn metadanych będzie używać kontenera magazynu i tożsamości zarządzanej platformy Azure utworzonej w poprzednich krokach.

Aby utworzyć magazyn metadanych:

  1. Jeśli wybrano opcję tworzenia magazynu metadanych, upewnij się, że masz ścieżkę do kontenera magazynu i identyfikator zasobu łącznika dostępu usługi Azure Databricks utworzonego w poprzednim zadaniu.

  2. Zaloguj się do obszaru roboczego jako administrator konta.

  3. Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego usługi Azure Databricks i wybierz pozycję Zarządzaj kontem.

  4. Zaloguj się do konsoli konta usługi Azure Databricks.

  5. Kliknij ikonę Dane.Wykaz.

  6. Kliknij pozycję Utwórz magazyn metadanych.

  7. Wprowadź następujące informacje:

    • Nazwa magazynu metadanych.

    • Region , w którym zostanie wdrożony magazyn metadanych.

      Musi to znajdować się w tym samym regionie co obszary robocze, których chcesz użyć do uzyskiwania dostępu do danych. Jeśli zdecydujesz się utworzyć kontener do przechowywania na poziomie metadanych, ten sam region musi być również wybrany.

    • (Opcjonalnie) Ścieżka usługi ADLS Gen 2: Wprowadź ścieżkę do kontenera magazynu, który będzie używany jako magazyn główny dla metastore.

      Prefiks abfss:// jest dodawany automatycznie.

    • (Opcjonalnie) Identyfikator łącznika dostępu: wprowadź identyfikator zasobu łącznika dostępu usługi Azure Databricks w formacie:

      /subscriptions/12f34567-8ace-9c10-111c-aea8eba12345c/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
      
  8. Kliknij pozycję Utwórz.

  9. Po wyświetleniu monitu wybierz obszary robocze do połączenia z magazynem metadanych.

    Aby uzyskać szczegółowe informacje, zobacz Włączanie obszaru roboczego dla Unity Catalog.

  10. Przenieś rolę administratora magazynu metadanych do grupy.

    Użytkownik, który tworzy magazyn metadanych, jest jego właścicielem, nazywany również administratorem magazynu metadanych. Administrator magazynu metadanych może tworzyć obiekty najwyższego poziomu w magazynie metadanych, takich jak wykazy, i zarządzać dostępem do tabel i innych obiektów. Usługa Databricks zaleca ponowne przypisanie roli administratora magazynu metadanych do grupy. Zobacz Przypisz administratora magazynu metadanych.

  11. Włącz zarządzanie procesem przekazywania w usłudze Azure Databricks do woluminów zarządzanych.

    Usługa Azure Databricks używa CORS (współdzielenia zasobów między źródłami) do przekazywania danych do woluminów zarządzanych w Unity Catalog.

    1. Przejdź do swojego konta magazynu za pomocą portalu Azure

    2. Wybierz Ustawienia > Udostępnianie zasobów (CORS)

    3. Upewnij się, że wybrano kartę Blob Service. Edytuj pola w następujący sposób:

      (No changes needed) Wartość
      Dozwolone źródła https://*.azuredatabricks.net
      Dozwolone metody PUT
      Dozwolone nagłówki x-ms-blob-type
      Uwidocznione nagłówki (pozostaw puste)
      Maksymalny wiek 1800
    4. Wybierz Zapisz.

Następne kroki