Поделиться через


CREATE TABLE CLONE

Область применения:отмечено Databricks SQL отмечено Databricks Runtime

Клонирует исходную таблицу Delta в целевой объект в конкретной версии. Клон может быть как глубоким, так и поверхностным: глубокие клоны копируют данные из источника, а поверхностные — нет. Вы также можете клонировать исходные таблицы Parquet и Iceberg. См. , как пошагово клонировать таблицы Parquet и Iceberg в Delta Lake.

В Databricks SQL и Databricks Runtime 13.3 LTS и более поздних версиях можно использовать неглубокое клонирование с управляемыми таблицами каталога Unity. В Databricks Runtime 12.2 LTS и ниже отсутствует поддержка мелких клонов в каталоге Unity. См. мелкий клон для таблиц каталога Unity.

Внимание

Существуют важные различия между поверхностными и глубокими клонами, которые могут определить, как лучше их использовать. См. клонирование таблицы в Azure Databricks.

Синтаксис

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]

Параметры

  • ЕСЛИ НЕ СУЩЕСТВУЕТ

    Если этот параметр указан, инструкция игнорируется, если table_name уже существует.

  • [СОЗДАТЬ ИЛИ] ЗАМЕНИТЬ

    Если указано CREATE OR, таблица заменяется, если она существует, и создаётся заново, если не существует. Без CREATE OR элемент table_name должен существовать.

  • table_name

    Имя создаваемой таблицы Delta Lake. Имя не должно включать указания на время или спецификации параметров. Если имя не задано, таблица создается в текущей схеме. table_name не должен уже существовать, если не указан REPLACE или IF NOT EXISTS.

  • SHALLOW CLONE или DEEP CLONE

    Если указать SHALLOW CLONE, Azure Databricks создаст копию определения исходной таблицы, при этом будет использовать файлы исходной таблицы. При указании DEEP CLONE (по умолчанию) Azure Databricks сделает полную независимую копию исходной таблицы.

  • source_table_name

    Имя таблицы Delta Lake, подлежащей клонированию. Имя может включать темпоральную спецификацию или спецификацию параметров.

  • TBLPROPERTIES

    При необходимости задает одно или несколько определяемых пользователем свойств.

  • LOCATION path

    При необходимости создает внешнюю таблицу с указанным расположением в качестве пути, в котором хранятся данные. Если table_name является путём вместо того чтобы быть идентификатором таблицы, операция не будет успешной. path должен быть СТРОКОВЫМ литералом.

Примеры

Вы можете использовать CREATE TABLE CLONE для сложных операций, таких как миграция данных, архивация данных, воспроизведение потоков машинного обучения, короткосрочные эксперименты и обмен данными. См. клонирование таблицы в Azure Databricks.