CREATE TABLE CLONE
Aplica-se a: Databricks SQL
Databricks Runtime
Clona uma tabela Delta de origem para um destino numa 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. Consulte como clonar incrementavelmente tabelas de Parquet e Iceberg 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 clonagem superficial para tabelas do Unity Catalog.
Importante
Existem diferenças importantes entre clones superficiais e profundos que podem determinar a melhor forma de usá-los. Ver 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 será substituída se existir e recém-criada se não existir. SemCREATE OR
otable_name
deve existir.-
O nome da tabela Delta Lake a ser criada. O nome não deve incluir uma especificação temporal ou uma especificação de opções. Se o nome não estiver qualificado, a tabela será criada no esquema atual.
table_name
não deve existir já, a menos queREPLACE
ouIF 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ê especificarDEEP CLONE
(padrão) o Azure Databricks fará uma cópia completa e independente da tabela de origem.-
O nome da tabela Delta Lake a ser clonada. O nome pode incluir uma especificação temporal ou uma especificação de opções.
-
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, por si só, 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. Veja Clonar uma tabela no Azure Databricks.