Zarządzanie wykazem domyślnym
W tym artykule przedstawiono domyślny katalog w Unity Catalog, wyjaśniono, jak zdecydować, który katalog wybrać jako domyślny, oraz jak go zmienić.
Jaki jest domyślny katalog w Unity Catalog?
Domyślny katalog jest skonfigurowany dla każdej przestrzeni roboczej, która jest włączona dla Unity Catalog. Domyślny wykaz umożliwia wykonywanie operacji na danych bez określania wykazu. Jeśli pominięto nazwę wykazu najwyższego poziomu podczas wykonywania operacji na danych, przyjmuje się domyślny wykaz.
Administrator obszaru roboczego może wyświetlać lub przełączać domyślny wykaz przy użyciu interfejsu użytkownika ustawień administratora. Można również ustawić domyślny wykaz dla klastra przy użyciu konfiguracji platformy Spark.
Polecenia, które nie określają wykazu (na przykład GRANT CREATE TABLE ON SCHEMA myschema TO mygroup
) są oceniane dla wykazu w następującej kolejności:
- Czy wykaz jest ustawiony dla sesji przy użyciu instrukcji
USE CATALOG
lub ustawienia JDBC? - Czy konfiguracja Spark
spark.databricks.sql.initial.catalog.namespace
jest ustawiona na klastrze? - Czy istnieje domyślny wykaz obszarów roboczych ustawiony dla klastra?
Ważny
Konfiguracja potoku dla Delta Live Tables ustawia domyślny katalog, który zastępuje domyślny katalog obszaru roboczego.
Domyślna konfiguracja katalogu po włączeniu katalogu Unity
Domyślny katalog, który został początkowo skonfigurowany dla obszaru roboczego, zależy od sposobu włączenia obszaru roboczego dla Unity Catalog.
- W przypadku niektórych obszarów roboczych, które zostały automatycznie włączone do katalogu Unity, katalog obszarów roboczych został ustawiony jako domyślny. Zobacz Automatyczne uruchamianie Unity Catalog.
- W przypadku wszystkich innych obszarów roboczych wykaz
hive_metastore
został ustawiony jako katalog domyślny.
Podczas migracji z magazynu metadanych Hive do Unity Catalog można ustawić domyślny katalog na hive_metastore
, aby uniknąć wpływu na istniejący kod odwołujący się do magazynu metadanych Hive.
Zmienianie katalogu domyślnego
Administrator obszaru roboczego może zmienić domyślny wykaz dla obszaru roboczego. Każdy, kto ma uprawnienia do tworzenia lub edytowania zasobu obliczeniowego, może ustawić inny domyślny wykaz dla zasobu obliczeniowego.
Ostrzeżenie
Zmiana domyślnego wykazu może przerwać istniejące operacje danych, które są od niego zależne.
Aby skonfigurować inny domyślny wykaz dla obszaru roboczego:
- Zaloguj się do obszaru roboczego jako administrator obszaru roboczego.
- Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego i wybierz pozycję Ustawienia administratora z listy rozwijanej.
- Kliknij kartę Zaawansowane.
- W katalogu domyślnym dla wiersza obszaru roboczego wprowadź nazwę katalogu i kliknij przycisk Zapisz.
Uruchom ponownie magazyny SQL i klastry, aby zmiany zaczęły obowiązywać. Wszystkie nowe i ponownie uruchomione magazyny SQL i klastry będą używać tego wykazu jako domyślnego obszaru roboczego.
Możesz również zastąpić domyślny wykaz dla określonego klastra, ustawiając następującą konfigurację platformy Spark w klastrze. To podejście nie jest dostępne w przypadku magazynów SQL:
spark.databricks.sql.initial.catalog.namespace
Aby uzyskać instrukcje, zobacz Konfiguracja platformy Spark.
Wyświetlanie bieżącego wykazu domyślnego
Aby uzyskać bieżący katalog domyślny dla obszaru roboczego, możesz użyć instrukcji SQL w notesie lub zapytaniu edytora SQL. Administrator obszaru roboczego może uzyskać domyślny wykaz przy użyciu interfejsu użytkownika ustawień administratora.
Ustawienia administratora
- Zaloguj się do obszaru roboczego jako administrator obszaru roboczego.
- Kliknij swoją nazwę użytkownika na górnym pasku obszaru roboczego i wybierz pozycję Ustawienia administratora z listy rozwijanej.
- Kliknij kartę Zaawansowane.
- W wierszu katalogu domyślnego obszaru roboczego zobacz nazwę katalogu.
SQL
Uruchom następujące polecenie w notatniku lub zapytaniu edytora SQL, które jest wykonywane na magazynie SQL lub w klastrze zgodnym z Unity Catalog. Domyślny wykaz obszarów roboczych jest zwracany tak długo, jak nie ustawiono żadnej instrukcji USE CATALOG
lub ustawienia JDBC w sesji, o ile nie ustawiono żadnej konfiguracji spark.databricks.sql.initial.catalog.namespace
dla klastra.
SELECT current_catalog();