[Snowflake] Virtual Warehouse State

차지예·2026년 6월 9일

Snowflake

목록 보기
30/49
post-thumbnail

1. 웨어하우스의 3가지 상태 제어

가상 웨어하우스는 STARTED(=Running)SUSPENDED 상태를 오갈 수 있습니다.

동작SQL 명령어결과 상태설명
생성(기본)CREATE WAREHOUSE my_med_wh WITH WAREHOUSE_SIZE='MEDIUM';STARTED기본적으로 생성 시 STARTED 상태
일시중지ALTER WAREHOUSE my_wh SUSPEND;SUSPENDED컴퓨트 노드를 제거
재개ALTER WAREHOUSE my_wh RESUME;STARTED컴퓨트를 다시 프로비저닝, 쿼리 실행 가능

🔑 핵심

  • SUSPEND: 웨어하우스에서 모든 컴퓨트 노드를 제거(removes all compute nodes) 하고 'Suspended' 상태로 전환. → 크레딧 소비 중단.
  • RESUME: 컴퓨트 리소스를 프로비저닝하여 'Running' 상태로 전환. 웨어하우스 생성 후 resume = start와 동일.
  • 실행 중인 웨어하우스는 쿼리 실행 중에도 언제든 SUSPEND 가능.

📌 포인트

  • RESUME [ IF SUSPENDED ] 옵션:
    • 생략 시 → 이미 running 중인 웨어하우스를 resume 하면 에러 발생
    • IF SUSPENDED 명시 시 → running 상태여도 에러 없이 성공
  • 크레딧 과금: 초 단위 과금이지만 재개(resume)마다 최소 1분(60초) 청구. (보고는 시간 단위)

2. 웨어하우스 상태 속성 (State Properties)

생성/변경 시 자동화 동작을 제어하는 3가지 속성입니다.

① AUTO_SUSPEND

CREATE WAREHOUSE my_med_wh AUTO_SUSPEND=300;
  • 비활성(inactivity) 상태가 몇 초 지속되면 자동 일시중지할지 지정 (단위: 초)
  • 예: 300 = 5분 후 자동 중지

② AUTO_RESUME

CREATE WAREHOUSE my_med_wh AUTO_RESUME=TRUE;
  • SQL 문(쿼리)이 제출되면 자동으로 웨어하우스를 재개할지 지정
  • TRUE: 새 쿼리 제출 시 자동 재개
  • FALSE: ALTER WAREHOUSE 또는 웹 UI로 수동 재개해야만 시작

③ INITIALLY_SUSPENDED

CREATE WAREHOUSE my_med_wh INITIALLY_SUSPENDED=TRUE;
  • 웨어하우스를 처음에 'Suspended' 상태로 생성할지 지정
  • TRUE: 생성되지만 중지 상태
  • FALSE: 생성 후 바로 running 상태

3.📌핵심 정리

속성한 줄 요약
AUTO_SUSPEND놀면 → 끈다 (초 단위)초(seconds)
AUTO_RESUME쿼리 오면 → 켠다TRUE/FALSE
INITIALLY_SUSPENDED만들 때 → 꺼진 채로TRUE/FALSE

⭐ 추가 디테일 (공식 문서 보강)

  • 기본값: AUTO_SUSPEND, AUTO_RESUME 둘 다 기본 활성화(enabled) 상태.
  • AUTO_SUSPEND 비활성화: 웹 UI에서 Never 선택, 또는 SQL에서 0 또는 NULL 지정. (단, 크레딧 과다 소비 위험 → 권장하지 않음)
  • 멀티 클러스터 웨어하우스:
    • AUTO_SUSPEND/AUTO_RESUME는 개별 클러스터가 아니라 웨어하우스 전체에만 적용.
    • AUTO_SUSPEND: 최소 클러스터 수만 running이고 활동이 없을 때만 발생.
    • AUTO_RESUME: 웨어하우스 전체가 suspended(클러스터 0개)일 때만 적용.

0개의 댓글