카테고리 없음
데이터베이스 체인형 vs 스타형 구조: 무엇이 다를까?
idea9329
2025. 6. 10. 15:09
반응형
데이터베이스 설계를 할 때, 어떤 구조를 선택하느냐는 성능과 유지보수에 큰 영향을 줍니다. 그중에서도 많이 비교되는 두 가지 구조가 바로 **체인형(Chain 구조)**과 **스타형(Star 구조)**입니다. 이 글에서는 두 구조의 차이점과 각 구조가 적합한 상황을 정리해드립니다.
체인형 구조란?
체인형 구조는 말 그대로 사슬처럼 이어진 테이블 구조입니다. 테이블 간 관계가 순차적이며, 마치 Linked List처럼 한 방향으로 흐르는 형태를 가집니다.
특징
- 테이블 간 1:1 또는 1\:N 관계로 연결
- 데이터가 단계적으로 이동하는 시스템에 적합
- 중간 테이블이 반드시 존재해야 상위 또는 하위 데이터 접근 가능
예시
상품 → 주문 → 배송정보 → 택배사 → 배송기사
장점
- 데이터 흐름을 따라가며 관리하기 쉬움
- 프로세스 기반 데이터 처리에 적합
단점
- 많은 JOIN 필요 → 성능 저하
- 중간 테이블 삭제/변경 시 전체 구조에 영향
스타형 구조란?
스타형 구조는 하나의 중심 테이블(Fact Table)을 중심으로 여러 테이블이 방사형으로 연결된 구조입니다. 주로 데이터 분석, 통계, BI 시스템에서 사용됩니다.
특징
- 중심 테이블이 기준
- 주변 테이블(Dimension Table)은 중심 테이블에 직접 연결
- 쿼리 성능이 뛰어나며, 데이터 분석에 최적화됨
예시
고객
\
상품 → [주문내역] ← 결제정보
/
배송정보
장점
- 다차원 분석에 유리
- 설계가 단순하여 쿼리 최적화 쉬움
- BI 도구와 궁합이 좋음
단점
- 정규화가 낮아 중복 데이터가 발생할 수 있음
- 구조 설계 초기부터 충분한 분석 필요
체인형과 스타형 구조 비교표
항목체인형 구조스타형 구조
구조 형태 | 선형(사슬처럼 이어짐) | 중심-방사형(별 모양) |
적합 용도 | 단계별 흐름 관리, 이력 추적 | 분석, 통계, BI 시스템 |
성능 | JOIN이 많아 느릴 수 있음 | 빠름 (분석 쿼리에 최적화) |
정규화 수준 | 높음 (중복 최소화) | 낮음 (성능 위해 중복 허용) |
유지보수 | 중간 테이블 변경 시 영향 큼 | 각 테이블 독립적으로 유지 가능 |
대표 사례 | 물류 추적, 생산 이력관리 | 판매 분석, 리포트 시스템 |
어떤 구조를 선택해야 할까?
- 프로세스 흐름을 추적하고 싶다면 ➜ 체인형 구조
- 매출 분석, 통계, 리포트를 효율적으로 처리하려면 ➜ 스타형 구조
데이터베이스는 목적에 따라 설계 방향이 달라져야 합니다. 처음 설계할 때 이 두 구조의 차이를 이해하고 선택한다면, 성능과 유지보수 면에서 큰 차이를 느끼게 될 것입니다.
반응형