데이터베이스를 확장하는 방법에는 여러 가지가 있습니다. 대표적으로 레플리케이션, 파티셔닝, 그리고 샤딩이 존재합니다.또한 데이터베이스의 성능을 개선하기 위한 방법으로는 인덱싱, 캐싱과 같은 기법들이 사용됩니다.이 중 샤딩은 가장 마지막에 고려되는 확장 전략으로 알려져 있습니다. 그 이유는 샤딩이 단순한 성능 최적화가 아니라,데이터 구조와 애플리케이션 설계 전반에 영향을 미치는 고위험한 선택이기 때문입니다.하지만 그만큼, 기존 방식으로는 감당할 수 없는 규모의 트래픽과 데이터를 처리해야 하는 상황에서는가장 강력한 확장 수단이 되기도 합니다. 이 글에서는 샤딩이 무엇인지 어떤 샤딩 전략들이 존재하는지 그리고 샤딩을 언제 사용하는 것이 적절한지를 중심으로 정리해보겠습니다.샤딩은 무엇일까?일단 샤딩이라는 단어 ..