Uaktualnianie obszaru roboczego do wykazu aparatu Unity za pomocą narzędzi UCX

W tym artykule przedstawiono UCX , projekt usługi Databricks Labs, który udostępnia narzędzia ułatwiające uaktualnienie obszaru roboczego innego niż Unity-Catalog do wykazu aparatu Unity.

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. Migracja tabel worfklow ułatwia uaktualnianie tabel zarejestrowanych w magazynie metadanych Hive obszaru roboczego do magazynu metadanych wykazu aparatu Unity. Ten przepływ pracy pomaga również migrować lokalizacje magazynu i poświadczenia wymagane 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 jest uruchamiany program UCX:

  • Interfejs wiersza polecenia usługi Databricks w wersji 0.213 lub nowszej. Zobacz Instalowanie lub aktualizowanie interfejsu wiersza polecenia usługi Databricks.

    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 tabele programu Hive w obszarze roboczym (zalecane, ale nie jest to wymagane), musisz mieć interfejs wiersza polecenia dla dostawcy magazynu w chmurze (interfejs wiersza polecenia platformy Azure lub interfejs wiersza polecenia platformy AWS) zainstalowany na komputerze, na którym są uruchamiane 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 wykazu aparatu Unity utworzony dla każdego regionu, który hostuje obszar roboczy, który chcesz uaktualnić, z każdym z tych obszarów roboczych usługi Azure Databricks dołączonych do magazynu metadanych wykazu aparatu Unity.

    Aby dowiedzieć się, czy masz już magazyn metadanych wykazu aparatu Unity w odpowiednich regionach obszaru roboczego, jak utworzyć magazyn metadanych, jeśli tego nie zrobisz, oraz jak dołączyć magazyn metadanych wykazu aparatu Unity do obszaru roboczego, zobacz Krok 1: Potwierdzanie włączenia obszaru roboczego dla wykazu aparatu Unity w artykule dotyczącym konfiguracji wykazu aparatu Unity. Alternatywnie interfejs UCX udostępnia narzędzie do przypisywania magazynów metadanych wykazu aparatu Unity do obszarów roboczych , których można użyć po zainstalowaniu interfejsu UCX.

    Dołączanie magazynu metadanych wykazu aparatu Unity do obszaru roboczego umożliwia również federację tożsamości, w której można centralizować zarządzanie użytkownikami na poziomie konta usługi Azure Databricks, co jest również wymaganiem wstępnym do korzystania z interfejsu 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.

  • Usługa SQL Warehouse pro lub bezserwerowa uruchomiona w obszarze roboczym, w którym są uruchamiane przepływy pracy UCX, wymagane 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

Zostanie wyświetlony monit o wybranie następujących elementów:

  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 warto wybrać wartość domyślną, czyli ucx.

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

  4. Lista 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 zgodność wykazu unity tożsamości grup, lokalizacji magazynu, poświadczeń magazynu, kontroli dostępu i tabel w bieżącym obszarze roboczym oraz udostępnia informacje niezbędne do planowania migracji do wykazu aparatu Unity. 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 tabelach delty w $inventory_database schemacie określonym podczas instalacji. Te tabele umożliwiają przeprowadzenie dalszej analizy i podejmowania decyzji przy użyciu 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 grupy obszarów roboczych do grup na poziomie konta w celu obsługi wykazu aparatu Unity. 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 tabelach delty w $inventory_database schemacie określonym podczas instalacji. Te tabele umożliwiają przeprowadzenie dalszej analizy i podejmowania decyzji. 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. Uruchamianie przepływu pracy migracji tabel

Przepływ pracy migracji tabel uaktualnia tabele z magazynu metadanych Programu Hive do magazynu metadanych wykazu aparatu Unity. Tabele zewnętrzne w magazynie metadanych Hive są uaktualniane jako tabele zewnętrzne w katalogu aparatu Unity przy użyciu funkcji SYNC. Zarządzane tabele w magazynie metadanych Programu Hive, które są przechowywane w magazynie obszarów roboczych (nazywanym również głównym systemem plików DBFS), są uaktualniane jako tabele zarządzane w wykazie aparatu Unity przy użyciu funkcji DEEP CLONE.

Aby uaktualnić tabele zarządzane przez program Hive, muszą być w formacie delta lub Parquet. Zewnętrzne tabele programu Hive muszą być w jednym z formatów danych wymienionych w temacie Praca z tabelami zewnętrznymi.

Uruchamianie poleceń przygotowawczych

Migracja tabel obejmuje szereg zadań przygotowawczych uruchamianych przed uruchomieniem przepływu pracy migracji tabel. 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 katalog aparatu Unity, schemat i tabelę na każdą tabelę programu Hive, która zostanie uaktualniona. Przed kontynuowaniem przepływu pracy migracji należy przejrzeć i zaktualizować plik mapowania.
  • Polecenie create-uber-principal , które tworzy jednostkę usługi z dostępem tylko do odczytu do wszystkich magazynów używanych przez tabele w tym obszarze roboczym. Zasób obliczeniowy zadania przepływu pracy używa tego podmiotu zabezpieczeń do uaktualniania tabel w obszarze roboczym. Anulowanie aprowizacji tej jednostki usługi po zakończeniu uaktualniania.
  • (Opcjonalnie) Polecenie principal-prefix-access , które identyfikuje konta magazynu i poświadczenia dostępu do magazynu używane przez tabele programu Hive w obszarze roboczym.
  • (Opcjonalnie) Polecenie migrate-credentials , które tworzy poświadczenia magazynu wykazu aparatu Unity na podstawie poświadczeń dostępu do magazynu zidentyfikowanych przez principal-prefix-accessprogram .
  • (Opcjonalnie) Polecenie migration locations , które tworzy lokalizacje zewnętrzne wykazu aparatu Unity z lokalizacji magazynu zidentyfikowanych przez przepływ pracy oceny przy użyciu poświadczeń magazynu utworzonych przez migrate-credentialsprogram .
  • (Opcjonalnie) Polecenie create-catalogs-schemas, które tworzy wykazy i schematy aparatu Unity, które będą przechowywać uaktualnione tabele.

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

Uruchamianie migracji tabeli

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

Dane wyjściowe każdego zadania przepływu pracy są przechowywane w tabelach delty w $inventory_database schemacie określonym podczas instalacji. Te tabele umożliwiają przeprowadzenie dalszej analizy i podejmowania decyzji. Może być konieczne wielokrotne uruchomienie przepływu pracy migracji tabel, aby upewnić się, że wszystkie tabele zostały pomyślnie uaktualnione.

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

Dodatkowe narzędzia

Interfejs UCX zawiera również narzędzia 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
    

Uzyskaj pomoc

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.