2024. 1. 26. 15:21ㆍit
snowflake 에서 비용을 확인하는 방법은 어려가지가 있다.
그 중 자주쓰는 클라우드 서비스 비용 계산 쿼리를 공유하겠다.
해당 쿼리는 sql 별로 비용을 계산하는 문법으로 스토리지 사이즈가 고정적인 사이트에서는 유용하다.
0. 비용이 발생되는 기준
Snowflake의 총 비용은 데이터 전송, 저장, 컴퓨팅 리소스 사용에 따라 결정됩니다. 이 비용은 크게 세 가지 컴퓨팅 리소스 사용 유형으로 나뉩니다:
가상 웨어하우스 컴퓨팅: 사용자가 관리하는 컴퓨팅 리소스로, 데이터 로딩, 쿼리 실행, DML 작업 등을 수행할 때 크레딧을 사용합니다. 웨어하우스가 활성화되는 순간부터 청구되며, 최소 청구 시간은 60초입니다.
서버리스 컴퓨팅: Snowflake가 관리하는 컴퓨팅 리소스로, 검색 최적화나 Snowpipe 같은 기능에 사용됩니다. 이 리소스는 자동으로 크기가 조정되어 비용을 최소화합니다.
클라우드 서비스 컴퓨팅: 인증, 메타데이터 관리, 액세스 제어와 같은 백그라운드 작업에 사용됩니다. 이 계층의 사용 요금은 일일 웨어하우스 사용량의 10%를 초과하는 경우에만 청구됩니다.
1. 쿼리 종류 별 비용
SELECT query_type,
SUM(credits_used_cloud_services) AS cs_credits,
COUNT(1) num_queries
FROM snowflake.account_usage.query_history
WHERE true
AND start_time >= TIMESTAMPADD(day, -1, CURRENT_TIMESTAMP)
GROUP BY 1
ORDER BY 2 DESC
아래 쿼리를 날리면 아래와 같이 나온다.
위 사진에서 보면 select 비용이 0.00017 이 나왔다. 그리고 다시 select 문을 날려보겠다.
그럼 사용 요금이 0.000311 비용이 발생한걸 확인 할 수 있다. 이처럼 select 한 쿼리의 비용이 얼마인지 계산해 한달 사용 요금을 계산할 수 있다.
2. 웨어 하우스별 비용
SELECT start_time,
warehouse_name,
credits_used_compute
FROM snowflake.account_usage.warehouse_metering_history
WHERE 1=1
AND warehouse_id > 0 -- Skip pseudo-VWs such as "CLOUD_SERVICES_ONLY"
ORDER BY 1 DESC, 2;
그럼 아래와 같이 비용이 나온다.
이상 snowflake sql 관련해서 정리를 끝내겠다.
'it' 카테고리의 다른 글
데이터 샘플링 VS GROUP BY 조회 성능 비교 (0) | 2024.02.15 |
---|---|
snowflake 성능 및 비용 테스트 결과 ( aws athena 와 비교 ) (0) | 2024.02.06 |
SnowFlake 와 AWS Connetcion ( feat. SQL ) (0) | 2024.01.26 |
주식 예측 AI 개발 노트 (0) | 2023.11.17 |
LangChain과 MongoDB 연동 (feat. sentence_transformers ) (0) | 2023.11.08 |