< 返回版块

al8n 发表于 2024-04-25 14:26

Tags:database, key-value

Repo: https://github.com/al8n/skipdb

An embedded, in-memory, zero-copy, MVCC, almost lock-free and serializable snapshot isolation database engine.

Features

  • Atomicity, Consistency, Isolation, MVCC, serializable snapshot isolation, concurrent safe and almost lock-free.
  • No extra allocation and copy, there is no Arc wrapper for both key and value stored in the database, which means that users provide K and V, and database store K and V directly.
  • Zero-copy and in-place compaction, which means there is no copy, no extra allocation when compacting.
  • Concurrent execution of transactions, providing serializable snapshot isolation, avoiding write skews.
  • Both read transaction and write transaction are Send + Sync + 'static, which means you do not need to handle annoying lifetime problem anymore.
  • Lock-free and concurrent safe read transaction: the read transaction is totally concurrent safe and can be shared in multiple threads, there is no lock in read transaction.
  • BTreeMap like user friendly API and all iterators implement Iterator trait, which means users use Rust powerful conbinators when iterating over the database.
  • Async version is runtime agnostic, tokio, async-std, smol, wasm-bindgen-futures and any other async runtime.
  • 100% safe, sets [forbid(unsafe_code)].

Ext Link: https://github.com/al8n/skipdb

评论区

写评论

还没有评论

1 共 0 条评论, 1 页