레디스에 40만~1백만 개 정도의 키를 저장할 일이 생겨 고민하게 되었습니다.
일단 팀장님은 메모리에 직접 내용을 저장하는 게 어떠냐고 하셨는데, redis가 쿠팡, 배민 등 굉장히 많은 데이터를 사용하는 곳에서도
활용되고 있고 속도 문제가 없는 것으로 알고 있기 때문에 이미 어느정도 구현되어 있는 레디스를 버리고 메모리에 이러한 데이터를 적재하기 위해 IMDG나 memcache를 활용하기는 불필요할 수 있다 생각하였고,
다른 회사들에서는 많은 키를 저장하기 위해서는 어떻게 하는지가 궁금해 찾아보았고 해쉬를 활용하는 방법이 있다는 것을 알게되었습니다.
인스타그램에서 작성한 글에 따라 내용을 파악해보았는데요, 예를 들어 백만개의 데이터를 저장하기 위해서는 10000으로 나누고
몫을 버켓으로, 그리고 해당 버켓에서 원래 키값을 서브키로 활용해서 값을 저장하면 메모리를 아끼고 저장을 효율적으로 진행할 수 있습니다.
굉장히 흥미로운 내용이었고 옛날 글이라 더 좋은 방법이 있을 수도 있을 것 같은데 일단 적용해보고 좀더 찾아보는 방향으로 진행해볼 것 같습니다.
'클라우드, 인프라' 카테고리의 다른 글
트래픽 증가 대응 고려 (1) | 2024.01.10 |
---|---|
Consitent hashing (0) | 2022.07.30 |
IMDG (In Memory Data Grid) (0) | 2022.06.16 |
캐시를 사용하게 되면서 redis 정리 (0) | 2022.06.16 |
nginx 정의 (0) | 2021.12.28 |