2024 12 11
2024-12-11¶
DB sharding¶
참고: https://techblog.woowahan.com/2687/
- 개요
- DB 트래픽 분산의 목적
- 특정 DB의 장애가 전면 장애로 이어지지 않는다
- 모듈러샤딩/레인지샤딩 중 정할 수 있으며, DB마다 예측 가능한 데이터 성질에 따라 선택 추천
- 요구사항
- 모듈러/레인지 샤딩 둘다...
- 라우팅을 위해 구분할 수 있는 유일한 키값이 있을 것
- 올바른 DB를 찾을 수 있도록 라우팅이 될 것
- 설정으로 쉽게 증설이 가능할 것
- 모듈러/레인지 샤딩 둘다...
- 모듈러 샤딩
- PK를 모듈러 연산결과로 DB 특정
- 데이터 량이 일정 수준에서 유지될 것으로 예상 (데이터 균일 분산)
- 적재 속도가 그리 빠르지 않다면 모듈러 분산 처리 고려해볼만 함
- 레인지 샤딩
- PK 범위 기반으로 DB 특정
- 장점: 모듈러에 비해 증설에 재정렬 비용 X
- 단점: 일부 DB에 데이터 몰릴 수 있음
- PK 범위 기반으로 DB 특정