dragonflydb/dragonfly
A modern replacement for Redis and Memcached
해결하는 문제
Dragonfly는 Redis 및 Memcached과 같은 기존 시스템을 대체하기 위해 설계된 고성능 인메모리 데이터 저장소입니다. 단일 스레드 아키텍처의 한계를 극복하기 위해 현대의 멀티코어 CPU를 수직 확장하여 활용함으로써 처리량을 크게 향상시키고, 동일한 워크로드에 필요한 리소스 사용량을 줄입니다.
작동 방식
Dragonfly는 "공유 없음(shared-nothing)" 아키텍처를 사용하여 키스페이스를 개별 스레드가 관리하는 샤드로 분할하여 경합을 제거합니다. 트랜잭션 프레임워크는 VLL 락 매니저의 재설계 기반으로, 뮤텍스나 스피놀락에 의존하지 않고 다중 키 연산의 원자성을 보장합니다. 데이터 저장에는 "Dash" 확장 가능한 해싱 설계 기반의 해시테이블을 구현하여, 효율적인 레코드 만료, 오버헤드 없는 캐시 제거 알고리즘, 포크 없이 스냅샷을 생성할 수 있는 기능을 제공합니다.
대상 사용자
Redis 및 Memcached API와 완전히 호환되며 초고속, 비용 효율적인 인메모리 저장소가 필요한 현대 클라우드 애플리케이션 워크로드를 운영하는 개발자 및 조직을 위한 제품입니다.
주요 특징
- 고처리량: 싱글프로세스 Redis 대비 최대 25배의 처리량을 달성하며, 파이프라인 모드에서 벤치마크로 최대 1,000만~1,500만 QPS를 기록했습니다.
- API 호환성: Redis 및 Memcached API와 완전 호환되어 도입 시 코드 변경이 필요 없습니다.
- 자원 효율성: 동일한 워크로드에 대해 최대 80%의 자원 절감이 가능하며, 스냅샷 생성 시 메모리 사용도 더 효율적입니다.
- 내장 도구: 네이티브 HTTP 콘솔과 Prometheus 호환 메트릭을 포함하여 모니터링 및 관리가 가능합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트