다음을 통해 공유


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 카탈로그 테이블에 대한 단순 클론을 참조하세요.

Important

얕은 클론과 깊은 클론 사이에는 가장 좋은 사용 방법을 결정할 수 있는 중요한 차이점이 있습니다. 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는 STRING 리터럴이어야 합니다.

예제

데이터 마이그레이션, 데이터 보관, 기계 학습 흐름 재현, 단기 실험 및 데이터 공유와 같은 복잡한 작업에 사용할 CREATE TABLE CLONE 수 있습니다. Azure Databricks에서 테이블 복제를참조하세요.