CREATE CATALOG INTEGRATION(오브젝트 저장소)¶
계정에서 새 카탈로그 통합 을 생성하거나 다음 원본에 대해 기존 카탈로그 통합을 대체합니다.
Apache Iceberg™ 메타데이터 파일
Delta 테이블 파일
- 참고 항목:
ALTER CATALOG INTEGRATION , DROP CATALOG INTEGRATION , SHOW CATALOG INTEGRATIONS, DESCRIBE CATALOG INTEGRATION
구문¶
CREATE [ OR REPLACE ] CATALOG INTEGRATION [IF NOT EXISTS]
<name>
CATALOG_SOURCE = OBJECT_STORE
TABLE_FORMAT = { ICEBERG | DELTA }
ENABLED = { TRUE | FALSE }
[ REFRESH_INTERVAL_SECONDS = <value> ]
[ COMMENT = '<string_literal>' ]
필수 매개 변수¶
name카탈로그 통합에 대한 식별자(이름)를 지정하는 문자열로, 계정에서 고유해야 합니다.
또한, 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예:
"My object")로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
CATALOG_SOURCE = OBJECT_STORE오브젝트 저장소에 있는 외부 Iceberg 메타데이터 파일 또는 Delta 파일을 원본으로 지정합니다.
TABLE_FORMAT = { ICEBERG | DELTA }테이블 형식을 지정합니다.
ICEBERG: 외부 클라우드 저장소 위치의 메타데이터에서 Glue Iceberg 테이블 또는 Iceberg 테이블을 지정합니다.DELTA: Delta 테이블을 지정합니다.
ENABLED = { TRUE | FALSE }Iceberg 테이블에 카탈로그 통합을 사용할 수 있는지 여부를 지정합니다.
TRUE로 지정하면 사용자가 이 통합을 참조하는 새 Iceberg 테이블을 만들 수 있습니다. 이 통합을 참조하는 기존 Iceberg 테이블은 정상적으로 작동합니다.FALSE로 지정하면 사용자가 이 통합을 참조하는 새 Iceberg 테이블을 만들지 못하게 됩니다. 이 통합을 참조하는 기존 Iceberg 테이블은 테이블 정의의 카탈로그에 액세스할 수 없습니다.
선택적 매개 변수¶
REFRESH_INTERVAL_SECONDS = valueSnowflake가 자동 새로 고침 의 메타데이터 업데이트를 위해 외부 Iceberg 카탈로그를 폴링하는 시도 사이에 대기하는 시간(초)을 지정합니다.
Delta 기반 테이블의 경우, Snowflake가 외부 클라우드 저장소에서 새 메타데이터를 폴링하기 위해 시도할 때까지 기다리는 시간(초)을 지정합니다.
값: 30~86400(포함)
기본값: 30초
참고
REFRESH_INTERVAL_SECONDS 매개 변수는 이 유형의 카탈로그 통합에 대해 TABLE_FORMAT = DELTA 인 경우에만 지원됩니다.
COMMENT = 'string_literal'통합에 대한 설명을 지정하는 문자열(리터럴)입니다.
기본값: 값 없음
액세스 제어 요구 사항¶
이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
권한 |
오브젝트 |
참고 |
|---|---|---|
CREATE INTEGRATION |
계정 |
Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed. |
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
사용법 노트¶
기존 카탈로그 통합은 수정할 수 없으며, 대신 CREATE OR REPLACE CATALOG INTEGRATION 문을 사용하십시오.
하나 이상의 Apache Iceberg™ 테이블이 카탈로그 통합에 연결되어 있는 경우 카탈로그 통합을 삭제하거나 교체할 수 없습니다.
카탈로그 통합에 종속된 테이블을 보려면 SHOW ICEBERG TABLES 명령과
catalog_name열을 필터링하는 파이프 연산자 (->>)를 이용하는 쿼리를 사용할 수 있습니다.참고
열 식별자(
catalog_name)는 대/소문자를 구분합니다. SHOW ICEBERG TABLES 출력에 표시되는 열 식별자를 정확하게 지정합니다.예:
SHOW ICEBERG TABLES ->> SELECT * FROM $1 WHERE "catalog_name" = 'my_catalog_integration_1';
Apache Iceberg™ 테이블 자동 새로 고침 는
TABLE_FORMAT = DELTA인 경우에만 이 유형의 카탈로그 통합에 지원됩니다.메타데이터 관련:
주의
고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오.
OR REPLACE 및 IF NOT EXISTS 절은 상호 배타적입니다. 두 절을 같은 문에 함께 사용할 수 없습니다.
CREATE OR REPLACE <오브젝트> 문은 원자성입니다. 즉, 오브젝트가 바뀔 때 단일 트랜잭션으로 이전 오브젝트가 삭제되고 새 오브젝트가 생성됩니다.
예¶
다음 예에서는 외부 클라우드 저장소에서 Iceberg 메타데이터를 사용하는 통합을 생성합니다. OBJECT_STORE는 외부 볼륨 과 연결하는 오브젝트 저장소에 해당합니다.
CREATE CATALOG INTEGRATION myCatalogInt CATALOG_SOURCE = OBJECT_STORE TABLE_FORMAT = ICEBERG ENABLED = TRUE;