샤딩

단점

  1. 재샤딩에 비용이 많이 든다 : 추후, 수요가 증가/감소해 서버를 추가/제거하는 경우 데이터를 재샤딩하는 것이 복잡하다. 데이터를 샤딩하기 위해 주어진 조건에 따라 데이터를 다시 정렬해야 하므로, 비용이 많이 든다.
  2. 샤드는 불균형이 될 수 있다 : 샤드를 나누는 방식에 따라 데이터 불균형이 발생할 수 있다.
  3. 샤드 병합이 복잡하다
  4. Join 비용이 증가한다 : 데이터가 여러 서버에 분산되어 있는 경우 모든 서버에서 조인 작업을 수행해야 하므로 매우 복잡하다.

샤딩 종류

1. Hash Sharding

https://user-images.githubusercontent.com/50009240/273464557-87289448-38f8-4b1d-a72e-1f46e5291595.png

2. Range Based Sharding