# Wildcat - 고성능 임베디드 키-밸류 데이터베이스(스토리지 엔진)

> Clean Markdown view of GeekNews topic #21632. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=21632](https://news.hada.io/topic?id=21632)
- GeekNews Markdown: [https://news.hada.io/topic/21632.md](https://news.hada.io/topic/21632.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2025-06-25T09:34:58+09:00
- Updated: 2025-06-25T09:34:58+09:00
- Original source: [github.com/wildcatdb](https://github.com/wildcatdb/wildcat)
- Points: 7
- Comments: 2

## Summary

Go 언어로 구현한 이 임베디드 스토리지 엔진은 **LSM 트리, MVCC, lock-free 멀티스레드** 구조를 바탕으로 높은 **쓰기/읽기 성능**과 **트랜잭션 ACID 보장**을 달성합니다. **WAL 기반 즉시 일관성**, 백그라운드 컴팩션, 그리고 **스레드 세이프 병렬 처리** 등 최신 데이터베이스 설계 원칙을 적용해 신뢰성과 운용 효율성을 높입니다. RocksDB, Badger와 유사한 구조에도 불구하고 **Go 네이티브 환경 최적화** 및 다양한 **커스터마이징 파라미터** 제공으로 Go 기반 개발자와 내장 DB가 필요한 시스템에 실질적 차별성을 제공합니다.

## Topic Body

- Go로 개발된 고성능 키-밸류 DB로, C 인터페이스를 지원하며 LSM 트리, MVCC, lock-free 구조 등 **최신 DB 설계 원칙**을 반영함  
- WAL(Write Ahead Logging) 기반 **즉시 일관성 및 내구성** 보장, 백그라운드 플러시/컴팩션, lock-free 병렬 처리 등으로 높은 쓰기/읽기 성능 제공  
- 싱글 노드 내장형 구조로 네트워크나 분산 없이 **가볍고 빠른** 데이터 저장을 지향함  
  
### Wildcat의 주요 특징  
  
- **LSM 트리** 기반, 쓰기 집중 워크로드에 최적화  
- **MVCC(멀티버전 동시성 제어)**, lock-free 데이터 구조로 주요 경로 무잠금 처리  
- **WAL 로깅**: 트랜잭션 전체 상태 기록 및 복구 지원  
- **버전 인식 skip list**로 인메모리 MVCC 가속  
- **스레드 세이프/락프리 쓰기** 및 아토믹 캐시/메모리 관리  
- **SSTable**은 불변(immutable) BTree 구조, 키-값 분리 및 블룸필터 최적화 지원  
- **트랜잭션 ACID 보장** 및 내구성(Full/Partial/None) 레벨 선택 가능  
- **Crash recovery**로 커밋/미완료 트랜잭션 모두 복구  
- **배치/이터레이터**: 범위, 프리픽스, 양방향 반복 지원  
- **Bloom Filter**, key-value 분리(`.klog`, `.vlog`), tombstone/버전 인식 컴팩션 등 최신 설계  
- **통계/로깅/모니터링**: Stats(), LogChannel 등 다양한 진단 및 통계 인터페이스 제공  
- **C 라이브러리 빌드 및 API**: Go 공유 라이브러리로 빌드, 다양한 언어에서 직접 사용 가능  
- Go 1.24+ 및 Linux/macOS/Windows(64비트) 지원  
  
### 왜 중요한가? (타 임베디드 KV와의 차별점)  
  
- RocksDB, Badger 등과 유사한 LSM+MVCC 구조지만 **Go 네이티브 lock-free, 멀티스레드 설계**로 Go 환경에서 최적화된 사용성  
- 내장 DB 특화: 네트워크/복제 오버헤드 없이 **즉시 일관성/내구성/고성능** 구현  
- 트랜잭션 복구, 미완료 상태 유지 등 신뢰성과 투명성 높음  
- **다양한 컴팩션/버퍼/캐시 파라미터**를 통해 워크로드별 맞춤형 튜닝 가능

## Comments



### Comment 40599

- Author: kuber
- Created: 2025-06-25T10:29:29+09:00
- Points: 1

수상할정도로 디비가 많이 나오는 언어

### Comment 40593

- Author: sjc02183
- Created: 2025-06-25T09:57:11+09:00
- Points: 1

수상할정도로 디비가 많이 나오는 언어
