나의 잡다한 노트 및 메모
Dimension 이란 용어란? 본문
Dimension"은 주로 데이터 웨어하우스나 OLAP(Online Analytical Processing) 시스템에서 사용되는 용어로, 사실(Measure) 데이터를 설명하거나 분류하는 데 사용되는 속성 또는 범주를 의미한다.
주요 개념
- 정의:
Dimension은 데이터 분석에서 맥락(context)을 제공하는 설명적 요소입니다. 예를 들어, 판매 데이터의 경우 "제품", "지역", "시간" 등이 각각 하나의 dimension이 될 수 있습니다. - 역할:
- 데이터 분류: Dimension을 사용하면, 데이터를 다양한 관점에서 집계하고 분석할 수 있습니다. 예를 들어, 제품별, 시간별, 지역별 판매량을 분석할 수 있습니다.
- 슬라이싱 및 다이싱: Dimension을 기준으로 데이터를 필터링(슬라이싱)하거나, 여러 Dimension의 조합으로 데이터를 재구성(다이싱)하여 보다 심층적인 분석이 가능합니다.
- 컨텍스트 제공: Dimension은 데이터의 수치를 해석할 수 있는 배경 정보를 제공함으로써, 단순한 숫자 이상의 인사이트를 얻을 수 있게 도와줍니다.
데이터 모델링에서의 활용:
- 스타 스키마: 사실 테이블(Fact Table)과 여러 Dimension 테이블(Dimension Table)로 구성된 데이터 모델에서는, Dimension 테이블이 분석에 필요한 상세 정보를 저장하고, 사실 테이블의 각 데이터와 연관되어 분석이 용이하게 합니다.
- 스노우플레이크 스키마: Dimension 테이블을 추가적으로 정규화하여 여러 하위 테이블로 분리하는 방식도 있으며, 이를 통해 중복을 줄이고 데이터 무결성을 유지할 수 있습니다.
예시
만약 판매 데이터가 있다면:
- Fact (사실 데이터): 판매 수치, 매출 금액 등
- Dimensions (차원):
- 제품 Dimension: 제품 이름, 카테고리, 브랜드 등
- 시간 Dimension: 연도, 분기, 월, 일 등
- 지역 Dimension: 도시, 국가, 지역 등
이렇게 각각의 Dimension을 이용하여, 예를 들어 "2024년 1월에 가장 많이 팔린 제품은 무엇인가?"와 같은 질문에 답할 수 있습니다.
요약하면, Dimension은 데이터를 다양한 관점으로 해석하고 분석할 수 있도록 도와주는 분류 기준이나 설명적 속성을 의미합니다.
'DB > SQL' 카테고리의 다른 글
인덱스(INDEX) 생성 하는 예 (0) | 2025.03.02 |
---|---|
fact 란? (0) | 2025.03.02 |
ROLLUP 이란? (0) | 2025.03.01 |
DB에서 쓰이는 함수들 (0) | 2025.02.22 |
DB에서 Join의 필요성 (0) | 2025.02.06 |