DROP EXTERNAL VOLUME

DROP EXTERNAL VOLUME

계정에서 외부 볼륨(External Volume)을 제거하되, UNDROP EXTERNAL VOLUME으로 복구할 수 있도록 버전을 보존하는 명령어입니다.

출처: 문서

본문

DROP EXTERNAL VOLUME은 계정에서 외부 볼륨을 제거하되, UNDROP EXTERNAL VOLUME으로 복구할 수 있도록 외부 볼륨의 버전을 보존합니다. 관련 명령어로 CREATE EXTERNAL VOLUME, ALTER EXTERNAL VOLUME, SHOW EXTERNAL VOLUMES, DESCRIBE EXTERNAL VOLUME이 있어요.

구문 (Syntax)

DROP EXTERNAL VOLUME [ IF EXISTS ] <name>

파라미터 (Parameters)

  • name — 삭제할 외부 볼륨의 식별자를 지정합니다. 식별자에 공백, 특수 문자 또는 대소문자 혼합 문자가 포함된 경우 전체 문자열을 큰따옴표로 감싸야 합니다(예: "My object"). 큰따옴표로 감싼 식별자는 대소문자를 구분해요.

접근 제어 요구 사항 (Access control requirements)

이 작업을 실행하는 역할은 최소한 OWNERSHIP 권한(객체: External volume)이 있어야 합니다. OWNERSHIP은 객체에 대한 특별한 권한으로, 객체를 생성한 역할에 자동으로 부여되지만 소유 역할(또는 MANAGE GRANTS 권한이 있는 역할)이 GRANT OWNERSHIP으로 이전할 수 있습니다.

지정된 권한 집합으로 커스텀 역할을 만드는 방법은 Creating custom roles을, securable 객체에 대한 역할과 권한 부여에 관한 일반 정보는 Overview of Access Control을 참고하세요.

사용 참고 사항 (Usage notes)

  • 하나 이상의 Iceberg 테이블이 외부 볼륨과 연결되어 있으면 외부 볼륨을 삭제하거나 교체할 수 없습니다.
  • 외부 볼륨에 의존하는 테이블을 보려면 SHOW ICEBERG TABLES 명령어와 external_volume_name 컬럼을 기준으로 필터링하는 파이프 연산자(->>) 쿼리를 사용할 수 있습니다.
  • 참고: 컬럼 식별자(external_volume_name)는 대소문자를 구분합니다. SHOW ICEBERG TABLES 출력에 나타나는 그대로 컬럼 식별자를 지정하세요.

예를 들어:

SHOW ICEBERG TABLES
  ->> SELECT *
        FROM $1
        WHERE "external_volume_name" = 'my_external_volume_1';
  • 외부 볼륨을 삭제해도 시스템에서 영구적으로 제거되지는 않습니다. Snowflake는 삭제된 외부 볼륨의 버전을 Time Travel에 보존합니다. UNDROP EXTERNAL VOLUME 명령어로 삭제된 외부 볼륨을 복원할 수 있습니다.
  • 삭제된 외부 볼륨이 완전히 제거되면 복구할 수 없으며 다시 생성해야 합니다.
  • 외부 볼륨을 삭제한 후 같은 이름으로 외부 볼륨을 생성하면 새 버전의 외부 볼륨이 만들어집니다. 이전 외부 볼륨의 삭제된 버전은 다음 단계로 복원할 수 있습니다: ① 현재 버전의 외부 볼륨 이름 변경, ② UNDROP EXTERNAL VOLUME 명령어로 이전 버전 복원.
  • IF EXISTS 절을 지정하고 대상 객체가 존재하지 않으면, 명령어는 오류를 반환하지 않고 성공적으로 완료됩니다.

예제 (Examples)

다음은 my_external_volume이라는 외부 볼륨을 삭제하는 예제입니다.

DROP EXTERNAL VOLUME my_external_volume;

더 알아보기 (Learn more)