CS 정리
DB 샤딩 vs 파티셔닝, 데이터 분산 처리
문쿼리
2025. 6. 23. 22:22
! 파티셔닝 (Partitioning)
테이블 내 row를 내부에서 특정 기준 별로 분류하여 활용하는 방식
ex) 주문 데이터의 조회 시 2022년 이전, 이후로 분류 현 시점에서 주문 테이블에 접근 시 2022년 이후 row만 활용하기 등
! 샤딩 (Sharding)
데이터베이스 자체를 나눠서 여러 서버에 분산하는 방식
ex) DB 에 있는 테이블을 각각 DB1, DB2, DB3에 나눠서 저장
구분 | 파티셔닝 (Partitioning) | 샤딩 (Sharding) |
나누는 대상 | 테이블 내부 (로우 단위) | DB 인스턴스 전체 |
저장 위치 | 같은 DB 서버 | 다른 DB 서버들 |
목적 | 쿼리 최적화 | 데이터/트래픽 분산 |
구현 난이도 | 낮음 (DB 설정) | 높음 (앱/인프라 설정) |
작은 규모 + 성능 개선 -> 파티셔닝
대규모 트래픽 + 수평 확장 -> 샤딩