비용 대시보드
GenD의 비용 대시보드 기능은 Trino 쿼리 실행에 따른 리소스 비용을 추적하고, 팀/사용자별 예산을 설정하여 비용을 통제합니다.

:::info 쿼리 비용은 자동으로 적재됩니다 (v1.2+)
SQL 편집기나 POST /api/v1/query/execute 로 실행한 쿼리는 성공 시 자동으로
query_costs 에 기록됩니다. cpu_time_ms·wall_time_ms·scanned_bytes 는 Trino
코디네이터가 보고한 실측값입니다.
그 전에는 QueryCost 를 쓰는 코드가 POST /api/v1/cost/record 핸들러뿐이고 이를
호출하는 프로덕션 코드가 없어, 대시보드가 영구히 비어 있었습니다
(#3087, 2026-08-07 prod 실측).
:::
cost_units 는 어떻게 계산되나
측정값 3종과 달리 cost_units 는 유일한 파생값이라, 가격 모델을 코드에 박지 않고
설정으로 노출합니다.
cost_units = CPU초 × GEND_QUERY_COST_CPU_SECOND_WEIGHT
+ 스캔GB × GEND_QUERY_COST_SCANNED_GB_WEIGHT
| 설정 | 기본값 | 의미 |
|---|---|---|
GEND_QUERY_COST_RECORDING_ENABLED | true | 적재 자체를 끄려면 false |
GEND_QUERY_COST_CPU_SECOND_WEIGHT | 1.0 | CPU 1초당 단위 |
GEND_QUERY_COST_SCANNED_GB_WEIGHT | 1.0 | 스캔 1GB당 단위 |
기본값은 "1 단위 ≈ CPU 1초 또는 스캔 1GB" 라는 중립적 출발점입니다. 예산을 이 값에 연결하기 전에 실제 청구액과 대조해 보정하세요 — 기본 가중치는 실제 요금제를 반영한 값이 아닙니다.
:::note 「사용자」 열이 UUID 로 보이는 이유
비용 행의 사용자 식별자는 JWT sub(UUID) 입니다. 이 realm 의 사용자명 클레임은
이메일이라, 그대로 저장하면 비용 테이블에 PII 가 영구 적재됩니다 —
trino_identity.bind_user 가 같은 이유로 그 값을 금지합니다. 읽기 쉬운 이름이 필요하면
표시 시점에 사용자 디렉터리로 해석하는 것이 맞고, 저장 값을 바꾸는 것은 아닙니다.
:::
:::note 기록 실패는 쿼리를 실패시키지 않습니다 비용 적재는 쿼리가 이미 성공·커밋된 뒤에 수행되며, 실패해도 로그만 남기고 삼킵니다. 장부 기록 문제가 정상 완료된 쿼리를 에러로 바꾸지 않도록 한 설계입니다. :::
주요 기능
- 쿼리 비용 기록: 실행된 쿼리의 스캔 바이트, CPU 시간, 예상 비용을 자동 보관합니다
(외부 적재가 필요하면
POST /api/v1/cost/record도 그대로 사용 가능) - 비용 요약: 기간별, 사용자별, 카탈로그별 비용 집계를 조회합니다
- 예산 관리: 팀 또는 사용자별 월간 예산을 설정하고 사용률을 모니터링합니다
- 예산 초과 경고: 예산의 80%/100% 도달 시 알림을 발송합니다
비용 추적 항목
| 항목 | 설명 |
|---|---|
| scanned_bytes | 쿼리가 스캔한 데이터 크기 |
| cpu_time_ms | CPU 소모 시간 (밀리초) |
| estimated_cost | 산정된 비용 (단가 x 스캔량) |
| catalog | 쿼리 대상 카탈로그 |
| user | 쿼리 실행 사용자 |
사용 방법
- ⚙ 관리 콘솔 → 운영 & 모니터링 → 비용 대시보드 메뉴에서 비용 대시보드를 확인합니다
- 기간과 필터를 설정하여 비용 추이를 분석합니다
- 예산 설정 메뉴에서 팀별 월간 예산을 설정합니다
- 예산 사용률이 임계치를 초과하면 알림이 발송됩니다
API 엔드포인트
| Method | Path | Description |
|---|---|---|
| POST | /api/v1/cost/record | 쿼리 비용 기록 |
| GET | /api/v1/cost/queries | 쿼리 비용 목록 조회 |
| GET | /api/v1/cost/summary | 비용 요약 조회 |
| GET | /api/v1/cost/budget | 예산 상태 조회 |
| POST | /api/v1/cost/budget | 예산 설정/수정 |
이 페이지의 작업을 AI에게 자연어로 요청할 수 있습니다. 페이지 상단의 AI에게 요청 버튼을 클릭하거나, AI 에이전트 채팅에서 직접 질문하세요.
예시:
- "현재 비용 현황 알려줘"
- "이번 달 예산 사용량 보여줘"
자세한 내용은 AI Agent Chat 가이드를 참조하세요.