Compartilhar via


Introdução ao Catálogo do Unity

Este artigo explica como começar a 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. Para configurar o Unity Catalog usando o provedor Databricks Terraform, veja Automatizar a configuração do Unity Catalog usando o Terraform.

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.

Você também pode examinar outros artigos introdutórios:

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.

Como começar a usar o Catálogo do Unity?

O caminho que você toma para começar a usar o Catálogo do Unity depende do seu espaço de trabalho.

Para novos espaços de trabalho:

Na maioria das contas, o Catálogo do Unity é habilitado por padrão quando você cria um espaço de trabalho. Você pode começar a usar o Catálogo do Unity com as configurações padrão. No entanto, há configurações opcionais que talvez você queira habilitar. Esta página fornece uma visão geral de ambos.

Para espaços de trabalho existentes:

  1. Certifique-se de que seu workspace está habilitado para o Unity Catalog

    Se o workspace for anterior à habilitação automática do Catálogo Unity, um administrador de conta deverá habilitar o Catálogo Unity. A habilitação do Unity Catalog basicamente significa criar um metastore do Unity Catalog na sua região de espaço de trabalho e confirmar que todos os grupos criados no espaço de trabalho são convertidos em grupos de nível de conta.

  2. Atualize as tabelas registradas no metastore do Hive local no espaço de trabalho para o Catálogo do Unity.

    Você pode atualizar gradualmente federando as tabelas registradas no metastore do Hive para que elas possam ser governadas pelo Unity Catalog e acessadas usando interfaces e sintaxe do Unity Catalog.

    Consulte Atualizar um espaço de trabalho do Azure Databricks para o Catálogo do Unity.

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 fosse automaticamente habilitado para o Unity Catalog?

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 workspace tem um, clique no ícone Dados.Cataloge na barra lateral para abrir o Catalog Explorer e pesquise um catálogo que use o nome do workspace 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. Consulte Atualizar um espaço de trabalho do Azure Databricks 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

  1. Como administrador de conta do Azure Databricks, entre no console da conta.
  2. Clique no ícone Workspaces.Workspaces.
  3. 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 seguinte consulta SQL no editor de consultas SQL ou em um notebook anexado a um recurso de computação habilitado para o Unity Catalog. 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.

Saída do metastore atual

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), siga as instruções em Atualizar um workspace do Azure Databricks para o 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.

Pode ser conveniente gerenciar o acesso do usuário ao Azure Databricks configurando o provisionamento do Microsoft Entra ID. Para obter instruções completas, consulte Sincronizar usuários e grupos do Microsoft Entra ID usando SCIM.

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 do catálogo de default workspaces.

    Para saber como determinar se seu workspace tem um catálogo de workspaces, veja 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 USE CATALOG privilégio no main catálogo, que não concede a capacidade de criar ou selecionar de qualquer objeto no catálogo, mas é um pré-requisito para trabalhar com qualquer objeto no catálogo. O usuário que criou o metastore é proprietário do catálogo main 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á:

  1. 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 de nuvem usando o Catálogo do Unity.

  2. 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.

  3. 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 do 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:

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 um espaço de trabalho do Azure Databricks para o Catálogo do Unity.

(Opcional) Federar-se ao seu metastore do Hive para continuar a trabalhar com ele

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 todas 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 federando-o como um catálogo estrangeiro no Catálogo do Unity. A federação do metastore do Hive pode ser uma etapa útil no caminho de migração para o Unity Catalog. Ele permite a migração incremental sem adaptação de código, com algumas de suas cargas de trabalho continuando a usar dados registrados em seu metastore do Hive enquanto outras são migradas.

Confira Federação de metastore do Hive: habilite o Unity Catalog para gerenciar tabelas registradas em um metastore do Hive.

(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 você usar uma integração de produtos de parceiro do Databricks que dependa de locais de preparação pessoal (preterido).

Para obter mais informações sobre a hierarquia de locais de armazenamento gerenciado, consulte Hierarquia de localização de armazenamento gerenciado.

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 Unity Catalog antes de 9 de novembro de 2023 possui, por padrão, uma raiz de armazenamento no nível do metastore.

Próximas etapas