본문 바로가기
Database2026년 4월 25일7분 읽기

Redis 8 vs Dragonfly vs KeyDB — 2026 In-memory DB 비교

YS
김영삼
조회 1
Redis 8 vs Dragonfly vs KeyDB — 2026 In-memory DB 비교

핵심 요약

Redis Labs가 2024년 SSPL로 라이센스 변경한 이후 in-memory DB 시장이 분화. Redis 8 (commercial), Valkey (오픈소스 fork, AWS·GCP 주도), Dragonfly (multi-thread), KeyDB (multi-thread, fork) — 4개 옵션이 모두 production-ready.

  • Redis 8: vector type·streams 강화·라이센스 변경
  • Valkey: BSD-3, AWS·GCP·Snap이 fork
  • Dragonfly: multi-thread·dashtable·세 배 빠름
  • KeyDB: multi-thread·active replication

1. 성능 비교 (실측, 8 core 노드)

지표Redis 8Valkey 8DragonflyKeyDB
SET QPS (single thread)180K180K200K180K
SET QPS (전체 코어)180K (single)180K (single)1.4M900K
메모리 효율baselinebaseline+30%baseline
지연 (p99)1ms1ms0.5ms0.8ms

Dragonfly가 가장 빠름. 단 클러스터·sentinel은 Redis가 우위.

2. Redis 8 신기능

# Vector Type (네이티브)
FT.CREATE idx ON HASH PREFIX 1 doc: SCHEMA \
  embedding VECTOR FLAT 6 TYPE FLOAT32 DIM 1024 DISTANCE_METRIC COSINE

FT.SEARCH idx "*=>[KNN 10 @embedding $vec]" PARAMS 2 vec "..."

# Streams 강화 — XAUTOCLAIM
XAUTOCLAIM mystream consumer-group consumer 60000 0 COUNT 100

# JSON 모듈 내장
JSON.SET user:1 . '{"name":"Alice","age":30}'
JSON.GET user:1 .name

3. Valkey — Redis 호환 fork

# 설치
apt install valkey  # Ubuntu 24.04+
# 또는 docker run valkey/valkey:8

# Redis 클라이언트 그대로 작동
redis-cli -h valkey-server PING
# PONG

Redis 7.4와 100% wire compatible. 라이센스 BSD-3.

4. Dragonfly — multi-thread 기반

# 설치
docker run -p 6379:6379 docker.dragonflydb.io/dragonflydb/dragonfly

# 기존 redis-cli 그대로
redis-cli -p 6379 SET key value

# 8 core 노드에서 자동으로 8개 thread 활용

shared-nothing 아키텍처. 각 thread가 자기 데이터 영역. 락 없음.

5. 메모리 모델 — Dragonfly의 dashtable

Redis의 hashtable + small list inline 최적화. 평균 30% 메모리 절감. 1억 키 저장 시 10GB → 7GB 수준.

6. 영속성

도구RDBAOF특이
Redis 8OO전통
ValkeyOORedis 동일
DragonflyOO스냅샷 매우 빠름 (점진)
KeyDBOOFLASH 옵션

7. 클러스터·고가용성

# Redis Cluster (16384 slots)
redis-cli --cluster create node1:6379 node2:6379 node3:6379 \
  --cluster-replicas 1

# Dragonfly Cluster (실험적)
# 단일 노드 강함 → Redis 클러스터만큼 성숙하지 않음

분산 클러스터는 Redis가 가장 성숙. Dragonfly는 단일 노드를 거대하게 (RAM 1TB까지).

8. AWS ElastiCache·MemoryDB

서비스엔진특징
ElastiCache for RedisRedis 7.xSSPL 변경 영향 없음
ElastiCache for ValkeyValkey 7.4가격 33% 저렴
MemoryDB for RedisRedis OSSmulti-AZ durable
MemoryDB for ValkeyValkeyNEW (2025)

AWS는 Valkey를 적극 밀어 Redis 라이센스 회피. 새 도입은 Valkey 권장.

9. 의사결정 매트릭스

워크로드1순위
단순 캐시 (대규모 분산)Valkey (AWS) / Redis Cluster
단일 노드 최대 성능Dragonfly
vector·JSON 통합 사용Redis 8 (또는 Valkey 8)
active-active 복제KeyDB
오픈소스 우선Valkey
큰 RAM 노드 (1TB+)Dragonfly

10. 마이그레이션 — Redis → Valkey

# 거의 zero-downtime
# 1) 새 Valkey 인스턴스 생성
# 2) Redis 데이터 dump (RDB)
redis-cli SAVE
scp /var/lib/redis/dump.rdb valkey-host:/var/lib/valkey/
# 3) Valkey 시작
systemctl start valkey
# 4) 클라이언트 endpoint만 변경
# 5) 기존 Redis 종료

wire protocol·command 완전 호환. 클라이언트 코드 변경 불필요.

11. 보안

  • ACL — Redis 6+, 모든 fork 지원
  • TLS — 모두 지원 (단 Dragonfly는 일부 cipher 제한)
  • SECRET·CONFIG GET 명령 RBAC로 차단 권장

실전 운영 체크리스트

  • 모니터링: redis_exporter + Grafana 대시보드
  • maxmemory-policy: 워크로드에 맞게 (allkeys-lru, volatile-lru, noeviction)
  • persistence: AOF + RDB 조합 권장
  • slowlog: 100ms 이상 쿼리 자동 기록
  • backup: 매일 RDB → S3

자주 묻는 질문

새 도입은 Redis vs Valkey?Valkey 권장. BSD-3 라이센스, AWS·GCP·기타 클라우드의 1급 시민, 향후 5년 활성 유지.

Dragonfly가 정말 더 빠른가?단일 노드 한정. 클러스터 분산되면 차이 작아짐. 단일 큰 노드 시나리오에서만 결정적.

Redis 라이센스 변경 영향?OSS 사용은 영향 적음. 클라우드 제공자(AWS·GCP)가 SSPL 거부 → Valkey fork. 일반 사용자는 Valkey로 옮기면 동일.

댓글 0

아직 댓글이 없습니다.
Ctrl+Enter로 등록