Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: Databricks SQL
Databricks Runtime
Clona tablas origen Delta, Apache Iceberg administradas o Apache Parquet a una ubicación de destino en una versión específica. La clonación puede ser profunda o superficial: los clones profundos copian los datos, mientras que los clones poco profundos hacen referencia a los datos de origen sin copiarlos.
- Las tablas Delta, Parquet y Foreign Iceberg admiten la clonación profunda y superficial.
- Las tablas administradas de Iceberg solo admiten la clonación profunda, y no se puede cambiar el formato de tabla durante la clonación.
Para obtener más información, véase Clonación incremental de tablas Parquet y Apache Iceberg en Delta Lake.
En Databricks SQL y Databricks Runtime 13.3 LTS y versiones posteriores, puede usar un clon superficial con tablas administradas por Unity Catalog. En Databricks Runtime 12.2 LTS y versiones posteriores, no hay compatibilidad con clones superficiales en Unity Catalog. Consulte Clonación superficial para las tablas de Unity Catalog.
Importante
Existen diferencias notables entre los clones profundos y los superficiales, lo que puede determinar la manera más adecuada de usarlos. Consulte Clonación de una tabla en Azure Databricks.
Sintaxis
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
SI NO EXISTE
En caso de que esté especificado, se omite la instrucción si ya existe
table_name
.[CREATE OR] REPLACE
Cuando se especifica
CREATE OR
, la tabla se reemplaza, si existe y, si no, se crea de nuevo. SinCREATE OR
, debe existirtable_name
.-
Nombre de la tabla que se va a crear. El nombre no debe incluir una especificación temporal ni una especificación de opciones . Si el nombre no está completo, la tabla se crea en el esquema actual. Ya no debería existir
table_name
, a no ser que se hayan especificadoREPLACE
oIF NOT EXISTS
. CLONACIÓN SUPERFICIAL o CLONACIÓN PROFUNDA
Si especifica
SHALLOW CLONE
Azure Databricks realizará una copia de la definición de la tabla de origen, pero hará referencia a los archivos de la tabla de origen. Al especificarseDEEP CLONE
(valor predeterminado), Azure Databricks hará una copia completa e independiente de la tabla de origen.Las tablas Iceberg administradas solo admiten la clonación profunda, no la clonación superficial.
-
Nombre de la tabla que se va a clonar. El nombre puede incluir una especificación temporal o una especificación de opciones .
-
Este parámetro opcional le permite establecer una o varias propiedades definidas por el usuario.
RUTA DE UBICACIÓN
Crea, de forma opcional, una tabla externa, con la localización proporcionada como ruta de acceso, en la que se almacenan los datos. Si
table_name
es una ruta de acceso en lugar de un identificador de tabla, se producirá un error en la operación.path
debe ser un literal de CADENA.
Ejemplos
Puedes usar CREATE TABLE CLONE
para operaciones complejas como migración de datos, archivo de datos, reproducción de flujo de aprendizaje automático, experimentos a corto plazo y uso compartido de datos. Consulte Clonación de una tabla en Azure Databricks.