Configurar e gerenciar o Catálogo do Unity
Este artigo explica como configurar e usar o Catálogo do Unity para gerenciar dados em seu workspace do Azure Databricks. Destina-se principalmente a administradores de workspace que estão usando o Catálogo do Unity pela primeira vez.
Ao final deste artigo, você terá:
- Um workspace que esteja habilitado para o Catálogo do Unity.
- Computação que tem acesso ao Catálogo do Unity.
- Usuários com permissão para acessar e criar objetos no Catálogo do Unity.
Talvez você também queira revisar outros artigos introdutórios:
- Para um rápido passo a passo de como criar uma tabela e conceder permissões no Unity Catalog, veja Tutorial: Crie sua primeira tabela e conceda privilégios.
- Para obter os principais conceitos do Catálogo do Unity e uma introdução ao funcionamento do Catálogo do Unity, consulte O que é o Catálogo do Unity?.
- Para saber a melhor maneira de usar o Catálogo do Unity para atender às suas necessidades de governança de dados, consulte Melhores práticas do Catálogo do Unity.
Observação
Se você quiser atualizar um workspace não Unity-Catalog existente para o Catálogo do Unity, poderá se beneficiar do uso do UCX, um projeto do Databricks Labs que fornece um conjunto de fluxos de trabalho e utilitários para atualizar identidades, permissões e tabelas para o Catálogo do Unity. Consulte Usar os utilitários UCX para atualizar seu workspace para o Catálogo do Unity.
Visão geral da habilitação do Catálogo do Unity
Para usar o Catálogo do Unity, seus workspaces do Azure Databricks devem estar habilitados para o Catálogo do Unity, o que significa que os workspaces estarão anexados a um metastore do Catálogo do Unity, o contêiner de nível superior para metadados do Catálogo do Unity.
A maneira como os administradores configuram o Catálogo do Unity dependerá de o workspace ter sido habilitado automaticamente para o Catálogo do Unity ou requerer habilitação manual.
Habilitação automática do Catálogo do Unity
O Databricks começou a habilitar novos workspaces para o Catálogo do Unity automaticamente em 9 de novembro de 2023, com uma distribuição gradual entre contas. Os workspaces habilitados têm automaticamente as seguintes propriedades:
Um metastore do Catálogo do Unity provisionado automaticamente (a menos que já exista um metastore do Catálogo do Unity para a região do workspace e o metastore esteja habilitado para atribuição automática de workspace).
Privilégios padrão para administradores de workspace, como a capacidade de criar um catálogo ou uma conexão de banco de dados externo.
Nenhum administrador de metastore (a menos que um metastore existente do Catálogo do Unity tenha sido usado e um administrador de metastore já tenha sido atribuído).
Nenhum armazenamento no nível do metastore para tabelas gerenciadas e volumes gerenciados (a menos que um metastore existente do Catálogo do Unity com armazenamento no nível do metastore tenha sido usado).
Um catálogo do workspace, que, quando provisionado originalmente, tem o nome do workspace.
Todos os usuários em seu workspace podem criar ativos no esquema
default
neste catálogo. Por padrão, esse catálogo é limitado ao workspace, o que significa que só poderá ser acessado por meio do workspace. O provisionamento automático do catálogo de workspaces na criação do workspace está sendo distribuído gradualmente entre contas.
Essas configurações padrão funcionarão bem para a maioria dos workspaces, mas todas podem ser modificadas por um administrador de workspace ou administrador de conta. Por exemplo, um administrador de conta pode atribuir um administrador de metastore e criar um armazenamento no nível do metastore, e um administrador de workspace pode modificar o nome e o acesso do catálogo do workspace.
E se meu workspace não tiver sido habilitado automaticamente para o Catálogo do Unity?
Se o workspace não tiver sido habilitado automaticamente para o Catálogo do Unity, um administrador de conta ou administrador de metastore deverá anexar manualmente o workspace a um metastore do Catálogo do Unity na mesma região. Se nenhum metastore do Catálogo do Unity existir na região, um administrador de conta deverá criar um. Para obter instruções, confira Criar um metastore do Catálogo do Unity.
Como faço para saber se o meu workspace foi habilitado para o Catálogo do Unity?
Para confirmar se o workspace está habilitado para o Catálogo do Unity, peça a um administrador de workspace ou administrador de conta do Azure Databricks para verificar isso para você. Confira também Etapa 1: confirme se o workspace está habilitado para o Catálogo do Unity.
Como saber se meu espaço de trabalho inclui um catálogo de espaço de trabalho?
Alguns novos workspaces têm um catálogo de workspaces, que, quando provisionado originalmente, tem o nome do workspace. Para determinar se o seu espaço de trabalho tem um, clique em Catálogo na barra lateral para abrir o Explorador de Catálogos e procure um catálogo que use o nome do seu espaço de trabalho como o nome do catálogo.
Observação
O catálogo do workspace é como qualquer outro catálogo no Catálogo do Unity: um administrador de workspace pode alterar seu nome ou sua propriedade ou até mesmo excluí-lo. No entanto, imediatamente após a criação do workspace, ele tem o nome do workspace
Antes de começar
Antes de começar as tarefas descritas neste artigo, você deve se familiarizar com os conceitos básicos do Catálogo do Unity, incluindo metastores, funções de administrador e armazenamento gerenciado. Veja O que é o Catálogo do Unity?.
Você também deve confirmar que atende aos seguintes requisitos:
Seu workspace do Azure Databricks precisa estar no plano Premium.
As seguintes funções e privilégios, que dependem do status do workspace:
Administrador do workspace: se o workspace foi habilitado para o Catálogo do Unity automaticamente quando ele foi criado, você deve ser um administrador do workspace para concluir as tarefas necessárias.
Administrador da conta: se o workspace ainda não estiver habilitado para o Catálogo do Unity, um administrador de conta deverá anexar o workspace ao metastore.
Se não houver nenhum metastore do Catálogo do Unity na mesma região que o workspace, um administrador de conta também deverá criar o metastore do Catálogo do Unity.
As instruções para determinar se existe um metastore para a região do seu workspace, juntamente com as instruções para criar um metastore, seguem neste artigo.
Consulte Privilégios de administrador no Catálogo do Unity e Habilitação automática do Catálogo do Unity.
Etapa 1: confirmar se o seu workspace está habilitado para o Catálogo do Unity
Nesta etapa, você determina se o workspace já está habilitado para o Catálogo do Unity, em que a habilitação é definida como tendo um metastore do Catálogo do Unity anexado ao workspace. Se o workspace não estiver habilitado para o Catálogo do Unity, você deverá habilitar o seu workspace para o Catálogo do Unity manualmente. Confira Próximas etapas se o workspace não estiver habilitado para o Catálogo do Unity.
Para confirmar, siga um dos procedimentos a seguir.
Usar o console da conta para confirmar a habilitação do Catálogo do Unity
- Como administrador de conta do Azure Databricks, entre no console da conta.
- Clique em Espaços de Trabalho.
- Localize o seu workspace e verifique a coluna Metastore. Se um nome de metastore estiver presente, o seu workspace se encontra anexado a um metastore do Catálogo do Unity e, portanto, está habilitado para o Catálogo do Unity.
Executar uma consulta SQL para confirmar a habilitação para o Catálogo do Unity
Execute a consulta SQL a seguir no editor de consultas SQL ou em um notebook anexado a um cluster que usa o modo de acesso compartilhado ou de usuário único. Consulte Modos de acesso. Nenhuma função de administrador é necessária.
SELECT CURRENT_METASTORE();
Se a consulta retornar uma ID de metastore como a seguinte, o workspace será anexado a um metastore do Catálogo do Unity e, portanto, habilitado para o Catálogo do Unity.
Próximas etapas se o workspace não estiver habilitado para o Catálogo do Unity
Se o workspace não estiver habilitado para o Catálogo do Unity (anexado a um metastore), a próxima etapa dependerá de você ter um metastore do Catálogo do Unity definido para sua região de workspace:
- Se sua conta já tiver um metastore do Catálogo do Unity definido para a região do seu workspace, você poderá simplesmente anexar seu workspace ao metastore existente. Vá para Habilitar o seu workspace para o Catálogo do Unity.
- Se não houver nenhum metastore do Catálogo do Unity definido para a região do seu workspace, você deverá criar um metastore e anexar o workspace. Vá para Criar um metastore do Catálogo do Unity.
Quando o workspace estiver habilitado para o Catálogo do Unity, vá para a próxima etapa.
Etapa 2: adicionar usuários e atribuir a função de administrador do workspace
O usuário que cria o workspace é adicionado automaticamente como um usuário do workspace com a função de administrador do workspace (ou seja, um usuário no grupo local do workspace admins
). Como administrador do workspace, você pode adicionar e convidar usuários para o workspace, pode atribuir a função de administrador do workspace a outros usuários e pode criar entidades de serviço e grupos.
Os administradores de conta também têm a capacidade de adicionar usuários, entidades de serviço e grupos ao seu workspace. Eles podem conceder as funções de administrador de conta e administrador de metastore.
Para obter detalhes, consulte Gerenciar usuários.
(Recomendado) Sincronizar identidades no nível de conta do Microsoft Entra ID
Pode ser conveniente gerenciar o acesso do usuário ao Azure Databricks configurando o provisionamento do Microsoft Entra ID. Para obter instruções completas, confira Sincronizar usuários e grupos do Microsoft Entra ID.
Etapa 3: criar clusters ou SQL warehouses que os usuários podem usar para executar consultas e criar objetos
Para executar cargas de trabalho do Catálogo do Unity, os recursos de computação devem estar em conformidade com determinados requisitos de segurança. Recursos de computação que não estejam em conformidade não podem acessar dados ou outros objetos no Catálogo do Unity. Os SQL warehouses sempre estão em conformidade com os requisitos do Catálogo do Unity, mas alguns modos de acesso de cluster não. Consulte Modos de acesso.
Como administrador do workspace, você pode optar por tornar a criação de computação restrita aos administradores ou permitir que os usuários criem seus próprios clusters e SQL warehouses. Você também pode criar políticas de cluster que permitem que os usuários criem seus próprios clusters, usando especificações em conformidade com o Catálogo do Unity impostas por você. Confira Permissões de computação e Criar e gerenciar políticas de computação.
Etapa 4: conceder privilégios aos usuários
Para criar objetos e acessá-los em catálogos e esquemas do Catálogo do Unity, um usuário deve ter permissão para fazer isso. Esta seção descreve os privilégios de usuário e administrador concedidos em alguns workspaces por padrão e descreve como conceder privilégios adicionais.
Privilégios de usuário padrão
Alguns workspaces têm privilégios de usuário padrão (não administrador) ao iniciar:
Se o workspace for iniciado com um catálogo de workspaces provisionado automaticamente, todos os usuários do workspace poderão criar objetos no esquema
default
do catálogo de workspaces.Para saber como determinar se seu workspace tem um catálogo de workspaces, consulte Como saber se meu workspace inclui um catálogo de workspaces?.
Se o workspace tiver sido habilitado manualmente para o Catálogo do Unity, ele terá um catálogo
main
provisionado automaticamente.Os usuários do workspace têm o privilégio
USE CATALOG
no catálogomain
, que não concede a capacidade de criar ou selecionar de nenhum objeto no catálogo, mas é um pré-requisito para trabalhar com objetos no catálogo. O usuário que criou o metastore é proprietário do catálogomain
por padrão e pode transferir a propriedade e conceder acesso a outros usuários.Se o armazenamento metastore for adicionado após a criação do metastore, nenhum catálogo
main
será provisionado.
Outros workspaces não têm catálogos criados por padrão e nenhum privilégio de usuário não de administrador habilitado por padrão. Um administrador de workspace deve criar o primeiro catálogo e conceder aos usuários acesso a ele e aos objetos nele. Vá para a Etapa 5: criar novos catálogos e esquemas antes de concluir as etapas nesta seção.
Privilégios de administrador padrão
Alguns workspaces têm privilégios de administrador de workspace padrão ao iniciar:
- Se o seu workspace tiver sido habilitado automaticamente para o Catálogo do Unity:
- Os administradores do workspace podem criar novos catálogos e objetos em novos catálogos e conceder acesso a eles.
- Não há nenhum administrador do metastore por padrão.
- Os administradores do workspace possuem o catálogo de workspaces (se houver um) e podem conceder acesso a esse catálogo e a quaisquer objetos nesse catálogo.
- Se o seu workspace tiver sido habilitado manualmente para o Catálogo do Unity:
- Os administradores do workspace não têm privilégios especiais do Catálogo do Unity por padrão.
- Os administradores do metastore devem existir e podem criar qualquer objeto do Catálogo do Unity e se apropriar de qualquer objeto do Catálogo do Unity.
Para obter uma lista de privilégios de objeto adicionais concedidos a administradores de workspaces em workspaces do Catálogo do Unity habilitados automaticamente, consulte Privilégios de administrador do workspace quando os workspaces estiverem habilitados automaticamente para o Catálogo do Unity.
Conceder privilégios
Para acesso a objetos diferentes daqueles listados nas seções anteriores, um usuário privilegiado deve conceder esse acesso.
Por exemplo, para conceder a um grupo a capacidade de criar novos esquemas em my-catalog
, o proprietário do catálogo pode executar o seguinte no SQL Editor ou em um notebook:
GRANT CREATE SCHEMA ON my-catalog TO `data-consumers`;
Se o workspace tiver sido habilitado automaticamente para o Catálogo do Unity, o administrador do workspace será proprietário do catálogo do workspace e poderá conceder a capacidade de criar novos esquemas:
GRANT CREATE SCHEMA ON <workspace-catalog> TO `data-consumers`;
Você também pode conceder e revogar privilégios usando o Explorador de Catálogos.
Importante
Você não pode conceder privilégios aos grupos de users
local do workspace ou grupos admins
. Para conceder privilégios em grupos, eles devem ser grupos de nível de conta.
Para obter detalhes sobre como gerenciar privilégios no Catálogo do Unity, consulte Gerenciar privilégios no Catálogo do Unity.
Etapa 5: criar novos catálogos e esquemas
Para começar a usar o Catálogo do Unity, você deve ter pelo menos um catálogo definido. Os catálogos são a unidade primária de isolamento de dados e organização no Catálogo do Unity. Todos os esquemas e tabelas residem em catálogos, assim como volumes, exibições e modelos.
Alguns workspaces não têm catálogo provisionado automaticamente. Para usar o Catálogo do Unity, um administrador de workspace deve criar o primeiro catálogo para esses workspaces.
Outros workspaces têm acesso a um catálogo pré-provisionado que os seus usuários podem acessar para começar (o catálogo do workspace ou o catálogo main
, dependendo de como seu workspace foi habilitado para o Catálogo do Unity). À medida que você adiciona mais dados e ativos de IA ao Azure Databricks, poderá criar catálogos adicionais para agrupar esses ativos de uma maneira que facilite a governança lógica dos dados.
Para obter recomendações sobre a melhor maneira de usar catálogos e esquemas para organizar seus dados e ativos de IA, consulte Melhores práticas do Catálogo do Unity.
Como administrador de metastore, administrador de workspace (somente workspaces habilitados automaticamente) ou outro usuário com o privilégio CREATE CATALOG
, você poderá criar novos catálogos no metastore. Ao fazer isso, você deverá:
Criar armazenamento gerenciado para o novo catálogo.
O armazenamento gerenciado é um local de armazenamento dedicado em sua conta do Azure para tabelas gerenciadas e volumes gerenciados. Você pode atribuir o armazenamento gerenciado ao metastore, aos catálogos e aos esquemas. Quando um usuário cria uma tabela, os dados são armazenados no local de armazenamento mais baixo na hierarquia. Por exemplo, se um local de armazenamento for definido para o metastore e o catálogo, mas não para o esquema, os dados serão armazenados no local definido para o catálogo.
O Databricks recomenda que você atribua armazenamento gerenciado no nível do catálogo, pois os catálogos normalmente representam unidades lógicas de isolamento de dados. Se você se sentir confortável com os dados em vários catálogos que compartilham o mesmo local de armazenamento, poderá usar como padrão o local de armazenamento no nível do metastore. Se o workspace tiver sido habilitado automaticamente para o Catálogo do Unity, não haverá armazenamento no nível do metastore por padrão. Um administrador de conta tem a opção de configurar o armazenamento no nível do metastore. Consulte Especificar um local de armazenamento gerenciado no Catálogo do Unity e Adicionar armazenamento gerenciado a um metastore existente.
Atribuir armazenamento gerenciado a um catálogo requer que você crie:
- Uma credencial de armazenamento.
- Um local externo que faça referência a essa credencial de armazenamento.
Para obter uma introdução a esses objetos e instruções para criá-los, consulte Conectar-se ao armazenamento de objetos e serviços na nuvem usando o Catálogo do Unity.
Associe o novo catálogo ao seu workspace se você quiser limitar o acesso de outros workspaces que compartilham o mesmo metastore.
Consulte Limitar acesso do catálogo a espaços de trabalho específicos.
Conceda privilégios no catálogo.
Para obter instruções detalhadas, consulte Criar catálogos.
Exemplo de criação de catálogo
O exemplo a seguir mostra a criação de um catálogo com armazenamento gerenciado, seguido pela concessão do privilégio SELECT
no catálogo:
CREATE CATALOG IF NOT EXISTS mycatalog
MANAGED LOCATION 'abfss://mycontainer@<myaccount.dfs.core.windows.net//depts/finance';
GRANT SELECT ON mycatalog TO `finance-team`;
Para obter mais exemplos, inclusive instruções para criar catálogos usando o Explorador de Catálogos, consulte Criar catálogos.
Criar um esquema
Os esquemas representam agrupamentos mais granulares (como departamentos ou projetos, por exemplo) do que catálogos. Todas as tabelas e outros objetos do Catálogo do Unity no catálogo estão contidos em esquemas. Como proprietário de um novo catálogo, convém criar os esquemas no catálogo. Mas talvez você queira delegar a capacidade de criar esquemas para outros usuários, dando a eles o privilégio CREATE SCHEMA
no catálogo.
Para obter instruções detalhadas, consulte Criar esquemas.
(opcional) Atribuir a função de administrador de metastore
Se o workspace tiver sido habilitado automaticamente para o Catálogo do Unity, nenhuma função de administrador de metastore será atribuída por padrão. Os administradores de metastore têm alguns privilégios que os administradores do workspace não têm.
Talvez você queira atribuir um administrador de metastore se precisar:
Alterar a propriedade de catálogos depois que alguém deixar a empresa.
Gerenciar e delegar permissões no script init e na lista de permitidos jar.
Delegar a capacidade de criar catálogos e outras permissões de nível superior a administradores que não sejam do workspace.
Receber dados compartilhados por meio de Compartilhamento Delta.
Adicione o armazenamento gerenciado ao metastore, se ele não tiver nenhum. Confira Adicionar armazenamento gerenciado a um metastore existente.
Para obter informações detalhadas sobre a função de administrador de metastore e instruções para atribuí-la, consulte Atribuir um administrador de metastore.
Atualizar tabelas em seu metastore do Hive para tabelas do Catálogo do Unity
Se o workspace estava em serviço antes de ser habilitado para o Catálogo do Unity, ele provavelmente tem um metastore do Hive que contém dados que serão interessantes para você usar. O Databricks recomenda que você migre as tabelas gerenciadas pelo metastore do Hive para o metastore do Catálogo do Unity.
Consulte Atualizar tabelas e exibições do Hive para o Catálogo do Unity e Usar os utilitários UCX para atualizar o espaço de trabalho para o Catálogo do Unity.
(opcional) Continue trabalhando com o metastore do Hive
Se o workspace tiver um metastore do Hive que contenha dados que você deseja continuar a usar e optar por não seguir a recomendação para atualizar as tabelas gerenciadas pelo metastore do Hive para o metastore do Catálogo do Unity, você poderá continuar a trabalhar com dados no metastore do Hive junto com os dados no metastore do Catálogo do Unity.
O metastore do Hive é representado em interfaces do Catálogo do Unity como um catálogo chamado hive_metastore
. Para continuar trabalhando com dados em seu metastore do Hive sem precisar atualizar consultas para especificar o catálogo de hive_metastore
, você poderá definir o catálogo padrão do workspace como hive_metastore
. Confira Gerenciar o catálogo padrão.
Dependendo de quando o workspace foi habilitado para o Catálogo do Unity, o catálogo padrão já poderá estar hive_metastore
.
(Opcional) Criar armazenamento no nível do metastore
Embora o Databricks recomende que você crie um local de armazenamento gerenciado separado para cada catálogo em seu metastore (e você pode fazer o mesmo para esquemas), você pode optar por criar um local gerenciado no nível do metastore e usá-lo como armazenamento para vários catálogos e esquemas.
Se você quiser um armazenamento no nível do metastore, também deverá atribuir um administrador do metastore. Confira (Opcional) Atribuir a função de administrador do metastore.
O armazenamento no nível do Metastore será necessário somente se o seguinte for verdadeiro:
- Você deseja compartilhar notebooks usando o Delta Sharing de Databricks para Databricks.
- Você usa uma integração de produtos de parceiros do Databricks que depende de locais de preparo pessoais (preteridos).
Para obter mais informações sobre a hierarquia de locais de armazenamento gerenciado, confira Os dados estão separados fisicamente no armazenamento.
Para saber como adicionar armazenamento no nível do metastore a metastores que não têm nenhum, confira Adicionar armazenamento gerenciado a um metastore existente.
Observação
A maioria dos workspaces habilitados para o Catálogo do Unity antes de 9 de novembro de 2023 tem uma raiz de armazenamento no nível do metastore.
Próximas etapas
- Execute um tutorial rápido para criar sua primeira tabela no Catálogo Unity: Tutorial: Crie sua primeira tabela e conceda privilégios
- Saiba mais sobre o Catálogo do Unity: O que é o Catálogo do Unity?
- Conheça as melhores práticas para usar o Catálogo do Unity: Melhores práticas do Catálogo do Unity
- Saiba como conceder e revogar privilégios: Gerenciar privilégios no Catálogo do Unity
- Saiba como criar tabelas
- Saiba como atualizar tabelas do Hive para o Catálogo do Unity
- Instalar a CLI do Dtabricks: O que é a CLI do Databricks?