Sharding은 일종의 Partition과 유사합니다. 하지만 분명한 다름이 존재합니다.
Partition은 동일한 저장소내에 분리하는 방식입니다. Sharding은 아예 물리적인 서버 자체를 분산시키는 개념입니다.
둘다 목적은 관리와 성능이 목적이죠. 판매테이블을 만든다면 이를 하나의 통 테이블로 만든다면 특정 조건의 데이터를 접근하기 위해 항상 모든 key를 검색해봐야겠지만 파티션으로 분리한다면 예를 들어, 년도를 기준으로 2020년, 2021년, 2022년 이렇게 분리한다면 조건에 따라서는 접근하는 비용이 상당히 줄어들게 됩니다.
Sharding은 아래 그림과 같이 2020년은 G1에, 2021년은 G2에, 2022년 G3로 분리/배치하는 형태입니다. Partition과 다르게 분리적으로 분산되어 있다보니 처리량의 증가를 꾀할 수 있습니다.
아울러 Goldilocks Cluster는 데이터가 증가한다면 G4, G5, G6 와 같이 서버를 추가하면서 데이터를 더 세분화하여 분산...
#
goldilocks
#
sharding
#
골디락스
원문 링크 : Sharding Table