Sharded Cluster
- 모든 샤드는 레플리카 셋으로 구성되어 있다.
* 샤딩 : 하나의 큰 데이터를 여러 장비에 걸쳐서 데이터를 분할하는 과정. Scale-out을 위한 솔루션
* 샤드 : 분할된 데이터셋의 모음
- Shard, Router, Config Server로 구성됨
- 모든 컬렉션이 샤딩될 필요는 없다.
- 샤딩은 Shard Key를 선정해야 하고 해당 필드에는 인덱스가 만들어져 있어야 한다.
- 컬렉션 단위 > 청크 단위로 분할(샤딩)한다.
- Ranged Sharding, Hashed Sharding(균등한 분산 => 권장), Zone Sharding(주로 다른 방식과 함께 사용)
장점
- 용량의 한계를 극복할 수 있다.
- 데이터 규모, 부하가 크더라도 처리량이 좋다.
- 고가용성(HA) 보장
- 하드웨어에 대한 제약 해결
단점
- 관리가 비교적 복잡하다.
- Replica Set과 비교해서 쿼리가 느리다.
=> Write에 대한 부하가 클 때는 샤디드 클러스터를 사용해야 할 수 있다.
'프로젝트 & TIL > 일별 공부 기록 (백엔드 스쿨)' 카테고리의 다른 글
86일차 - AWS, 테라폼 (0) | 2023.06.26 |
---|---|
85일차 - MongoDB Replica Set vs Sharded Cluster, Strorage Engine (0) | 2023.06.23 |
83일차 - Stomp를 이용한 채팅 기능 구현하기 (0) | 2023.06.21 |
82일차 - 웹소켓을 이용한 기본적인 채팅 기능 구현하기 (0) | 2023.06.21 |
81일차 - 프로젝트 진행 시 참고사항 (0) | 2023.06.19 |