DarkBird is full featured in-memory database!

DarkBird is a Document oriented, concurrency
in-memory database

The darkbird provides the following:

Persistent - use Non-Blocking write-ahead-logging engine for persistency data, also store data to multiple pages with total_page_size

In-memory - whole data stored in-memory with two mode ( DiskCopies , RamCopies ) both stored in-memory but DiskCopies persistent data to disk and after restart, darkbird load whole data to memory

Concurrency - darkbird use one of best high-concurrent HashMap (DashMap)[GitHub - xacrimon/conc-map-bench] and you don't need use Mutex/RwLock for sync between thread, storage is complete safe to shared between thread

Indexing - darkbird support indexing even dynamically can decision about which fields in document be index to find that document very fast

Migration - darkbird storage model is (Key, Document) if you want change Document Model, can use migration::run for change all (Key, Document) already exist in disk this module should be use before storage opened

Persist to database - copy whole data to (postgres/cassandra/scylla) and load from that

Event Handling - can subscribe channels to storage, they get storage event

1 Like

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.