Gerenciar o catálogo default

Este artigo apresenta o catálogo default Unity Catalog , explica como decidir qual catálogo usar como default e mostra como alterá-lo.

Qual é o catálogo padrão no Unity Catalog?

Um catálogo default é configurado para cada workspace que está habilitado para Unity Catalog. O catálogo default permite que o senhor execute operações de dados sem especificar um catálogo. Se o senhor omitir o nome do catálogo de nível superior ao realizar operações de dados, o catálogo default será assumido.

Um administrador do workspace pode view ou alternar o catálogo default usando a interface de usuário Admin Settings. O senhor também pode definir o catálogo default para um cluster usando uma configuração Spark.

Os comandos que não especificam o catálogo (por exemplo, GRANT CREATE TABLE ON SCHEMA myschema TO mygroup) são avaliados para o catálogo na seguinte ordem:

  1. O catálogo está definido para a sessão usando uma instrução USE CATALOG ou uma configuração JDBC?

  2. A configuração spark.databricks.sql.initial.catalog.namespace do Spark está definida no cluster?

  3. Existe um conjunto de catálogos workspace default para o cluster?

A configuração padrão do catálogo quando o Unity Catalog está ativado

O catálogo default que foi inicialmente configurado para seu workspace depende de como seu workspace foi habilitado para Unity Catalog:

  • Em alguns espaços de trabalho que foram ativados automaticamente para Unity Catalog, o catálogoworkspace foi definido como o catálogo default. Consulte Ativação automática do Unity Catalog.

  • Para todos os outros espaços de trabalho, o catálogo hive_metastore foi definido como o catálogo default.

Se o senhor estiver fazendo a transição do Hive metastore para o Unity Catalog dentro de um workspace existente, normalmente faz sentido usar hive_metastore como o catálogo default para evitar afetar o código existente que faz referência ao Hive metastore.

Alterar o catálogo padrão

Um administrador do workspace pode alterar o catálogo do default para o workspace. Qualquer pessoa com permissão para criar ou editar um recurso compute pode definir um catálogo default diferente para o recurso compute.

Aviso

Alterar o catálogo padrão pode causar problemas nas operações de dados existentes que dependem dele.

Para configurar um catálogo default diferente para um workspace:

  1. log in em seu workspace como administrador do workspace.

  2. Clique no seu nome de usuário na barra superior do workspace e selecione Configurações de administrador no menu suspenso.

  3. Clique em Advanced tab.

  4. No catálogodefault para a linha workspace, digite o nome do catálogo e clique em Save (Salvar).

Reinicie o armazém SQL e clusters para que a alteração tenha efeito. Todos os armazéns SQL e clusters novos e reiniciados usarão esse catálogo como o workspace default.

O senhor também pode substituir o catálogo default por um cluster específico, definindo a seguinte configuração Spark no cluster. Essa abordagem não está disponível para o armazém SQL:

spark.databricks.sql.initial.catalog.name

Para obter instruções, consulte Configuração do Spark.

Exibir o catálogo padrão atual

Para obter o catálogo default atual do seu workspace, o senhor pode usar uma instrução SQL em uma consulta do Editor Notebook ou SQL. Um administrador do workspace pode obter o catálogo do default usando a interface do usuário de configurações do administrador.

  1. log in em seu workspace como administrador do workspace.

  2. Clique no seu nome de usuário na barra superior do workspace e selecione Configurações de administrador no menu suspenso.

  3. Clique em Advanced tab.

  4. No catálogodefault para a linha workspace, view o nome do catálogo.

Execute o seguinte comando em uma consulta do Notebook ou do SQL Editor que esteja sendo executada em um SQL warehouse ou em um Unity Catalog compatível com cluster. O catálogo workspace default é retornado desde que nenhuma declaração USE CATALOG ou configuração JDBC tenha sido definida na sessão e desde que nenhuma configuração spark.databricks.sql.initial.catalog.namespace tenha sido definida para cluster.

SELECT current_catalog();