Partager via


CREATE TABLE CLONE

S’applique à : case marquée oui Databricks SQL case marquée oui Databricks Runtime

Clone une table Delta source vers une destination cible à une version spécifique. Un clone peut être profond ou superficiel : les clones profonds copient les données à partir de la source, contrairement aux clones superficiels. Vous pouvez également cloner des tables sources Parquet et Iceberg. Consultez cloner de manière incrémentielle les tableaux Parquet et Iceberg vers Delta Lake.

Dans Databricks SQL et Databricks Runtime 13.3 LTS et versions ultérieures, vous pouvez utiliser un clone superficiel avec des tables managées par Unity Catalog. Dans Databricks Runtime 12.2 LTS et versions ultérieures, il n’y a pas de prise en charge des clones superficiels dans Unity Catalog. Consultez Clone peu profond pour les tables de catalogue Unity.

Important

Il existe des différences importantes entre les clones superficiels et les clones profond qui peuvent déterminer la meilleure manière de les utiliser. Consultez Cloner une table sur Azure Databricks.

Syntaxe

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]

Paramètres

  • IF NOT EXISTS

    S’il est spécifié, l’instruction est ignorée si table_name existe déjà.

  • [CREATE OR] REPLACE

    Si CREATE OR est spécifié, la table est remplacée si elle existe et créée si elle n’existe pas. Sans CREATE OR, table_name doit exister.

  • table_name

    Nom de la table Delta Lake à créer. Le nom ne doit pas inclure de spécification temporelle ou de spécification d’options. Si le nom n’est pas qualifié, la table est créée dans le schéma actuel. table_name ne doit pas déjà exister, sauf si REPLACE ou IF NOT EXISTS a été spécifié.

  • SHALLOW CLONE ou DEEP CLONE

    Si vous spécifiez SHALLOW CLONE, Azure Databricks effectue une copie de la définition de la table source, mais fait référence aux fichiers de la table source. Quand vous spécifiez DEEP CLONE (par défaut), Azure Databricks effectue une copie complète et indépendante de la table source.

  • source_table_name

    Nom de la table Delta Lake à cloner. Le nom peut inclure une spécification temporelle ou une spécification d’options.

  • TBLPROPERTIES

    Configure facultativement une ou plusieurs propriétés définies par l’utilisateur.

  • LOCATION chemin d’accès

    Crée éventuellement une table externe, avec l’emplacement fourni en tant que chemin où les données sont stockées. Si table_name est un chemin au lieu d’un identificateur de table, l’opération échoue. path doit être un littéral STRING.

Exemples

Vous pouvez utiliser CREATE TABLE CLONE pour des opérations complexes telles que la migration de données, l’archivage de données, la reproduction du flux Machine Learning, les expériences à court terme et le partage de données. Consultez Cloner une table sur Azure Databricks.