CREATE SNAPSHOT POLICY — Deprecated

CREATE SNAPSHOT POLICY — Deprecated

CREATE SNAPSHOT POLICY 명령은 스냅샷 정책(snapshot policy)을 만드는 명령이었어요. 더 이상 사용되지 않습니다(Deprecated). 대신 CREATE BACKUP POLICY를 사용하세요.

출처: CREATE SNAPSHOT POLICY — Deprecated

본문

스냅샷 정책을 만드는 명령이었습니다. Standard & Business Critical 기능 / Deprecated Feature.

정책을 하나 이상의 스냅샷 세트와 연결해요. 정책의 설정은 그 정책을 사용하는 각 스냅샷 세트의 스케줄과 만료 기간을 정의합니다. 스케줄은 Snowflake가 자동으로 백업을 만들고 결과 스냅샷을 정책이 관리하는 스냅샷 세트에 추가하는 빈도를 결정하고, 만료 기간은 각 스냅샷이 Snowflake가 연결된 스냅샷 세트에서 자동으로 삭제하기 전까지 보관되는 기간을 결정해요.

CREATE OR ALTER SNAPSHOT POLICYCREATE OR ALTER BACKUP POLICY의 별칭으로도 지원됩니다.

스냅샷 정책은 스냅샷 세트에 선택 사항이에요. 예약 백업, 보존 잠금, 만료 기간이 필요하지 않으면 스냅샷 세트를 스냅샷 정책 없이 만들 수 있어요. ALTER SNAPSHOT SET을 사용해 기존 스냅샷 세트에 스냅샷 정책을 나중에 적용하거나, 스냅샷 정책에 지정된 예약 백업을 일시 중지·재개할 수도 있습니다.

관련: ALTER SNAPSHOT POLICY — Deprecated, DROP SNAPSHOT POLICY — Deprecated, SHOW SNAPSHOT POLICIES — Deprecated, CREATE SNAPSHOT SET — Deprecated, ALTER SNAPSHOT SET — Deprecated

Syntax

CREATE [ OR REPLACE ] SNAPSHOT POLICY [ IF NOT EXISTS ] <name>
   [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]
   [ WITH RETENTION LOCK ]
   [ SCHEDULE = '{ <num> MINUTE | <num> HOUR | USING CRON <expr> <time_zone> }' ]
   [ EXPIRE_AFTER_DAYS = <days_integer> ]
   [ COMMENT = <string> ]

Required parameters (필수 파라미터)

  • name — 스냅샷 정책의 식별자예요. 계정에서 고유해야 합니다. 또한 식별자는 알파벳 문자로 시작해야 하고, 전체 식별자 문자열을 큰따옴표로 감싸지 않는 한 공백이나 특수 문자를 포함할 수 없어요 (예: "My object"). 큰따옴표로 감싼 식별자는 대소문자를 구분합니다. 자세한 내용은 Identifier requirements 문서를 참고하세요.

Optional parameters (선택 파라미터)

  • OR REPLACE — 이 이름의 스냅샷 정책이 이미 있으면 삭제하고 새로 만들어요. IF NOT EXISTS와 상호 배타적입니다.
  • IF NOT EXISTS — 같은 이름의 스냅샷 정책이 없을 때만 만듭니다. 이미 있으면 아무 효과 없이 성공 메시지를 반환해요. OR REPLACE와 상호 배타적입니다.
  • TAG ( ... ) — 태그 이름과 태그 문자열 값을 지정해요. 태그 값은 항상 문자열이며 최대 문자 수는 256이에요. 태그 지정 방법은 Tag quotas 문서를 참고하세요.
  • WITH RETENTION LOCK — 스냅샷의 필수 보존 기간을 지정해요. 보존 잠금이 있는 스냅샷은 권한 있는 사용자도 삭제할 수 없습니다.

    참고 APPLY SNAPSHOT RETENTION LOCK 권한이 있는 사용자만 보존 잠금으로 스냅샷 정책을 만들 수 있어요. 중요 보존 잠금이 있는 스냅샷 정책을 스냅샷 세트에 적용하는 것은 되돌릴 수 없어요. 규제 준수에 필요한 강력한 보장 때문에, 스냅샷 세트에 보존 잠금을 걸면 그 잠금을 취소할 수 없습니다. Snowflake 지원도 취소할 수 없어요. 긴 만료 기간의 스냅샷 세트에 보존 잠금을 설정하기 전에 신중히 계획해 예상치 못한 스토리지 비용을 피하세요. Snowflake 조직이 삭제되면(조직이 더 이상 고객이 아닐 때) Snowflake는 보존 잠금이 있는 스냅샷을 포함한 모든 스냅샷을 삭제합니다. 조직 삭제는 Snowflake 지원의 개입이 필요하며 관리자가 실수로 할 수 있는 일이 아닙니다.

  • SCHEDULE = '{ <num> MINUTE | <num> HOUR | USING CRON <expr> <time_zone> }' — 객체의 스냅샷을 만드는 스케줄을 지정해요.

    참고 스냅샷의 최소 스케줄은 60분 또는 1시간이어야 합니다. 각 스냅샷 정책은 스케줄과 만료 기간 속성 중 하나 또는 둘 다를 가져야 해요. 자세한 내용은 Backup policy 문서를 참고하세요. 모호함을 피하기 위해 다음 상황에서 기준 간격 시간(base interval time)이 설정됩니다: 기준 간격 시간은 현재 시계 시간부터 간격 카운터를 시작해요. 예를 들어 INTERVAL 값이 10 MINUTES이고 예약 백업이 오전 9:03에 활성화되면, 다음 백업은 9:13, 9:23 등에 생성됩니다. 절대 정밀도를 보장하기 위해 최선을 다하지만, 백업이 설정 간격 전에 실행되지 않을 것만 보장합니다(즉 현재 예에서 백업이 처음 9:14에 실행될 수는 있지만 9:12에는 확실히 실행되지 않습니다).

  • EXPIRE_AFTER_DAYS = <days_integer> — 스냅샷이 만료될 때까지의 일 수를 지정해요. Snowflake는 만료된 스냅샷을 자동으로 삭제합니다. 이 파라미터를 지정하지 않으면 스냅샷은 세트에서 수동으로 삭제될 때까지 스냅샷 세트에 남아 있어요.

    참고 각 스냅샷 정책은 스케줄과 만료 기간 속성 중 하나 또는 둘 다를 가져야 해요. 자세한 내용은 Backup policy 문서를 참고하세요.

  • COMMENT = <string> — 스냅샷 정책에 대한 주석을 지정해요. 기본값: 값 없음

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

이 작업을 실행하는 데 사용되는 역할은 최소한 다음 권한을 보유해야 해요.

지정된 권한 집합으로 사용자 정의 역할을 만드는 방법은 Creating custom roles 문서를, 보안 객체에 대한 SQL 작업의 역할·권한 부여에 대한 일반적인 정보는 Overview of Access Control 문서를 참고하세요.

Usage notes (사용 참고 사항)

중요 스냅샷 정책에 보존 잠금이 적용되어 있고 스냅샷 세트에 만료되지 않은 스냅샷이 있다면 스냅샷 세트를 삭제할 수 없어요. 그 경우 세트의 모든 스냅샷이 만료될 때까지 기다려야 합니다. 이 제한은 ACCOUNTADMIN 같은 권한 있는 역할과 Snowflake 지원에도 적용됩니다. 따라서 스냅샷 정책에 보존 잠금과 긴 만료 기간을 지정할 때 주의하세요.

Examples (예제)

매시간 스냅샷을 만들고 90일 후 만료되는 스냅샷 정책을 만들어 봅시다.

CREATE SNAPSHOT POLICY hourly_snapshot_policy
  SCHEDULE = '60 MINUTE'
  EXPIRE_AFTER_DAYS = 90
  COMMENT = 'Hourly snapshots that expire after 90 days';

24시간마다 스냅샷을 만들고 90일 후 만료되는 보존 잠금이 있는 스냅샷 정책을 만들어 봅시다. 이 정책으로 만든 스냅샷은 만료 기간이 끝나기 전에는 수정하거나 삭제할 수 없어요.

CREATE SNAPSHOT POLICY daily_snapshot_policy_with_lock
  WITH RETENTION LOCK
  SCHEDULE = '1440 MINUTE'
  EXPIRE_AFTER_DAYS = 90
  COMMENT = 'regulatory backups expire after 90 days with retention lock';

스케줄에 cron 표현식을 사용하는 스냅샷 정책을 만들어 봅시다. 다음 문은 매주 화요일과 금요일 오후 11시에 스냅샷을 만드는 정책을 생성해요.

CREATE SNAPSHOT POLICY twice_weekly_snapshot_policy
  SCHEDULE = 'USING CRON 0 23 * * 2,5 UTC'
  EXPIRE_AFTER_DAYS = 7
  COMMENT = 'Twice-weekly snapshots that expire after 7 days';

더 알아보기 (Learn more)