데이터 모델링의 핵심 개념 설명
분석 모델을 사용하면 분석을 지원하도록 데이터를 구조화할 수 있습니다. 모델은 관련 데이터 테이블을 기반으로 하며 분석하거나 보고하려는 숫자 값(측정값이라고 함) 및 집계할 엔터티(차원이라고 함)을 정의합니다. 예를 들어 모델에는 매출(예: 수익 또는 수량)에 대한 숫자 측정값과 제품, 고객 및 시간에 대한 차원이 포함된 테이블이 포함될 수 있습니다. 이렇게 하면 하나 이상의 차원에 걸쳐 판매 측정값을 집계할 수 있습니다(예: 고객별 총 수익 또는 월별 제품별로 판매된 총 항목 수). 개념적으로 모델은 일반적으로 큐브라고 하는 다차원 구조를 형성하며, 여기서 차원이 교차하는 지점은 집계된 해당 차원의 측정값을 나타냅니다.
참고 항목
일반적으로 분석 모델을 큐브로 지칭하지만 3차원보다 많거나 적을 수 있습니다. 3차원 이상은 시각화하는 것은 쉽지 않습니다!
테이블 및 스키마
차원 테이블은 숫자 측정값(예: 제품 또는 고객)을 집계하려는 엔터티를 나타냅니다. 각 엔터티는 고유한 키 값이 있는 행으로 표시됩니다. 나머지 열은 엔터티의 특성을 나타냅니다. 예를 들어 제품에는 이름과 범주가 있고 고객에게는 주소와 도시가 있습니다. 대부분의 분석 모델에서는 시간에 따른 이벤트와 관련된 숫자 측정값을 집계할 수 있도록 시간 차원을 포함하는 것이 일반적입니다.
모델의 다양한 차원으로 집계되는 숫자 측정값은 팩트 테이블에 저장됩니다. 팩트 테이블의 각 행은 숫자 측정값이 연결된 기록된 이벤트를 나타냅니다. 예를 들어 아래 스키마의 판매 테이블은 개별 항목의 판매 트랜잭션을 나타내며 판매 수량 및 수익에 대한 숫자 값을 포함합니다.
팩트 테이블이 하나 이상의 차원 테이블과 관련된 스키마 유형을 별모양 스키마라고 합니다(단일 팩트 테이블과 관련된 5개의 차원이 있다고 가정합니다. 스키마는 5개의 뾰족한 별을 형성합니다!). 차원 테이블이 추가 세부 정보를 포함하는 추가 테이블과 관련된 더 복잡한 스키마를 정의할 수도 있습니다(예: 제품 테이블과 관련된 별도의 범주 테이블에서 제품 범주의 특성을 나타낼 수 있음). 이 경우 디자인을 눈송이 스키마라고 합니다. 팩트 테이블과 차원 테이블의 스키마는 모든 차원의 측정값 집계가 미리 계산되는 분석 모델을 만드는 데 사용됩니다. 매번 집계를 계산하는 것보다 분석 및 보고 작업의 성능이 훨씬 빨라집니다.
특성 계층
분석 모델에 대해 고려해야 할 마지막 한 가지 사항은 계층적 차원에서 여러 수준으로 집계된 값을 찾기 위해 신속하게 드릴업 또는 드릴다운할 수 있는 특성 계층 구조를 만드는 것입니다. 예를 들어 지금까지 설명한 차원 테이블의 특성을 고려합니다. 제품 테이블에서 각 범주에 명명된 여러 제품이 포함될 수 있는 계층 구조를 형성할 수 있습니다. 마찬가지로 고객 테이블에서 각 도시의 여러 명명된 고객을 나타내도록 계층 구조를 형성할 수 있습니다. 마지막으로 시간 테이블에서 연도, 월 및 일의 계층 구조를 형성할 수 있습니다. 계층 구조의 각 수준에 대해 미리 집계된 값을 사용하여 모델을 빌드할 수 있으므로 분석 범위를 빠르게 변경할 수 있습니다(예: 연도별 총 매출을 본 다음 드릴다운하여 월별 총 매출에 대한 세부 내역 확인).
Microsoft Power BI의 분석 모델링
Power BI을 사용하여 하나 이상의 데이터 원본에서 가져올 수 있는 데이터 테이블에서 분석 모델을 정의할 수 있습니다. 그런 다음, Power BI Desktop의 모델 탭에서 데이터 모델링 인터페이스를 사용하여 팩트 테이블과 차원 테이블 간의 관계를 만들고, 계층 구조를 정의하고, 테이블 필드에 대한 데이터 형식 및 표시 형식을 설정하고, 분석을 위한 풍부한 모델을 정의하는 데 도움이 되는 데이터의 다른 속성을 관리하여 분석 모델을 정의할 수 있습니다.