Compartilhar via


Trabalhar com tabelas gerenciadas

O Azure Databricks gerencia o ciclo de vida e o layout de arquivo de uma tabela gerenciada. As tabelas gerenciadas são a maneira padrão de criar tabelas.

O Databricks recomenda que você use tabelas gerenciadas para todos os dados tabulares gerenciados no Azure Databricks.

Observação

Este artigo se concentra nas tabelas gerenciadas do Catálogo do Unity. As tabelas gerenciadas no metastore do Hive herdado têm comportamentos diferentes. Veja Objetos de banco de dados no metastore do Hive herdado.

Trabalhar com tabelas gerenciadas

Você pode trabalhar com tabelas gerenciadas em todas as linguagens e produtos com suporte no Azure Databricks. Você precisa de determinados privilégios para criar, atualizar, excluir ou consultar tabelas gerenciadas. Consulte Gerenciar privilégios no Catálogo do Unity.

Não use ferramentas externas ao Azure Databricks para manipular arquivos em tabelas gerenciados diretamente.

Você só deve interagir com arquivos de dados em uma tabela gerenciada usando o nome da tabela.

Os arquivos de dados para tabelas gerenciadas são armazenados no local de armazenamento gerenciado associado ao esquema que os contém. Consulte Especificar um local de armazenamento gerenciado no catálogo do Unity.

Criar uma tabela gerenciada

Por padrão, sempre que você cria uma tabela usando comandos SQL, Spark ou outras ferramentas no Azure Databricks, a tabela é gerenciada.

A sintaxe SQL a seguir demonstra como criar uma tabela gerenciada vazia usando SQL. Substitua os valores de espaço reservado:

  • <catalog-name>: O nome do catálogo que conterá a tabela.
  • <schema-name>: O nome do esquema que conterá a tabela.
  • <table-name>: O nome do catálogo.
  • <column-specification>: o nome e o tipo de dados para cada coluna.
CREATE TABLE <catalog-name>.<schema-name>.<table-name>
(
  <column-specification>
);

Muitos usuários criam tabelas gerenciadas a partir de resultados de consulta ou operações de gravação DataFrame. Os artigos a seguir demonstram alguns dos muitos padrões que você pode usar para criar uma tabela gerenciada no Azure Databricks:

Permissões necessárias

Para criar uma tabela gerenciada, você deve ter:

  • A permissão USE SCHEMA no esquema pai da tabela.
  • A permissão USE CATALOG no catálogo pai da tabela.
  • A permissão CREATE TABLE no esquema pai da tabela.

Remover uma tabela gerenciada

Você deve ser o proprietário da tabela para remover uma tabela. Para remover uma tabela gerenciada, execute o seguinte comando SQL:

DROP TABLE IF EXISTS catalog_name.schema_name.table_name;

Quando uma tabela gerenciada é removida, os dados subjacentes dela são excluídos do seu locatário de nuvem dentro de 30 dias.