같은 변화

운영 중인 샤드 3개에 새 샤드 1개를 추가할 때, 핵심 차이는 배치 기준 전체가 바뀌는지 아니면 한 해시 구간만 새 샤드가 맡는지입니다.

비교 1 일반 해시

노드 수가 바뀌면 해시 식도 같이 바뀜

hash(key) % N에서 N이 직접 바뀌므로, 기존 키도 대부분 새 기준으로 다시 계산됩니다.

% 3 → % 4
K1 7 % 3 → S2 7 % 4 → S4
K2 8 % 3 → S3 8 % 4 → S1
K3 10 % 3 → S2 10 % 4 → S3
K4 11 % 3 → S3 11 % 4 → S4
결과 거의 전체 재배치

새 샤드가 들어오면 일부 키만 늘어나는 게 아니라, 기존 키의 목적지 자체가 대거 바뀝니다.

비교 2 일관성 해싱

해시 링에 새 샤드를 끼워 넣고 그 앞 구간만 넘김

키와 샤드를 같은 해시 공간에 두고, 키는 시계 방향으로 처음 만나는 샤드에 저장됩니다.

구간만 이동
추가 전
S1 이 구간의 키 보관
S2 다음 구간 담당
S3 나머지 키 유지
S1 링이 다시 이어짐
추가 후
S1 기존 범위 유지
S4 S1과 S2 사이
키만 가져감
S2 나머지 범위 유지
S3 영향 없음
결과 한 구간만 재배치

새 샤드 S4 앞의 해시 범위에 있던 키만 이동하고, 나머지 키는 기존 샤드에 그대로 남습니다.

학습 포인트: 일관성 해싱은 샤드 추가·제거 시 전체 해시 기준을 다시 짜지 않고, 새 샤드가 차지한 일부 구간의 책임만 재조정하므로 데이터 이동량과 운영 충격을 줄입니다.