해시 키 재배치 문제

일반적으로 해시 함수를 이용해 키를 배치하면 다음과 같다. 각 key를 저장할 서버 인덱스를 선택할 때 hash(key) % 서버수로 계산한다.

스크린샷 2023-10-23 오후 11.15.07.png

이때 서버 한대를 삭제하고 hash(key) % 서버수로 다시 계산하면 대부분의 키가 재배치되고 대규모 캐시 미스가 발생한다.

스크린샷 2023-10-23 오후 11.16.50.png

안정 해시

안정 해시는 서버 수가 쉽게 변하는 환경에서 키 재배치를 최소화하는 해시 설계 기법이다.

(가상 노드를 많이 두면) 데이터가 균등 분포하게 되므로 수평적 규모 확장성을 달성하기 쉽다.

(가상 노드를 많이 두면) 데이터를 균등하게 분배하므로 핫스팟 키 문제를 줄일 수 있다.

해시 설계 방법