DB

[Redis] Redis Cluster 데이터 분산과 Key 관리_뭔 말 인지 모르겠다.

Raconer 2024. 3. 12. 23:41
728x90

데이터를 분산하는 기준

  • 특정 key의 데이터가 어느 노드(shard)에 속할 것인지 결정하는 메커니즘이 있어야 함
  • 보통 분산 시스템에서 해싱이 사용됨
  • 단순 해싱으로는 노드의 개수가 변할 때 모든 매핑이 새로 계산 되어야 하는 문제가 있음

Hash Slot을 이용한 데이터 분산

  • Redis는 16384개의 Hash Slot으로 key 공간을 나누어 관리
  • 각 키는 CRC16해싱 후 16384로 modulo연산을 해 각 hash slot에 매핑
  • hash slot은 각 노드들에게 나누어 분배됨 

클라이언트의 데이터 접근

  • 클러스터 노드는 요청이 온 key에 해당하는 노드로 자동 redirect를 해주지 않음
  • 클라이언트는 MOVED 에러를 받으면 해당 노드로 다시 요청해야 함

728x90

'DB' 카테고리의 다른 글

[Redis] 성능과 가용성  (0) 2024.03.26
[Redis] 확장성과 가용성을 위한 클러스터_뭔 말 인지 모르겠다.  (0) 2024.03.18
[Redis] Redis Cluster  (0) 2024.03.12
[Redis] Redis Sentinel  (0) 2024.03.10
[Redis] 레디스의 복제  (0) 2024.03.10