Partilhar via


CRIAR CLONE DE TABELA

Aplica-se a:Marque Sim Databricks SQL Marque Sim Databricks Runtime

Clones uma tabela Delta de origem para um destino de destino em uma versão específica. Um clone pode ser profundo ou superficial: clones profundos copiam os dados da fonte e clones superficiais não. Você também pode clonar tabelas Parquet e Iceberg de origem. Veja Tabelas de Parquet e Iceberg clonadas incrementalmente para Delta Lake.

No Databricks SQL e no Databricks Runtime 13.3 LTS e superior, você pode usar clones superficiais com tabelas gerenciadas pelo Unity Catalog. No Databricks Runtime 12.2 LTS e inferior, não há suporte para clones superficiais no Unity Catalog. Consulte Clone superficial para tabelas do Catálogo Unity.

Importante

Existem diferenças importantes entre clones superficiais e profundos que podem determinar a melhor forma de usá-los. Consulte Clonar uma tabela no Azure Databricks.

Sintaxe

CREATE TABLE [IF NOT EXISTS] table_name
   [SHALLOW | DEEP] CLONE source_table_name [TBLPROPERTIES clause] [LOCATION path]
[CREATE OR] REPLACE TABLE table_name
   [SHALLOW | DEEP] CLONE source_table_name [TBLPROPERTIES clause] [LOCATION path]

Parâmetros

  • SE NÃO EXISTIR

    Se especificado, a instrução será ignorada se table_name já existir.

  • [CRIAR OU] SUBSTITUIR

    Se CREATE OR for especificado, a tabela é substituída se existir e recém-criada se não existir. Sem CREATE OR o table_name deve existir.

  • table_name

    O nome da tabela Delta Lake a ser criada. O nome não deve incluir uma especificação temporal. Se o nome não estiver qualificado, a tabela será criada no esquema atual. table_name não deve existir já, a menos que REPLACE ou IF NOT EXISTS tenha sido especificado.

  • CLONE RASO ou CLONE PROFUNDO

    Se você especificar SHALLOW CLONE o Azure Databricks, fará uma cópia da definição da tabela de origem, mas fará referência aos arquivos da tabela de origem. Quando você especificar DEEP CLONE (padrão), o Azure Databricks fará uma cópia completa e independente da tabela de origem.

  • source_table_name

    O nome da tabela Delta Lake a ser clonada. O nome pode incluir uma especificação temporal.

  • TBLPROPERTIES

    Opcionalmente, define uma ou mais propriedades definidas pelo usuário.

  • Caminho LOCALIZAÇÃO

    Opcionalmente, cria uma tabela externa, com o local fornecido como o caminho onde os dados são armazenados. Se table_name for um caminho em vez de um identificador de tabela, a operação falhará. path deve ser um literal STRING.

Exemplos

Você pode usar CREATE TABLE CLONE para operações complexas, como migração de dados, arquivamento de dados, reprodução de fluxo de aprendizado de máquina, experimentos de curto prazo e compartilhamento de dados. Consulte Clonar uma tabela no Azure Databricks.