Delta Lake로 변환
CONVERT TO DELTA
SQL 명령은 Parquet 테이블과 Iceberg 테이블을 Delta Lake 테이블로 일회성으로 변환합니다. Parquet 또는 Iceberg 테이블을 Delta Lake로 증분 변환하려면 Parquet 및 Iceberg 테이블을 Delta Lake로 증분 복제를 참조하세요.
Unity 카탈로그는 Unity 카탈로그에서 관리되는 외부 위치에 저장된 Parquet 및 Iceberg 테이블에 대해 CONVERT TO DELTA
SQL 명령을 지원합니다.
Unity 카탈로그에서 기존 Parquet 데이터 파일을 외부 테이블로 구성한 다음 Delta Lake로 변환하여 Databricks Lakehouse의 모든 기능을 잠금 해제할 수 있습니다.
기술 설명서는 CONVERT TO DELTA를 참조하세요.
외부 위치에 있는 Parquet 또는 Iceberg 파일 디렉터리를 Delta Lake로 변환
참고 항목
- Iceberg 테이블 변환은 공개 미리 보기로 제공됩니다.
- Iceberg 테이블 변환은 Databricks Runtime 10.4 LTS 이상에서 지원됩니다.
- Iceberg 메타스토어 테이블의 변환은 지원되지 않습니다.
- 파티션 진화를 경험한 Iceberg 테이블 변환은 지원되지 않습니다.
- 업데이트, 삭제 또는 병합이 발생한 Iceberg 병합-읽기 테이블 변환은 지원되지 않습니다.
- 다음은 잘린 열에 정의된 파티션을 사용하여 Iceberg 테이블을 변환하기 위한 제한 사항입니다.
- Databricks Runtime 12.2 LTS 이하에서 지원되는 유일한 잘린 열 형식은 다음과 같습니다
string
. - Databricks Runtime 13.3 LTS 이상에서는 잘린 형식
string
long
열 또는int
. - Azure Databricks는 잘린 형식
decimal
의 열 작업을 지원하지 않습니다.
- Databricks Runtime 12.2 LTS 이하에서 지원되는 유일한 잘린 열 형식은 다음과 같습니다
스토리지 위치에 대한 쓰기 액세스 권한이 있는 한 Parquet 데이터 파일의 디렉터리를 Delta Lake 테이블로 변환할 수 있습니다. Unity 카탈로그를 사용하여 액세스를 구성하는 방법에 대한 자세한 내용은 Unity 카탈로그를 사용하여 클라우드 개체 스토리지 및 서비스에 연결을 참조 하세요.
참고 항목
Unity 카탈로그에는 Azure Data Lake Storage Gen2가 필요합니다.
CONVERT TO DELTA parquet.`abfss://container@storageAccount.dfs.core.windows.net/parquet-data`;
CONVERT TO DELTA iceberg.`abfss://container@storageAccount.dfs.core.windows.net/iceberg-data`;
변환된 테이블을 외부 테이블로 Unity 카탈로그로 로드하려면 외부 위치에 대한 권한이 필요합니다 CREATE EXTERNAL TABLE
.
참고 항목
Databricks Runtime 11.3 LTS 이상의 CONVERT TO DELTA
경우 Hive 메타스토어에 등록된 테이블에 대한 분할 정보를 자동으로 유추합니다. Unity 카탈로그 외부 테이블에 대한 분할 정보를 제공해야 합니다.
Unity 카탈로그에서 관리되는 테이블 및 외부 테이블을 Delta Lake로 변환
CONVERT TO DELTA
구문은 Unity 카탈로그 외부 테이블을 만드는 데만 사용할 수 있습니다. CTAS
문을 사용하여 레거시 Hive 메타스토어 관리형 Parquet 테이블을 관리되는 Unity 카탈로그 Delta Lake 테이블로 직접 변환합니다. CREATE TABLE AS SELECT를 사용하여 Hive 테이블을 Unity 카탈로그 관리 테이블로 업그레이드를 참조하세요.
외부 Parquet 테이블을 Unity 카탈로그 외부 테이블로 업그레이드하려면 업그레이드 마법사를 사용하여 단일 Hive 테이블을 Unity 카탈로그 외부 테이블로 업그레이드를 참조하세요.
외부 Parquet 테이블을 Unity 카탈로그에 등록한 후 외부 Delta Lake 테이블로 변환할 수 있습니다. Parquet 테이블이 분할된 경우 분할 정보를 제공해야 합니다.
CONVERT TO DELTA catalog_name.database_name.table_name;
CONVERT TO DELTA catalog_name.database_name.table_name PARTITIONED BY (date_updated DATE);