DROP SNAPSHOT

DROP SNAPSHOT

블록 스토리지 볼륨의 스냅샷(snapshot)을 제거하는 명령이에요. 스냅샷은 고객이 비용을 지불하는 영속 데이터예요. DROP SNAPSHOT은 Snowflake에 그 데이터를 삭제하라고 지시하며, 데이터는 더 이상 스냅샷으로 사용할 수 없고 고객도 더 이상 비용을 지불하지 않아요.

출처: 문서

본문

구문 (Syntax)

DROP SNAPSHOT [ IF EXISTS ] <name> ;

파라미터

  • name — 삭제할 스냅샷의 식별자를 지정해요. 식별자에 공백이나 특수 문자가 포함되면 전체 문자열을 큰따옴표로 묶어야 해요. 큰따옴표로 묶은 식별자는 대소문자를 구분해요.

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

이 작업을 실행하는 역할은 최소한 다음 권한을 가져야 해요:

Privilege Object Notes
OWNERSHIP Snapshot OWNERSHIP은 객체 생성 역할에 자동 부여되는 특수 권한이지만, 소유 역할(또는 MANAGE GRANTS 권한이 있는 역할)이 GRANT OWNERSHIP 명령으로 다른 역할에 이전할 수도 있어요.

스키마에서 객체를 운영하려면 부모 데이터베이스에 대한 권한이 하나 이상, 부모 스키마에 대한 권한이 하나 이상 필요해요.

사용 메모 (Usage notes)

  • IF EXISTS 절을 지정했을 때 대상 객체가 존재하지 않으면, 명령은 오류를 반환하지 않고 성공적으로 완료돼요.
  • 스냅샷을 삭제해도 시스템에서 즉시 제거되지는 않아요. 삭제된 스냅샷의 버전은 부모 스키마, 데이터베이스, 또는 계정의 DATA_RETENTION_TIME_IN_DAYS 파라미터가 지정한 일수만큼 Time Travel에 유지돼요. Time Travel 보존 기간 내에서는 UNDROP SNAPSHOT 명령으로 삭제된 스냅샷을 복원할 수 있어요.
  • Time Travel 보존 기간이 지나면 영구적으로 제거되며 다시 만들어야 해요.
  • 보존 없이 스냅샷을 즉시 삭제하려면 스냅샷이 있는 스키마 수준에서 DATA_RETENTION_TIME_IN_DAYS를 0으로 설정해요. 이 설정은 해당 스키마의 다른 객체의 보존 기간에도 영향을 미쳐요.

예시 (Examples)

example_snapshot이라는 스냅샷을 삭제해요:

DROP SNAPSHOT example_snapshot;

+----------------------------------------+
| status                                 |
|----------------------------------------|
| EXAMPLE_SNAPSHOT successfully dropped. |
+----------------------------------------+

더 알아보기 (Learn more)