{"repo":"dfeneyrou/litecask","free":true,"listed":false,"github":"https://github.com/dfeneyrou/litecask","clone":"git clone https://github.com/dfeneyrou/litecask.git","description":"A high performance single-header embeddable persistent key-value store with indexing capabilities","language":"C++","stars":12,"topics":["bitcask","database","embedded","key-value-store","kv-store","single-header"],"license":"MIT","category":"databases-storage","readme_excerpt":"Litecask: a C++ single-header persistent key-value store - Based on Bitcask principles - High performance - Insertion rate bottleneck is the disk I/O saturation - Lookup throughput benefits from a scalable concurrent hashtable and a built-in memory cache - Crash friendliness because architectured as a log-structured file systems, only the non-disk-flushed data are lost - Ability to handle datasets much larger than RAM without degradation: only the keys reside in memory - Easy software integration: copying 1 header file is enough, no external dependencies - Ease of backup and restore: backuping 1 flat directory is enough - Support of indexation using parts of the keys - Support of entry lifetime Litecask is: - an efficient embedded database as a building block for your application - a lean library with an opinionated set of features, to maximize control and limit entropy - tracked internal performance (hashtable, allocator, cache, startup time...) - consistency by using ASAN, TSAN, clang-format, clang-tidy, and custom tests based on doctest - an enhanced implementation of Bitcask , additionally featuring: - a built-in cache - indexing capabilities - a C++17 single-header file, including: - a TLSF heap-based memory allocator - a concurrent hashtable with optimistic locking (inspired by memC3 and this analysis) - a lock-free RW-lock (aka shared mutex) reducing both false sharing and kernel access - a memory cache with segmented LRU (inspired by memcached ) Litecask is not: - a r","default_branch":null,"files":null,"tree":[],"storefront":"/r/dfeneyrou","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/dfeneyrou/litecask/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}