디멘션 속성
디멘션 속성 (Dimension properties)
디멘션(dimensions)은 집계할 수 없는 표현식으로, 메트릭을 어떻게 그룹화하거나 자를지 정의해요. 항상 시맨틱 모델 안에서 선언되며, 개념과 예시는 Dimensions 문서에서 확인할 수 있어요.
출처: 문서
본문
디멘션은 집계할 수 없는 표현식으로, 메트릭을 그룹화하거나 자르는(slice) 방식을 정의해요. 항상 시맨틱 모델 안에서 정의되며, 개념과 예시는 Dimensions 문서를 참고하세요.
최신 YAML 스펙은 다음 환경에서 지원돼요:
- dbt platform (v1 Latest release track)
- dbt v2
- dbt v1.12
자세한 내용은 Migrate to the latest YAML spec을 참고하세요.
(dbt v1.12 이상에 적용)
최신 스펙 (모델 YAML)
디멘션은 컬럼 레벨에서 정의돼요.
컬럼 레벨 배치 (최신 스펙)
다음 키들을 시맨틱 모델의 columns: 목록 아래 컬럼에 추가해요 — dimension: 객체 안에 중첩하지 않아요.
| 위치 | 타입 | 필수 | 설명 |
|---|---|---|---|
dimension: |
block 또는 shorthand | 예 (디멘션 정의 시) | 디멘션을 컬럼에 연결해요. 매핑(dimension:과 type 등)이나 shorthand(dimension: categorical / dimension: time)를 사용해요. |
granularity: |
string | time 디멘션이면 예 | 기반 컬럼 데이터의 시간 단위(예: day, week, month). granularity:를 컬럼에 dimension: 옆에 두지, dimension: 블록 안에는 두지 않아요. categorical 디멘션에서는 granularity가 의미 없어요; YAML에 나타나면 검증이 오류를 표시해야 해요. |
dimension: 블록 안의 속성 (최신 스펙)
| 속성 | 타입 | 필수 | 설명 |
|---|---|---|---|
type |
string | 예 | time 또는 categorical. |
name |
string | 아니요 | 시맨틱 모델 내에서 고유하며, 기본값은 컬럼 이름이에요. |
description |
string | 아니요 | 디멘션에 대한 문서화. |
label |
string | 아니요 | 다운스트림 도구에서의 표시 값. |
is_partition |
boolean | 아니요 | 이 디멘션이 모델의 파티션 디멘션인지 여부 (YAML에서 time, categorical 디멘션 모두 지원). |
config |
object | 아니요 | 메타데이터와 구성. |
validity_params |
object | 아니요 | time 디멘션: SCD 스타일 유효성(예: is_start, is_end). |
파생 디멘션(Derived dimensions): 단일 컬럼에 묶이지 않는 expr로 디멘션을 정의하려면 시맨틱 모델의 선택적 derived_semantics.dimensions 목록을 사용해요. 이 구조는 컬럼의 dimension: 블록에 중첩된 속성이 아니라 시맨틱 모델 구성(columns:와 함께)의 일부예요. 예시는 Semantic models와 Dimensions를 참고하세요.
- 컬럼 레벨: 모델의
columns:목록에서 각 컬럼은 time 또는 categorical 타입의dimension:블록과 선택적으로name,description,label,is_partition,config를 가질 수 있어요. - Time 디멘션: 컬럼은 상위 레벨
granularity:(예:day)도 가져야 해요. - 유효성 (SCD): time 디멘션은
validity_params(예:is_start,is_end)를 지정할 수 있어요.
개념과 사용 패턴은 Dimensions를, 최신 스펙은 Semantic models를 참고하세요.
더 알아보기 (Learn more)
- Dimensions — 디멘션의 개념과 예시
- Semantic models — 시맨틱 모델 속성 (디멘션 선언 위치)
- Migrate to the latest YAML spec — 최신 YAML 스펙 마이그레이션