SHARD KEY
좋은 샤드 키는 분산과 쿼리 라우팅을 동시에 만족한다
샤드 키는 데이터가 어디에 저장되는지뿐 아니라 어떤 쿼리가 빠르고 어떤 쿼리가 비싸지는지도 결정한다.
Cardinality
Distribution
Targeting
1
높은 카디널리티
값 종류가 많아야 샤드가 충분히 나뉜다.
2
균등한 분포
특정 값이나 최신 범위에 쓰기가 몰리지 않아야 한다.
3
쿼리와 일치
자주 쓰는 조건에 샤드 키가 포함되어야 targeted query가 된다.
4
변경 안정성
샤드 키 값이 자주 바뀌면 이동 비용과 복잡도가 커진다.