Skip to content

uchebnick/fusedb

Repository files navigation

FuseDB

Go License

Embedded key-value database for hot mutable state.

Русский

Performance

Comparison with Pebble (NoSync mode):

  • Reads: 1.0µs vs 4.1µs
  • Writes: 1.1µs vs 1.1µs
  • Startup: 224ms vs 26s (open + first read)
  • Atomic counters: 257ns Inc operation

Install

go get github.com/uchebnick/fusedb

Usage

db, _ := oneleafdb.OpenDB(oneleafdb.DBOptions{
    Dir:            "/tmp/db",
    CacheBytes:     5 << 20,
    ThresholdBytes: 5 << 20,
})
defer db.Close()

db.Put([]byte("key"), []byte("value"))
db.Inc([]byte("counter"), 1)
value, found, _ := db.Get([]byte("key"))

Architecture

  • Lock-free skiplist buffer
  • Immutable segments with LZ4 compression
  • Async WAL with group commit

Details: ARCHITECTURE.md

Status

Experimental. Not production-ready.

About

Embedded KV engine for small hot state: counters, rate limits, quotas, sessions, and other update-heavy workloads with local leaf-level merge.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages