Redis와 Memcached API를 호환하며 두 시스템을 대체해 바로 사용할 수 있도록 설계된 인메모리 데이터 저장소입니다.
Snapchat/KeyDB
멀티스레드와 Redis 호환성을 갖춘 인메모리 데이터베이스로, 액티브-액티브 복제와 선택적 FLASH 스토리지를 지원하는 Redis 대체재입니다.
대체할 수 있는 제품:Redis
- 스타
- 12,499
- 포크
- 680
- 열린 이슈
- 295
- 마지막 커밋
- 15일 전
어떤 프로젝트인가요?
KeyDB는 멀티스레딩, 메모리 효율성, 처리량에 중점을 둔 고성능 Redis 포크입니다. Redis 프로토콜, 모듈, 스크립트와 완벽하게 호환되므로 클라이언트나 애플리케이션 코드를 수정하지 않고 기존 Redis 배포 환경을 전환할 수 있습니다.
KeyDB는 Redis의 기능에 더해 액티브-액티브 복제를 지원합니다. 여러 인스턴스가 읽기와 쓰기 요청을 모두 처리하면서 동기화 상태를 유지할 수 있어 TCP 기반 로드 밸런싱과 핫 스페어 장애 조치가 간편해집니다. 로컬 SSD를 사용하는 FLASH 스토리지, 하위 키 만료, 선택적 S3 덤프 및 로드 기능도 제공합니다. MVCC 설계 덕분에 KEYS, SCAN 같은 명령을 데이터베이스를 차단하지 않고 실행할 수 있습니다.
KeyDB는 Linux에서 실행되며, 빌드도 Linux에서 테스트됩니다. 멀티스레딩은 server-threads 같은 옵션과 클라이언트 밸런싱 설정으로 제어하며, 빌드에서는 TLS가 기본적으로 활성화됩니다.
핵심 기능
- 01Redis 프로토콜, 모듈, 스크립트와 호환되는 멀티스레드 요청 처리.
- 02여러 인스턴스가 읽기와 쓰기 요청을 처리할 수 있는 액티브-액티브 복제.
- 03로컬 SSD를 사용하는 FLASH 스토리지(실험적 기능).
- 04하위 키 만료와 MVCC 기반의 비차단 KEYS 및 SCAN.
- 05선택적 AWS S3 덤프 및 로드.
활용 사례
- 같은 하드웨어에서 처리량을 높이기 위해 기존 Redis 배포 환경을 대체.
- 여러 인스턴스가 함께 읽기와 쓰기를 처리해야 하는 캐싱 계층 운영.
- 노드당 더 많은 부하를 처리해 서버 수를 줄이기.
빠른 시작
- 1
Debian/Ubuntu에 빌드 종속성을 설치합니다
sudo apt install build-essential nasm autotools-dev autoconf libjemalloc-dev tcl tcl-dev uuid-dev libcurl4-openssl-dev libbz2-dev libzstd-dev liblz4-dev libsnappy-dev libssl-dev - 2
서브모듈 종속성을 초기화하고 업데이트합니다
git submodule init && git submodule update - 3
KeyDB를 컴파일합니다
make - 4
src 디렉터리에서 기본 구성으로 서버를 시작합니다
./keydb-server
사용 전 알아둘 점
- Linux SO_REUSEPORT에 의존하므로 Linux에서만 빌드 및 테스트됩니다.
- FLASH 스토리지는 실험 단계(베타)이므로 신중하게 사용해야 합니다.
- 유료 지원은 제공되지 않으며, 커뮤니티 채널을 통해 도움을 받을 수 있습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- KeyDB은(는) 무엇인가요?
- 멀티스레드와 Redis 호환성을 갖춘 인메모리 데이터베이스로, 액티브-액티브 복제와 선택적 FLASH 스토리지를 지원하는 Redis 대체재입니다. KeyDB는 멀티스레딩, 메모리 효율성, 처리량에 중점을 둔 고성능 Redis 포크입니다. Redis 프로토콜, 모듈, 스크립트와 완벽하게 호환되므로 클라이언트나 애플리케이션 코드를 수정하지 않고 기존 Redis 배포 환경을 전환할 수 있습니다.
- KeyDB은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- KeyDB은(는) BSD-3-Clause 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- KeyDB은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. KeyDB의 마지막 커밋은 2026년 10월 22일입니다.
- KeyDB은(는) 어디에 사용할 수 있나요?
- 같은 하드웨어에서 처리량을 높이기 위해 기존 Redis 배포 환경을 대체. 여러 인스턴스가 함께 읽기와 쓰기를 처리해야 하는 캐싱 계층 운영. 노드당 더 많은 부하를 처리해 서버 수를 줄이기.
- KeyDB는 어떻게 설치하나요?
- Debian/Ubuntu에 빌드 종속성을 설치합니다: sudo apt install build-essential nasm autotools-dev autoconf libjemalloc-dev tcl tcl-dev uuid-dev libcurl4-openssl-dev libbz2-dev libzstd-dev liblz4-dev libsnappy-dev libssl-dev 서브모듈 종속성을 초기화하고 업데이트합니다: git submodule init && git submodule update KeyDB를 컴파일합니다: make src 디렉터리에서 기본 구성으로 서버를 시작합니다: ./keydb-server
- KeyDB은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/Snapchat/KeyDB
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
캐싱과 실시간 워크로드를 위한 고성능 Redis 호환 키-값 데이터 구조 서버로, Redis에서 포크되었습니다.
기존 Redis 클라이언트를 수정 없이 연결할 수 있도록 Redis RESP 프로토콜을 지원하는 C# 원격 캐시 저장소입니다.
Rust로 작성된 Redis·Valkey 호환 인메모리 키-값 서버로, 전문 검색과 벡터 검색 기능을 기본 제공합니다.
RocksDB를 스토리지 엔진으로 사용하고 Redis 프로토콜을 지원해 기존 Redis 클라이언트로 연결할 수 있는 분산형 NoSQL 키-값 데이터베이스입니다.
TTL 만료와 Redis, MongoDB, SQLite, PostgreSQL 등의 플러그형 백엔드를 지원하는 Node.js 키-값 저장소 라이브러리입니다.