armdb 0.1.6

sharded bitcask key-value storage optimized for NVMe
Documentation
  • use rustix-uring

  • use seize

  • without WAL

  • optimized for NVME

  • in memory collection type: SkipList and HashMap

  • read - always sync methods

  • write/update/delete - sync

  • CAS, read-modify-write

  • keys are arrays with compile time length

  • key type: just array bytes

  • values are two types: with static length and variable length (ByteView)

  • ByteView is:

    • aligned 8 bytes
    • like Vec, but inline <= 20 bytes

use for:

  • users sessions
  • indexes
  • logs
  • backups
  • second/read replica
  • etc...

Research: