Power BI에서 스키마 및 데이터 모델링

발행: (2026년 2월 2일 오전 01:56 GMT+9)
5 min read
원문: Dev.to

Source: Dev.to

Dimensional schemas

Star schema

Star schema는 Power BI에서 산업 표준 모델링 접근 방식입니다. 중앙에 fact table이 있고 그 주변에 dimension tables가 배치된 시각적 레이아웃에서 이름이 유래되었습니다. 별 모양을 닮았습니다.

Components of a star schema

  • Fact table – 정량적이거나 측정 가능한 데이터를 저장합니다(예: 매출액, 수량).
  • Dimension tables – 설명적인 데이터를 저장합니다(예: 날짜, 제품명).
  • Relationships – fact와 dimension 테이블이 어떻게 연결되는지, 필터가 어떻게 흐르는지를 정의합니다.

Features of dimension tables

  • Fields – 속성 값을 보유하는 열.
  • Primary keys – 각 행을 고유하게 식별하는 키.
  • Attributes – 설명적인 열(예: 제품 카테고리, 지역).
  • Foreign keys – fact table에 있는, dimension primary key를 참조하는 키.
  • Measures – fact 데이터 기반 계산(예: 총 매출).

Relationships in a star schema

  • One‑to‑Many – dimension 테이블의 한 행이 fact 테이블의 여러 행에 연결됩니다.
  • One‑to‑One – 한 테이블의 각 행이 다른 테이블의 정확히 한 행과 일치합니다.
  • Many‑to‑One – fact 테이블의 여러 행이 하나의 dimension 행에 연결됩니다.
  • Many‑to‑Many – 양쪽 테이블의 여러 행이 서로 매치될 수 있으며(브리지 테이블 필요).

Normalization vs. denormalization

  • Normalization은 데이터를 여러 관련 테이블에 저장해 중복을 줄입니다.
  • Denormalization은 분석 성능을 향상하고 보고서를 단순화하기 위해 관련 dimension 데이터를 넓은 테이블로 평탄화합니다.

Snowflake schema

Snowflake schema는 dimension 테이블을 제3정규형(3NF) 이상으로 정규화하여 보다 세분화되고 계층적인 구조를 만듭니다.

Key features of a snowflake schema

  • Normalized dimension tables – 반복 값을 없애기 위해 더 작은 서브 테이블로 분할됩니다.
  • Hierarchical structure – 차원들이 계층(예: 제품 → 카테고리 → 제조사)으로 조직됩니다.
  • Reduced data redundancy – 각 값을 한 번만 저장함으로써 일관성 문제를 최소화합니다.

Components of a snowflake schema

  • Fact table – 기본 정량 데이터를 저장하고 여러 외래키를 통해 dimension 테이블과 연결되는 핵심 테이블이며, 일반적으로 가장 큰 테이블입니다.
  • Normalized dimension tables – 설명적 컨텍스트를 제공하며 추가로 서브‑dimension 테이블로 분할됩니다.
  • Lookup tables – fact 테이블에 대한 첫 번째 수준의 설명을 제공합니다.
  • Sub‑dimension tables – 주요 dimension 테이블을 “snowflaking”하여 만든 서브 테이블로, 계층적 레이어를 형성합니다.

Key fields in a snowflake schema

  • Primary keys – dimension 및 sub‑dimension 테이블에서 고유 식별자(예: ProductID).
  • Foreign keys – fact 또는 dimension 테이블에 있는, 관련 primary key를 참조하는 필드.
  • Surrogate keys – 성능 향상을 위해 자연 비즈니스 키 대신 사용하는 시스템 생성 정수 키.

Importance of good modelling

  • 논리적 오류(예: 이중 집계 또는 누락 데이터)를 방지합니다.
  • 명확한 명명 규칙과 숨겨진 기술 필드는 비기술 사용자도 모델을 쉽게 이해하도록 합니다.
  • 중앙 fact table과 주변 dimension 간의 단순한 관계는 모호성을 줄여줍니다.
  • 중앙 집중식 dimension 테이블은 시각화 전반에 걸쳐 일관된 정의를 보장해 상충되는 합계를 방지합니다.
  • 모듈식 모델은 전체 시스템을 재구축하지 않고도 새로운 데이터 소스나 dimension을 추가할 수 있게 합니다.
Back to Blog

관련 글

더 보기 »

POWER BI의 스키마와 모델링

Data Modelling 프로세스는 효과적인 성능을 위해 데이터 테이블을 구조화하고, 조직화하며, 연결하는 것을 포함합니다. 좋은 데이터 모델을 설계하는 것은 중요합니다...

Power BI에서 데이터 모델링 및 스키마

Power BI에서 데이터 모델링 이해하기 – 데이터 모델 유형: 개념적 데이터 모델링 – 비즈니스가 필요로 하는 데이터와 개념 간의 관계를 정의합니다(예: 고객…).

데이터베이스 기초

📚 Database Fundamentals – Learning Notes 누구나 이해할 수 있는 쉬운 언어로 데이터베이스 기본을 배워보세요!