Udostępnij za pośrednictwem


Użyj narzędzi UCX, aby zaktualizować obszar roboczy do środowiska Unity Catalog

W tym artykule przedstawiono UCX, projekt Databricks Labs, który udostępnia narzędzia do ułatwienia aktualizacji obszaru roboczego bez UnityCatalog do środowiska Unity Catalog.

Uwaga

Interfejs UCX, podobnie jak wszystkie projekty na koncie usługi Databrickslabs GitHub, jest udostępniany tylko do eksploracji i nie jest formalnie obsługiwany przez usługę Databricks z umowami dotyczącymi poziomu usług (SLA). Jest on dostarczany zgodnie z rzeczywistymi funkcjami. Nie gwarantujemy żadnego rodzaju. Nie przesyłaj biletu pomocy technicznej usługi Databricks dotyczącego problemów, które wynikają z korzystania z tego projektu. Zamiast tego zgłoś problem z usługą GitHub. Problemy zostaną poddane przeglądowi jako zezwolenia na czas, ale nie ma formalnych umów SLA dotyczących pomocy technicznej.

Projekt UCX udostępnia następujące narzędzia i przepływy pracy migracji:

  1. Przepływ pracy oceny ułatwia zaplanowanie migracji.
  2. Przepływ pracy migracji grup, który ułatwia uaktualnianie członkostwa w grupie z obszaru roboczego do konta usługi Databricks i migrowanie uprawnień do nowych grup na poziomie konta.
  3. Table proces migracji, aby ułatwić aktualizację tables zarejestrowanych w magazynie metadanych Hive w obszarze roboczym do magazynu metadanych Unity Catalog. Ten proces pomaga również migrować lokalizacje magazynowe oraz credentials niezbędne do uzyskania do nich dostępu.

Na tym diagramie przedstawiono ogólny przepływ migracji, identyfikując przepływy pracy migracji i narzędzia według nazwy:

Wykres przepływów pracy migracji UCX

Uwaga

Przepływ pracy migracji kodu przedstawiony na diagramie pozostaje w fazie projektowania i nie jest jeszcze dostępny.

Zanim rozpoczniesz

Przed zainstalowaniem interfejsu UCX i uruchomieniem przepływów pracy UCX środowisko musi spełniać następujące wymagania.

Pakiety zainstalowane na komputerze, na którym uruchamiasz where UCX:

  • Interfejs wiersza polecenia usługi Databricks w wersji 0.213 lub nowszej. Zobacz Instalację lub update Databricks CLI.

    Musisz mieć plik konfiguracji usługi Databricks z profilami konfiguracji zarówno dla obszaru roboczego, jak i konta usługi Databricks.

  • Środowisko Python w wersji 3.10 lub nowszej.

  • Jeśli chcesz uruchomić przepływ pracy UCX, który identyfikuje lokalizacje magazynu używane przez usługę Hive tables w obszarze roboczym (zalecane, ale nie jest to wymagane), musisz mieć zainstalowany interfejs wiersza polecenia dla dostawcy magazynu w chmurze (CLI platformy Azure lub CLI platformy AWS) na komputerze where, na którym uruchamiasz przepływy pracy UCX.

Dostęp sieciowy:

  • Dostęp sieciowy z komputera, na którym jest uruchamiana instalacja UCX, do obszaru roboczego usługi Azure Databricks, który jest migrowane.
  • Dostęp sieciowy do Internetu z komputera z instalacją UCX. Jest to wymagane w celu uzyskania dostępu do pypi.org i github.com.
  • Dostęp sieciowy z obszaru roboczego usługi Azure Databricks do pypi.org pobierania databricks-sdk pakietów i pyyaml .

Role i uprawnienia usługi Databricks:

  • Role administratora konta i administratora obszaru roboczego usługi Azure Databricks dla użytkownika, który uruchamia instalację UCX. Nie można uruchomić instalacji jako jednostki usługi.

Inne wymagania wstępne usługi Databricks:

  • Magazyn metadanych Unity Catalog utworzony dla każdego regionu, który hostuje obszar roboczy, który chcesz zaktualizować, z każdym z tych obszarów roboczych usługi Azure Databricks podłączonym do magazynu metadanych Unity Catalog.

    Aby dowiedzieć się, czy masz już magazyn metadanych Unity Catalog w odpowiednich regionach obszaru roboczego, jak utworzyć magazyn metadanych, jeśli nie, oraz jak przypiąć magazyn metadanych Unity Catalog do obszaru roboczego, zobacz Krok 1: Upewnij się, że obszar roboczy jest włączony dla Unity Catalog w artykule dotyczącym konfiguracji Unity Catalog. Alternatywnie UCX udostępnia narzędzie do przypisywania Unity Catalogmetastores do obszarów roboczych, których można użyć po zainstalowaniu UCX.

    Dołączanie magazynu metadanych platformy Unity Catalog do obszaru roboczego umożliwia również federację tożsamości, dzięki której zarządzanie użytkownikami jest scentralizowane na poziomie konta usługi Azure Databricks, co jest również wymogiem wstępnym do korzystania z UCX. Zobacz Włączanie federacji tożsamości.

  • Jeśli obszar roboczy używa zewnętrznego magazynu metadanych Hive (takiego jak AWS Glue) zamiast domyślnego magazynu metadanych Hive w obszarze roboczym lokalnym, należy wykonać pewne wymagania wstępne. Zobacz Integracja zewnętrznego magazynu metadanych Hive w repozytorium databrickslabs/ucx.

  • Magazyn SQL w wersji Pro lub bezserwerowej uruchomiony w obszarze roboczym where, na którym uruchamiasz przepływy pracy UCX, wymagany do renderowania raportu wygenerowanego przez przepływ pracy oceny.

Instalowanie interfejsu UCX

Aby zainstalować interfejs UCX, użyj interfejsu wiersza polecenia usługi Databricks:

databricks labs install ucx

Pojawi się monit, aby select następujące:

  1. Profil konfiguracji usługi Databricks dla obszaru roboczego, który chcesz uaktualnić. Plik konfiguracji musi również zawierać profil konfiguracji nadrzędnego konta usługi Databricks obszaru roboczego.

  2. Nazwa bazy danych spisu, która będzie używana do przechowywania danych wyjściowych przepływów pracy migracji. Zazwyczaj select domyślne, czyli ucx.

  3. Usługa SQL Warehouse do uruchomienia procesu instalacji.

  4. list grup lokalnych obszaru roboczego, które chcesz migrować do grup na poziomie konta. Jeśli pozostawisz to jako domyślną (<ALL>), dowolną istniejącą grupę na poziomie konta, której nazwa jest zgodna z grupą lokalną obszaru roboczego, będzie traktowana jako zastąpienie tej grupy lokalnej obszaru roboczego i będzie dziedziczyć wszystkie jej uprawnienia obszaru roboczego po uruchomieniu przepływu pracy migracji grupy po instalacji.

    Po uruchomieniu instalatora i przed uruchomieniem migracji grup można zmodyfikować mapowanie obszaru roboczego-grupy-grupy-grupy-grupy. Zobacz Rozwiązywanie konfliktów nazw grup w repozytorium UCX.

  5. Jeśli masz zewnętrzny magazyn metadanych Programu Hive, taki jak AWS Glue, możesz nawiązać z nim połączenie. Zobacz Integracja zewnętrznego magazynu metadanych Hive w repozytorium databrickslabs/ucx.

  6. Czy otworzyć wygenerowany notes README.

Po zakończeniu instalacji wdraża notes README, pulpity nawigacyjne, bazy danych, biblioteki, zadania i inne zasoby w obszarze roboczym.

Aby uzyskać więcej informacji, zobacz instrukcje instalacji w pliku readme projektu. Możesz również zainstalować interfejs UCX na wszystkich obszarach roboczych na koncie usługi Databricks.

Otwieranie notesu README

Każda instalacja tworzy notes README, który zawiera szczegółowy opis wszystkich przepływów pracy i zadań, z szybkimi linkami do przepływów pracy i pulpitów nawigacyjnych. Zobacz Notes Readme.

Krok 1. Uruchamianie przepływu pracy oceny

Przepływ pracy oceny ocenia Catalog zgodności tożsamości grup, lokalizacji magazynu, credentialsmagazynu, kontroli dostępu i tables w bieżącym obszarze roboczym oraz udostępnia informacje niezbędne do planowania migracji do środowiska Unity Catalog. Zadania w przepływie pracy oceny można wykonywać równolegle lub sekwencyjnie w zależności od określonych zależności. Po zakończeniu przepływu pracy oceny pulpit nawigacyjny oceny zostanie wypełniony wynikami i typowymi zaleceniami.

Dane wyjściowe każdego zadania przepływu pracy są przechowywane w delcie tables w $inventory_databaseschema, który określisz podczas instalacji. Możesz użyć tych tables do przeprowadzenia dalszej analizy i podejmowania decyzji, korzystając z raportu oceny . Przepływ pracy oceny można uruchomić wiele razy, aby upewnić się, że wszystkie niezgodne jednostki są identyfikowane i uwzględniane przed rozpoczęciem procesu migracji.

Przepływ pracy oceny można wyzwolić z notesu README wygenerowanego przez interfejs użytkownika UCX i interfejsu użytkownika usługi Azure Databricks (zadania przepływów >> pracy [UCX] Assessment) lub uruchomić następujące polecenie interfejsu wiersza polecenia usługi Databricks:

databricks labs ucx ensure-assessment-run

Aby uzyskać szczegółowe instrukcje, zobacz Przepływ pracy oceny.

Krok 2. Uruchamianie przepływu pracy migracji grup

Przepływ pracy migracji grup uaktualnia lokalne grupy obszaru roboczego do grup na poziomie konta, aby obsługiwać Unity Catalog. Gwarantuje to, że odpowiednie grupy na poziomie konta są dostępne w obszarze roboczym i replikują wszystkie uprawnienia. Usuwa również wszystkie niepotrzebne grupy i uprawnienia z obszaru roboczego. Zadania w przepływie pracy migracji grupy zależą od danych wyjściowych przepływu pracy oceny.

Dane wyjściowe każdego zadania przepływu pracy są przechowywane w Delta tables, w $inventory_databaseschema, które określisz podczas instalacji. Możesz użyć tych tables, by przeprowadzić dalszą analizę i podejmować decyzje. Przepływ pracy migracji grup można uruchomić wiele razy, aby upewnić się, że wszystkie grupy zostały pomyślnie uaktualnione i że przypisano wszystkie niezbędne uprawnienia.

Aby uzyskać informacje na temat uruchamiania przepływu pracy migracji grup, zobacz przepływ pracy migracji readme wygenerowany przez UCX i migracji grup w pliku readme UCX.

Krok 3. Uruchom przepływ pracy migracji table

Przepływ migracji table uaktualnia tables z magazynu metadanych Hive do magazynu metadanych Unity Catalog. Zewnętrzne tables w magazynie metadanych Hive są aktualizowane do tables zewnętrznych w Unity Catalog, używając SYNC. Zarządzane tables w magazynie metadanych Programu Hive przechowywanym w magazynie obszarów roboczych (znanym również jako katalog główny systemu plików DBFS) są uaktualniane jako zarządzane tables w środowisku Unity Catalogprzy użyciu DEEP CLONE.

Program Hive zarządzany tables musi być w formacie Delta lub Parquet, aby można go było uaktualnić. Zewnętrzny Hive tables musi być w jednym z formatów danych wymienionych w praca z zewnętrznymi tables.

Uruchamianie poleceń przygotowawczych

Table migracja obejmuje szereg zadań przygotowawczych, które należy uruchomić przed uruchomieniem przepływu pracy migracji table. Te zadania są wykonywane przy użyciu następujących poleceń interfejsu wiersza polecenia usługi Databricks:

  • Polecenie create-table-mapping, które tworzy plik CSV mapujący docelowy CatalogcatalogUnity, schemai table do każdego table Hive, który zostanie uaktualniony. Przed kontynuowaniem pracy migracji należy przejrzeć i update plik mapowania.
  • Polecenie create-uber-principal, które tworzy zasadę usługi z dostępem tylko do odczytu do wszystkich magazynów używanych przez tables w tym obszarze roboczym. Zasób obliczeniowy zadania w przepływie pracy używa tego pryncypału do uaktualnienia tables w obszarze roboczym. Anulowanie aprowizacji tej jednostki usługi po zakończeniu uaktualniania.
  • (Opcjonalnie) Polecenie principal-prefix-access, które identyfikuje konta magazynu oraz dostęp do magazynu credentials, wykorzystywane przez Hive tables w obszarze roboczym.
  • (Opcjonalnie) Polecenie migrate-credentials, które tworzy credentials magazynu aparatu Unity Catalog na podstawie credentials dostępu do magazynu zidentyfikowanego przez principal-prefix-access.
  • (Opcjonalnie) Polecenie migration locations, które tworzy zewnętrzne lokalizacje Unity Catalog z lokalizacji magazynowych zidentyfikowanych przez przepływ pracy oceny, przy użyciu zasobów magazynu credentials utworzonego przez migrate-credentials.
  • (Opcjonalnie) Polecenie create-catalogs-schemas, które tworzy Unity Catalogcatalogs oraz schematy, które będą przechowywać zaktualizowane tables.

Aby uzyskać szczegółowe informacje, w tym dodatkowe polecenia i opcje przepływu pracy migracji table, zobacz polecenia migracji Table w pliku readme UCX.

Uruchom migrację table

Po uruchomieniu zadań przygotowawczych możesz uruchomić przepływ pracy migracji table z poziomu notesu README wygenerowanego przez UCX lub z Przepływy pracy > Zadania w interfejsie użytkownika obszaru roboczego.

Dane wyjściowe każdego zadania przepływu pracy są przechowywane w Delta tables w $inventory_databaseschema, który określasz podczas instalacji. Możesz użyć tych tables do przeprowadzenia dalszej analizy i podejmowania decyzji. Może być konieczne wielokrotne uruchomienie przepływu pracy migracji table, aby upewnić się, że wszystkie tables zostały pomyślnie uaktualnione.

Aby uzyskać pełne instrukcje dotyczące migracji , zobacz wygenerowany przez UCX notes README oraz przepływ pracy migracji w pliku README UCX.

Dodatkowe narzędzia

UCX obejmuje również:

  • Narzędzia umożliwiające federację magazynu metadanych Hive, narzędzie integracji usługi Azure Databricks, które umożliwia platformie Unity Catalog nadzorowanie tables zarejestrowanych w magazynie metadanych Hive:

    • enable-hms-federation
    • create-federated-catalog

    Federacja magazynu metadanych Hive pomaga w migracji, umożliwiając uruchamianie zadań zarówno w dziedzicznym magazynie metadanych Hive, jak i jego lustrzanym odbiciu w systemie Unity Catalog, umożliwiając łatwe przejście do systemu Unity Catalog. Aby uzyskać więcej informacji na temat używania federacji magazynu metadanych Hive w scenariuszu migracji, zobacz Jak używać federacji magazynu metadanych Hive podczas migracji do środowiska Unity Catalog?.

  • Narzędzia do debugowania i inne narzędzia ułatwiające pomyślne rozwiązanie migracji.

Aby uzyskać więcej informacji, zobacz notes README wygenerowany przez UCX i plik readme projektu UCX.

Uaktualnianie instalacji UCX

Projekt UCX jest regularnie aktualizowany. Aby uaktualnić instalację UCX do najnowszej wersji:

  1. Sprawdź, czy zainstalowano interfejs UCX.

    databricks labs installed
    
    Name  Description                            Version
    ucx   Unity Catalog Migration Toolkit (UCX)  0.20.0
    
  2. Uruchom uaktualnienie:

    databricks labs upgrade ucx
    

pomoc Get

Aby uzyskać pomoc dotyczącą interfejsu wiersza polecenia UCX, uruchom polecenie:

databricks labs ucx --help

Aby uzyskać pomoc dotyczącą określonego polecenia UCX, uruchom polecenie:

databricks labs ucx <command> --help

Aby rozwiązać problemy:

Aby zgłosić problem lub żądanie funkcji, zgłoś problem z usługą GitHub.

Informacje o wersji UCX

Zobacz dziennik zmian w repozytorium GitHub UCX.