iledb: Disk Based Key-Value Store Inspired by Bitcask
iledb: Disk Based Key-Value Store Inspired by Bitcask
github.com
GitHub - rajivharlalka/filedb: Disk Based Key-Value Store Inspired by Bitcask
From the README:
FileDB is a Zig-implementation of Bitcask by Riak paper.
- FileDB stores record metadata in a log-structured hashtable and parallely keeps 1 disk file open for inserting records in append-only mode. On restarts or
MAX_FILE_REACHED
, the disk file is rotated and all the oldfiles are kept open for reading only. - A compaction process running every
config.compactionInterval
seconds, reads all the disk files and combines them into one file while updating the metadata hashtable. - A sync process syncs the open disk files once every
config.syncInterval
. Sync also can be done on every request ifconfig.alwaysFsync
is True.
Read about internals in-depth at FileDb.