예산을 사용하여 크레딧 사용 모니터링하기

예산은 Snowflake 계정 또는 Snowflake 오브젝트의 사용자 지정 그룹의 컴퓨팅 비용 에 대한 월간 지출 한도를 정의합니다. 지출 한도를 초과할 것으로 예상되면 알림이 전송됩니다. 이 알림을 이메일 주소 목록, 클라우드 서비스(Amazon SNS, Azure Event Grid 또는 Google Cloud PubSub) 또는 타사 시스템(예: Slack, Microsoft Teams 또는 PagerDuty)의 웹훅으로 보내도록 예산을 구성할 수 있습니다.

계정 예산 및 사용자 지정 예산

계정 예산 은 계정의 모든 크레딧 사용에 대한 지출을 모니터링합니다.

사용자 지정 예산 을 생성하여 지원되는 특정 오브젝트 그룹에 대한 지출 제한을 모니터링할 수도 있습니다.

두 가지 유형의 예산 모두 지출 한도를 설정하고 알림 수신 방법을 지정해야 합니다.

Snowflake에서 예산을 사용하기 시작하려면 계정 예산을 활성화하십시오.

지출 한도 및 시간 간격

지출 한도는 Snowflake 크레딧으로 표현되며 경고 및 알림 목적으로만 사용됩니다. 지출 한도는 달력상 한 달의 시간 간격으로 설정됩니다.

시간 간격은 매월 1일 12:00AM UTC에 시작하여 매월 말일 11:59PM UTC에 끝납니다. 해당 월의 1일 이후에 예산이 생성된 경우 첫 번째 모니터링 간격은 해당 월 말일까지의 기간이며, 다음 달 1일에 재설정됩니다.

매월 1일 이후에 계정 예산 을 활성화하면 해당 월초부터 시작되는 데이터가 백필되어 해당 월의 지출 한도를 초과하려고 하는지 결정하는 데 사용됩니다.

해당 월의 1일 이후에 *사용자 지정 예산*을 생성하는 경우 해당 월의 과거 데이터는 태그를 사용하여 예산에 추가된 리소스에 대해서만 백필됩니다. 개별적으로 추가된 리소스의 데이터는 백필되지 않습니다.

참고

태그를 사용하는 대신 사용자 지정 예산 생성 :emph:` 및 ` 예산에 개별적으로 리소스를 추가하는 경우 다음 사항을 고려합니다.

  • 해당 리소스의 향후 지출 예측은 예산이 활성화된 후의 일수에 대한 크레딧 사용만을 기반으로 합니다.

  • 첫 달의 예산을 초과할 수 있습니다. 리소스에 대한 데이터가 백필되지 않으므로 예측이 올바르지 않을 수 있습니다. 이후의 달은 지출 기록을 기반으로 크레딧 사용을 올바르게 예측합니다.

지원되는 서비스

예산은 다음 서비스에 대한 크레딧 사용을 모니터링합니다. 테이블을 사용하여 사용자 지정 예산이 서비스를 지원하는지 여부와 서비스와 연결된 오브젝트를 확인합니다.

참고

서버리스 기능에 대한 계정 예산 지원은 Account Usage METERING_HISTORY 뷰 뷰에서 서비스 유형의 사용 가능 여부에 따라 달라집니다.

서비스

계정 예산

사용자 지정 예산

오브젝트

AI_SERVICES

AUTO_CLUSTERING

테이블

COPY_FILES

데이터베이스

DATA_QUALITY_MONITORING

테이블

HYBRID_TABLE_REQUESTS

MATERIALIZED_VIEW

구체화된 뷰

PIPE

파이프

QUERY_ACCELERATION

웨어하우스

REPLICATION

데이터베이스, 복제 그룹

SEARCH_OPTIMIZATION

테이블

SERVERLESS_ALERTS

경고

SERVERLESS_TASK

작업

SNOWPARK_CONTAINER_SERVICES

컴퓨팅 풀

SNOWPIPE_STREAMING

테이블

WAREHOUSE_METERING

웨어하우스

예산 알림

현재 지출이 시계열 예측을 기반으로 지출 한도를 초과할 것으로 보이면 예산에서 일일 경고 알림을 보냅니다.

자동 경고 알림을 받으려면 계정 예산 활성화 및 사용자 지정 예산 만들기의 일부로 다음을 수행해야 합니다.

  • 예산에 대한 지출 한도 설정.

  • 예산에 대한 알림을 받는 방법을 지정합니다.

자세한 내용은 예산 알림 섹션을 참조하십시오.

예산 역할 및 권한

예산을 다루는 사용자 지정 역할을 계정에서 활성화하려면 다음과 같은 역할과 권한을 부여하면 됩니다.

참고

Snowflake는 예산을 포함한 모든 비용 관련 기능에 대한 액세스를 제어하는 애플리케이션 역할과 데이터베이스 역할을 제공합니다. 예산별 역할 및 권한으로 작업하는 대신 사용자 지정 역할에 이러한 역할을 부여하는 방법에 대한 자세한 내용은 비용 관리를 위한 액세스 제어 섹션을 참조하십시오.

계정 예산을 관리하는 애플리케이션 역할

계정의 사용자 지정 역할에 다음 애플리케이션 역할을 부여하여 계정 예산을 모니터링하거나 관리할 수 있습니다.

애플리케이션 역할

설명

BUDGET_VIEWER

예산 사용 데이터를 보고 예산에 포함된 리소스를 나열할 수 있는 역할을 활성화합니다.

BUDGET_ADMIN

계정 예산을 활성화 또는 비활성화하고 지출 한도, 사용할 알림 통합, 알림을 받을 이메일 주소 목록, 알림 음소거 설정 등 예산의 속성을 수정할 수 있는 역할을 활성화합니다.

애플리케이션 역할 외에도 계정 예산을 모니터링하거나 관리하는 사용자 지정 역할을 활성화하려면 부여해야 하는 다른 필수 권한이 있습니다. 자세한 내용은 필수 역할 및 권한 섹션을 참조하십시오.

사용자 지정 예산을 관리하는 인스턴스 역할

각 사용자 지정 예산에는 예산을 보거나 수정하도록 다른 역할에 부여할 수 있는 인스턴스 역할이 있습니다.

인스턴스 역할

설명

VIEWER

예산 사용 데이터를 볼 수 있는 역할을 활성화합니다.

ADMIN

지출 한도, 사용할 알림 통합, 알림을 받을 이메일 주소 목록, 알림 음소거 설정, 그룹의 오브젝트 등 예산의 속성을 수정하는 역할을 활성화합니다.

인스턴스 역할 외에도 사용자 지정 역할이 사용자 지정 예산을 생성, 모니터링 또는 수정할 수 있도록 하려면 부여해야 하는 다른 필수 권한이 있습니다. 자세한 내용은 필수 역할 및 권한 섹션을 참조하십시오.

필수 역할 및 권한

애플리케이션 또는 인스턴스 역할 외에도 예산을 모니터링하거나 관리하려면 사용자 지정 역할에 다음 권한을 부여해야 합니다.

권한 또는 역할

예산 유형

만들기

관리하다

모니터

참고

USAGE_VIEWER

둘 다

사용자 지정 역할에 Snowflake 데이터베이스 역할 USAGE_VIEWER를 부여합니다.

USAGE

Custom

사용자 지정 예산이 포함된 데이터베이스에 USAGE 권한을 부여합니다.

USAGE

Custom

사용자 지정 예산이 포함된 스키마에 USAGE 권한을 부여합니다.

SNOWFLAKE.BUDGET_CREATOR

Custom

사용자 지정 예산을 생성할 수 있도록 이 데이터베이스 역할을 사용자 지정 역할에 부여합니다.

CREATE SNOWFLAKE.CORE.BUDGET

Custom

사용자 지정 예산을 포함할 스키마에 이 권한을 부여합니다.

APPLYBUDGET

Custom

사용자 지정 예산에서 추가하거나 제거할 각 오브젝트에 대해 부여해야 합니다.

USAGE

Custom

사용자 지정 예산에서 스키마 오브젝트를 추가하거나 제거하려면 해당 오브젝트가 포함된 데이터베이스와 스키마에 대해 이 권한을 부여해야 합니다.

자세한 내용과 예제는 다음 섹션을 참조하십시오.

제한 사항

Budgets에 대한 제한은 다음과 같습니다.

  • BUDGET 클래스의 인스턴스는 대상 계정에 복제할 수 없습니다.

  • 계정에는 최대 100개의 사용자 지정 예산이 포함될 수 있습니다.

  • 현재, Budgets는 하이브리드 테이블 에 대한 비용 모니터링을 지원하지 않습니다.

  • 다음 계정 수준 매개 변수는 설정을 해제하거나 기본값으로 설정해야 합니다.

    • AUTOCOMMIT 를 설정 해제하거나 TRUE 로 설정해야 합니다.

      이 매개 변수가 FALSE 로 설정되어 있으면 예산 활성화가 실패하거나 사용량이 올바르게 추적되지 않을 수 있습니다.

    • TIMESTAMP_INPUT_FORMAT 및 :ref:`label-date_input_format`을 설정 해제하거나 AUTO로 설정해야 합니다.

      이러한 매개 변수가 AUTO로 설정되지 않은 경우, 사용량이 올바르게 추적되지 않을 수 있습니다.

    예산 기능을 활성화하기 전에 SHOW PARAMETERS 명령을 실행하여 이러한 매개 변수의 값을 확인 하십시오.

    SHOW PARAMETERS LIKE 'AUTOCOMMIT' IN ACCOUNT;
    
    Copy
    SHOW PARAMETERS LIKE 'TIMESTAMP_INPUT_FORMAT' IN ACCOUNT;
    
    Copy
    SHOW PARAMETERS LIKE 'DATE_INPUT_FORMAT' IN ACCOUNT;
    
    Copy

    참고

    이러한 매개 변수는 계정 수준에서 설정해야 합니다. 매개 변수를 더 낮은 수준(예: 세션 수준)에서 설정해도 예산 활성화나 사용량 추적에는 영향을 미치지 않습니다.