본문 바로가기

밸키 9.2.0-rc1 공개, 정렬셋 B+트리 전환

조회 1 · 댓글 0
열린기술자열린기술자작성자2026년 9월 21일

레디스(Redis) 포크인 밸키(Valkey)의 첫 9.2.0 릴리스 후보가 2026년 9월 16일 공개됐습니다. 정식 릴리스 전 단계라 프로젝트가 매긴 업그레이드 긴급도는 낮음(LOW)이지만, 데이터 구조와 저장, 복제 쪽에 눈여겨볼 변경이 여럿 들어왔습니다.

가장 큰 변화는 정렬 집합(Sorted Set)의 내부 구조입니다. 큰 정렬 집합을 기존 스킵리스트 대신 B+ 트리로 저장하도록 바꿨고, OBJECT ENCODING 결과도 skiplist 대신 btree로 보고됩니다. 저장 쪽에서는 포크 없이 RDB 스냅샷을 만드는 forkless 방식이 추가됐는데, 기본값은 아니고 forkless-infrastructure-enabled와 bgsave-default-method 설정으로 켜야 합니다. 이 밖에 필드 만료가 걸린 작은 해시를 매번 해시테이블로 바꾸지 않고 메모리 효율이 좋은 listpack 인코딩으로 유지하는 개선도 들어갔습니다.

복제 쪽도 손봤습니다. 복제본이 뒤처질 때 클라이언트 쓰기를 늦춰 연결 끊김과 풀 싱크를 피하는 복제 스로틀링(repl-throttling-enabled)이 옵션으로 추가됐고, 정상 상태 복제에 LZ4 스트리밍 압축(repl-compression)을 복제본별로 협상해 적용할 수 있게 됐습니다. 스크립트 캐시 메모리를 제한하는 maxmemory-scripts 설정도 새로 생겼습니다.

실무 관점에서 정렬 집합은 랭킹, 시계열, 우선순위 큐 같은 곳에 자주 쓰는 자료구조라 내부 구조가 B+ 트리로 바뀐 점은 대용량 키의 메모리와 조회 성능에 영향을 줄 수 있어 보입니다. 다만 아직 rc 단계이므로 운영에 바로 올리기보다는 테스트 환경에서 인코딩 변화와 forkless 저장 옵션의 동작을 먼저 확인하는 편이 안전합니다.

밸키는 2024년 레디스의 라이선스 변경을 계기로 갈라져 나온 프로젝트로, 리눅스 재단 산하에서 개발되고 있습니다. 이번 rc는 정식 9.2.0로 가는 중간 단계이니 도입을 검토한다면 정식 릴리스 노트와 설정 기본값을 다시 확인하시길 권합니다.

🔗 https://github.com/valkey-io/valkey/releases/tag/9.2.0-rc1

로그인 후 답글을 남길 수 있습니다.