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.compactionIntervalseconds, 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.alwaysFsyncis True.
Read about internals in-depth at FileDb.
You must log in or # to comment.

