Configurar e gerenciar Unity Catalog

Este artigo explica como configurar e usar o Unity Catalog para gerenciar dados em seu workspace do Databricks. Destina-se principalmente a administradores workspace que estão usando o Unity Catalog pela primeira vez.

Ao final deste artigo você terá:

  • Um workspace habilitado para o Unity Catalog.

  • compute que tem acesso ao Unity Catalog.

  • Usuários com permissão para acessar e criar objetos no Unity Catalog.

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

Observação

Se o senhor quiser fazer upgrade de um non-Unity-Catalog existente workspace para Unity Catalog, poderá se beneficiar do uso do UCX, um projeto do Databricks Labs que fornece um conjunto de fluxo de trabalho e utilidades para fazer upgrade de identidades, permissões e tabelas para Unity Catalog. Consulte Use as utilidades do UCX para atualizar seu workspace para Unity Catalog.

Visão geral da ativação do Unity Catalog

Para usar Unity Catalog, seu workspace do Databricks deve estar habilitado para Unity Catalog, o que significa que o workspace está anexado a um metastore Unity Catalog , o contêiner de nível superior para metadados Unity Catalog .

A maneira como os administradores configuram o Unity Catalog depende se o workspace foi habilitado automaticamente para o Unity Catalog ou requer ativação manual.

Ativação automática do Unity Catalog

O Databricks começou a habilitar o novo workspace para o Unity Catalog automaticamente em 8 de novembro de 2023, com uma implementação gradual em todas account. workspace que foram ativados automaticamente têm as seguintes propriedades:

  • Um metastore Unity Catalog com provisionamento automático (a menos que já exista um metastore Unity Catalog para a região workspace ).

  • privilégios default para administradores de espaço de trabalho, como a capacidade de criar um catálogo ou uma conexão de banco de dados externa.

  • Nenhum administrador de metastore (a menos que um metastore existente do Unity Catalog tenha sido usado e um administrador de metastore já tenha sido atribuído).

  • Nenhum armazenamento em nível de metastore para gerenciar tabelas e gerenciar volumes (a menos que um metastore existente do Unity Catalog com armazenamento em nível de metastore tenha sido usado).

  • Um catálogoworkspace , que, quando provisionado originalmente, recebe o nome do seu workspace.

    Todos os usuários no seu workspace podem criar ativo no esquema default deste catálogo. Por default, esse catálogo está vinculado à sua workspace, o que significa que ele só pode ser acessado por meio da sua workspace. O provisionamento automático do catálogo workspace na criação workspace está sendo implementado gradualmente em todas account.

    Seu workspace obterá o catálogo workspace somente se o criador workspace fornecer uma IAM role e um local de armazenamento apropriados durante o provisionamento workspace . Se você não tiver esse catálogo, poderá criar um catálogo semelhante seguindo as instruções em Criar e gerenciar catálogos.

Essas configurações default funcionarão bem para a maioria dos workspaces, mas todas podem ser modificadas por um administrador do workspace ou administrador account . Por exemplo, um administrador account pode atribuir um administrador de metastore e criar armazenamento ao nível da metastore, e um administrador workspace pode modificar o nome e o acesso ao catálogo workspace .

E se meu espaço de trabalho não tiver sido habilitado automaticamente para o Unity Catalog?

Se o seu workspace não tiver sido ativado automaticamente para Unity Catalog , um administrador account ou administrador de metastore deverá anexar manualmente o workspace a um metastore Unity Catalog na mesma região. Se não existir nenhum metastore Unity Catalog na região, um administrador account deverá criar um. Para obter instruções, consulte Criar um metastore Unity Catalog .

Como posso saber se meu espaço de trabalho foi habilitado para o Unity Catalog?

Para confirmar se o seu workspace está habilitado para Unity Catalog, peça a um administrador workspace ou administrador account do Databricks para verificar para você. Veja também o passo 1: Confirme se seu espaço de trabalho está habilitado para o Unity Catalog.

Como posso saber se meu espaço de trabalho inclui um catálogo de espaços de trabalho ?

Alguns novos workspace possuem um catálogoworkspace , que, quando originalmente provisionado, recebe o nome do seu workspace. Para determinar se seu workspace tem um, clique em Ícone de catálogo Catálogo na barra lateral para abrir o Catalog Explorer e procure um catálogo que use o nome do seu workspace como nome do catálogo.

Observação

O catálogo workspace é como qualquer outro catálogo no Unity Catalog: um administrador workspace pode alterar seu nome, alterar sua propriedade ou até mesmo excluí-lo. No entanto, imediatamente após a criação do workspace , ele leva o nome do workspace

Antes de começar

Antes de iniciar a tarefa descrita neste artigo, você deve se familiarizar com os conceitos básicos do Unity Catalog, incluindo metastores, funções administrativas e gerenciamento de armazenamento. Consulte O que é Unity Catalog?.

Você também deve confirmar se atende aos seguintes requisitos:

  • Um workspace Databricks no plano Premium ou acima.

  • As seguintes funções e privilégios, que dependem do status do seu workspace:

    • administrador workspace : se o seu workspace foi ativado automaticamente para o Unity Catalog quando foi criado, você deverá ser um administrador workspace para concluir a tarefa necessária.

    • administrador account : se o seu workspace ainda não estiver habilitado para o Unity Catalog, um administrador account deverá anexar o workspace ao metastore.

      Se não houver metastore Unity Catalog na mesma região que o workspace, um administrador account também deverá criar o metastore Unity Catalog .

      Instruções para determinar se existe um metastore para a região do seu workspace , juntamente com instruções para criar um metastore, seguem nestes artigos.

    Consulte Privilégios de administrador no Unity Catalog e Ativação automática do Unity Catalog.

o passo 1: Confirme se seu espaço de trabalho está habilitado para o Unity Catalog

Nesta etapa, você determina se seu workspace já está habilitado para Unity Catalog, onde a ativação é definida como ter um metastore Unity Catalog anexado ao workspace. Se o seu workspace não estiver habilitado para o Unity Catalog, você deverá habilitá workspace lo manualmente para o Unity Catalog. Consulte os próximos passos se o seu workspace não estiver habilitado para o Unity Catalog.

Para confirmar, siga um destes procedimentos.

Use o console da conta para confirmar a ativação do Unity Catalog

  1. Como administrador account do Databricks, logs no console account .

  2. Clique ícone workspace Espaços de trabalho.

  3. Encontre seu workspace e verifique a coluna Metastore . Se um nome de metastore estiver presente, seu workspace será anexado a um metastore Unity Catalog e, portanto, habilitado para Unity Catalog.

execução de uma consulta SQL para confirmar a ativação do Unity Catalog

Execute a consulta SQL a seguir no editor de consultas SQL ou em um Notebook anexado a clusters que usam 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 um ID de metastore como o seguinte, seu workspace será anexado a um metastore Unity Catalog e, portanto, habilitado para Unity Catalog.

Saída atual do metastore

Próximos passos se o seu espaço de trabalho não estiver habilitado para o Unity Catalog

Se o seu workspace não estiver habilitado para Unity Catalog (anexado a um metastore), o próximo passo depende se você já tem ou não um metastore Unity Catalog definido para a região do seu workspace :

Quando seu workspace estiver habilitado para o Unity Catalog, vá para a próxima etapa.

o passo 2: Adicionar usuários e atribuir a função de administrador do espaço de trabalho

O usuário que cria o workspace é adicionado automaticamente como um usuário workspace com a função de administrador workspace (ou seja, um usuário no grupo admins workspace-local). Como administrador do espaço de trabalho, você pode adicionar e convidar usuários para o espaço de trabalho, atribuir a função de administrador do espaço de trabalho a outros usuários e criar entidades de serviço e grupos.

os administradores account também podem adicionar usuários, entidades de serviço e grupos ao seu espaço de trabalho. Eles podem conceder funções de administrador account e administrador do metastore.

Para obter detalhes, consulte gerenciar usuários.

o passo 3: Crie clusters ou SQL warehouse que os usuários possam usar para executar query e criar objetos

Para executar cargas de trabalho do Unity Catalog, o recurso compute deve atender a determinados requisitos de segurança. O recurso compute não compatível não pode acessar dados ou outros objetos no Unity Catalog. SQL warehouse sempre atende aos requisitos Unity Catalog , mas alguns modos de acesso clusters não. Consulte Modos de acesso.

Como administrador do workspace, o senhor pode optar por tornar a criação do compute restrita aos administradores ou permitir que os usuários criem seus próprios armazéns e clusters de SQL. Também é possível criar uma política de cluster que permita aos usuários criar seus próprios clusters, usando especificações compatíveis com o Unity Catalog que o senhor impõe. Consulte compute permissions (Permissões ) e Create and manage compute policies (Criar e gerenciar políticas de computação).

o passo 4: Conceder privilégios aos usuários

Para criar objetos e acessá-los em catálogos e esquemas do Unity Catalog, 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 workspace por default e descreve como conceder privilégios adicionais.

Privilégios de usuário padrão

Alguns workspace têm privilégios de usuário default (não administrador) na inicialização:

  • Se seu espaço de trabalho for iniciado com um catálogo de espaço de trabalho de provisionamento automático, todos os usuários do espaço de trabalho poderão criar objetos no esquema default do catálogo de espaço de trabalho.

    Para saber como determinar se o seu espaço de trabalho tem um catálogo de espaços de trabalho, consulte Como posso saber se meu espaço de trabalho inclui um catálogo de espaços de trabalho?.

  • Se o seu workspace foi habilitado para Unity Catalog manualmente, ele terá um provisionamento de catálogo main automaticamente.

    os usuários workspace têm o privilégio USE CATALOG no catálogo main, o que não concede a capacidade de criar ou selecionar qualquer objeto no catálogo, mas é um pré-requisito para trabalhar com qualquer objeto no catálogo. O usuário que criou o metastore possui o catálogo main por default e pode transferir a propriedade e conceder acesso a outros usuários.

    Se o armazenamento do metastore for adicionado após a criação do metastore, nenhum catálogo main será provisionado.

Outros workspace não têm catálogos criados por default e nenhum privilégio de usuário não administrador habilitado por default. Um administrador workspace deve criar o primeiro catálogo e conceder aos usuários acesso a ele e aos objetos nele contidos. Vá para a etapa 5: Crie novos catálogos e esquemas antes de concluir as etapas desta seção.

Privilégios de administrador padrão

Alguns workspace têm default workspace privilégios de administrador na inicialização:

  • Se o seu workspace foi habilitado para o Unity Catalog automaticamente:

    • Os administradores do workspace podem criar novos catálogos e objetos em novos catálogos e conceder acesso a eles.

    • Não há administrador de metastore por default.

    • os administradores workspace são proprietários do catálogo workspace (se houver) e podem conceder acesso a esse catálogo e a quaisquer objetos nele.

  • Se o seu workspace foi habilitado manualmente para o Unity Catalog:

    • Os administradores do espaço de trabalho não têm privilégios especiais do Unity Catalog por default.

    • Os administradores do metastore devem existir e podem criar qualquer objeto Unity Catalog e podem apropriar-se de qualquer objeto Unity Catalog .

Para obter uma lista de privilégios de objeto adicionais concedidos aos administradores do espaço de trabalho em espaços de trabalho do Unity Catalog habilitados automaticamente, consulte Privilégios de administrador do espaço de trabalho quando os espaços de trabalho são habilitados automaticamente para o Unity Catalog.

Conceder privilégios

Para acesso a objetos diferentes dos 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 Editor SQL ou em um Notebook:

GRANT CREATE SCHEMA ON my-catalog TO `data-consumers`;

Se o seu workspace tiver sido habilitado automaticamente para Unity Catalog , o administrador workspace será proprietário do catálogo 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 Catalog Explorer.

Importante

Você não pode conceder privilégios aos grupos workspace-local users ou admins. Para conceder privilégios a grupos, eles devem ser grupos no nível account .

Para obter detalhes sobre o gerenciamento de privilégios no Unity Catalog, consulte gerenciar privilégios no Unity Catalog.

o passo 5: Crie novos catálogos e esquemas

Para começar a usar o Unity Catalog, você deve ter pelo menos um catálogo definido. Os catálogos são a unidade principal de isolamento e organização de dados no Unity Catalog. Todos os esquemas e tabelas residem em catálogos, assim como volumes, view e modelos.

Alguns workspace não possuem catálogo de provisionamento automático. Para usar Unity Catalog, um administrador workspace deve criar o primeiro catálogo para esse workspace.

Outros workspace têm acesso a um catálogo de pré-provisionamento que seus usuários podem acessar para começar (seja o catálogo workspace ou o catálogo main, dependendo de como seu workspace foi habilitado para Unity Catalog). À medida que você adiciona mais dados e IA ativa ao Databricks, você pode criar catálogos adicionais para agrupar esses ativos de uma forma que facilite o controle lógico dos dados.

Para obter recomendações sobre a melhor forma de usar catálogos e esquemas para organizar seus dados e IA ativa, consulte Práticas recomendadasUnity Catalog .

Como administrador do metastore, administrador workspace (apenas workspace habilitado automaticamente) ou outro usuário com o privilégio CREATE CATALOG, você pode criar novos catálogos no metastore. Ao fazer isso, você deve:

  1. Crie o gerenciamento de armazenamento para o novo catálogo.

    Gerenciar armazenamento é um local de armazenamento dedicado em sua account da AWS para gerenciar tabelas e volumes. Você pode atribuir gerenciamento de armazenamento 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.

    A Databricks recomenda que atribua o gerenciamento do armazenamento ao nível do catálogo, porque os catálogos normalmente representam unidades lógicas de isolamento de dados. Se você se sentir confortável com dados em vários catálogos compartilhando o mesmo local de armazenamento, poderá default o local de armazenamento no nível do metastore. Se o seu workspace foi ativado automaticamente para Unity Catalog , não há armazenamento no nível do metastore por default. Um administrador account tem a opção de configurar o armazenamento no nível do metastore. Consulte gerenciar armazenamento e Adicionar gerenciar armazenamento a um metastore existente.

    Atribuir gerenciamento de armazenamento a um catálogo requer que você crie:

    • Uma credencial de armazenamento.

    • Um local externo que faz 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 clouds usando o Unity Catalog.

  2. Vincule o novo catálogo ao seu workspace se quiser limitar o acesso de outros workspaces que compartilham o mesmo metastore.

    Consulte Vincular um catálogo a um ou mais workspace.

  3. Conceda privilégios no catálogo.

Para obter instruções detalhadas, consulte Criar e gerenciar catálogos.

Exemplo de criação de catálogo

O exemplo a seguir mostra a criação de um catálogo com gerenciamento de armazenamento, seguido da concessão do privilégio SELECT no catálogo:

CREATE CATALOG IF NOT EXISTS mycatalog
  MANAGED LOCATION 's3://depts/finance';

GRANT SELECT ON mycatalog TO `finance-team`;

Para obter mais exemplos, incluindo instruções para criar catálogos usando o Catalog Explorer, consulte Criar e gerenciar catálogos.

Crie um esquema

Os esquemas representam agrupamentos mais granulares (como departamentos ou projetos, por exemplo) do que os catálogos. Todas as tabelas e outros objetos Unity Catalog no catálogo estão contidos em esquemas. Como proprietário de um novo catálogo, talvez você queira criar os esquemas no catálogo. Mas talvez você queira delegar a capacidade de criar esquemas a outros usuários, concedendo-lhes o privilégio CREATE SCHEMA no catálogo.

Para obter instruções detalhadas, consulte Criar e gerenciar esquemas (bancos de dados).

(Opcional) Atribua a função de administrador do metastore

Se o seu workspace foi ativado automaticamente para Unity Catalog , nenhuma função de administrador do metastore será atribuída por default. Os administradores do metastore têm alguns privilégios que os administradores workspace não têm.

Talvez você queira atribuir um administrador do metastore se precisar:

Para obter informações detalhadas sobre a função de administrador do metastore e instruções para atribuí-la, consulte Atribuir um administrador do metastore.

Atualize as tabelas em seu site Hive metastore para tabelas Unity Catalog

Se o seu workspace estava em serviço antes de ser habilitado para Unity Catalog, ele provavelmente tem um Hive metastore que contém dados que o senhor deseja continuar a usar. Databricks recomenda que o senhor migre as tabelas gerenciadas pelo Hive metastore para o metastore Unity Catalog.

Consulte Upgrade tables and view to Unity Catalog e Use the UCX utilidades to upgrade your workspace to Unity Catalog.

(Opcional) Continue trabalhando com seu Hive metastore

Se o seu workspace tiver um Hive metastore que contenha dados que o senhor deseja continuar a usar e o senhor optar por não seguir a recomendação de atualizar as tabelas gerenciadas pelo Hive metastore para o Unity Catalog metastore, poderá continuar a trabalhar com os dados do Hive metastore juntamente com os dados do Unity Catalog metastore.

O Hive metastore é representado nas interfaces Unity Catalog como um catálogo chamado hive_metastore. Para continuar trabalhando com dados no Hive metastore sem precisar atualizar query para especificar o hive_metastore catálogo , você pode definir o workspace default catálogo do como hive_metastore. Consulte gerenciamento do catálogo padrão.

Dependendo de quando seu workspace foi ativado para Unity Catalog, o catálogo default já pode ser hive_metastore.

(Opcional) Criar armazenamento em nível de metastore

Embora o Databricks recomende que você crie um local de armazenamento de gerenciamento separado para cada catálogo em seu metastore (e você pode fazer o mesmo para esquemas), você pode optar por criar um local de gerenciamento no nível do metastore e usá-lo como armazenamento default para vários catálogos e esquemas.

Se desejar armazenamento no nível do metastore, você também deverá atribuir um administrador do metastore. Consulte (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 Notebook usando Databricks-to-Databricks Delta Sharing.

  • Você usa uma integração de produto Databricks parceiros que depende de locais de preparo pessoais (descontinuados).

Para mais informações sobre a hierarquia de gerenciamento de locais de armazenamento, consulte Os dados são fisicamente separados no armazenamento.

Para saber como adicionar armazenamento em nível de metastore a metastores que não possuem nenhum, consulte Adicionar gerenciar armazenamento a um metastore existente.

Observação

A maioria dos workspace habilitados para Unity Catalog antes de 8 de novembro de 2023 tem uma raiz de armazenamento no nível do metastore.

Próximos passos