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


CREATE TABLE CLONE

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

Клонирует исходную разностную таблицу в целевое расположение в определенной версии. Клон может быть как глубоким, так и поверхностным: глубокие клоны копируют данные из источника, а поверхностные — нет. Вы также можете клонировать исходные таблицы 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]

Параметры

  • IF NOT EXISTS

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

  • [CREATE OR] REPLACE

    Если задано 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.