Partilhar via


Criar esquemas

Este artigo mostra como criar esquemas no Unity Catalog e no metastore herdado do Hive.

Para saber mais sobre esquemas no Azure Databricks, incluindo uma comparação do comportamento do esquema no Unity Catalog e no metastore do Hive, consulte O que são esquemas no Azure Databricks?.

Antes de começar

Para criar um esquema no Unity Catalog:

  • Você deve ter um metastore do Unity Catalog vinculado ao espaço de trabalho onde você executa a criação do esquema.
  • Você deve ter as USE CATALOG permissões e CREATE SCHEMA dados no catálogo pai do esquema. Um administrador de metastore ou o proprietário do catálogo pode conceder esses privilégios. Se você for um administrador de metastore, poderá conceder esses privilégios a si mesmo.
  • Para especificar um local de armazenamento gerenciado opcional para as tabelas e volumes no esquema, um local externo deve ser definido no Catálogo Unity e você deve ter o CREATE MANAGED STORAGE privilégio no local externo. Consulte Especificar um local de armazenamento gerenciado no Catálogo Unity.
  • O cluster que você usa para executar um bloco de anotações para criar um esquema deve usar um modo de acesso compatível com o Catálogo Unity. Consulte Modos de acesso. Os armazéns SQL sempre suportam o Unity Catalog.

Para criar um esquema no metastore do Hive:

Criar um esquema

Para criar um esquema no Unity Catalog, você pode usar o Catalog Explorer ou comandos SQL. Para criar um esquema no metastore do Hive, você deve usar comandos SQL.

Explorador de Catálogos

  1. Faça login em um espaço de trabalho vinculado ao metastore do Unity Catalog.
  2. Clique em Ícone do catálogo Catálogo.
  3. No painel Catálogo à esquerda, clique no catálogo no qual deseja criar o esquema.
  4. No painel de detalhes, clique em Criar esquema.
  5. Dê um nome ao esquema e adicione qualquer comentário que ajude os usuários a entender a finalidade do esquema.
  6. (Opcional) Especifique um local de armazenamento gerenciado. Requer o CREATE MANAGED STORAGE privilégio no local externo de destino. Consulte Especificar um local de armazenamento gerenciado no Catálogo Unity e Locais gerenciados para esquemas.
  7. Clique em Criar.
  8. Conceda privilégios no esquema. Consulte Gerenciar privilégios no Catálogo Unity.
  9. Clique em Guardar.

SQL

  1. Execute os seguintes comandos SQL em um bloco de anotações ou no editor de consultas SQL. Os itens entre parênteses são opcionais. Pode utilizar SCHEMA ou DATABASE. Substitua os valores de espaço reservado:

    • <catalog-name>: O nome do catálogo pai para o esquema. Se você estiver criando um esquema no metastore do Hive e estiver em um espaço de trabalho habilitado para catálogo Unity, use hive_metastore como o nome do catálogo. Se seu espaço de trabalho não estiver habilitado para o Unity Catalog, não especifique um catálogo.
    • <schema-name>: Um nome para o esquema.
    • <location-path>: Caminho opcional para um local de armazenamento gerenciado. Use com MANAGED LOCATION para Unity Catalog e com LOCATION para o metastore do Hive. No Unity Catalog, você deve ter o CREATE MANAGED STORAGE privilégio no local externo para o caminho especificado. Consulte Especificar um local de armazenamento gerenciado no Catálogo Unity e Locais gerenciados para esquemas.
    • <comment>: Descrição opcional ou outro comentário.
    • <property-key> = <property-value> [ , ... ]: Opcional. Spark propriedades SQL e valores a serem definidos para o esquema.

    Para obter descrições de parâmetros mais detalhadas, consulte CREATE SCHEMA.

    CREATE { DATABASE | SCHEMA } [ IF NOT EXISTS ] <catalog-name>.<schema-name>
        [ MANAGED LOCATION '<location-path>' | LOCATION '<location-path>']
        [ COMMENT <comment> ]
        [ WITH DBPROPERTIES ( <property-key = property_value [ , ... ]> ) ];
    
  2. Conceda privilégios no esquema. Para privilégios do Catálogo Unity, consulte Gerenciar privilégios no Catálogo Unity.

Você também pode criar um esquema usando o provedor Databricks Terraform e databricks_schema. Você pode recuperar uma lista de IDs de esquema usando databricks_schemas

Próximos passos