DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

ForestDB


ForestDB is a single-node key-value storage engine Couchbase server. It addresses the performance issue on current B+ tree and LSM-tree indexing on variable length strings. ForestDB uses an in-memory log structured write buffer index and an on-disk HB+-trie as indexing. HB+-trie splits keys into chunks and stored in normal B+ tree nodes to guide the traffic. The write buffer index stores the disk locations of records not in HB+-trie and the log-structure of write buffer index reduces disk I/O.[03]

Source Code
https://github.com/couchbase/forestdb[01]
Developer
Country of Origin
US
Start Year
2013 [05]
Project Type
Open Source
Written in
C++
Supported Languages
C++, Go, Java, Objective-C, Python
Operating Systems
Android, iOS, Linux, macOS, Windows
License
Apache v2

Database Entry

ForestDB


ForestDB is a single-node key-value storage engine Couchbase server. It addresses the performance issue on current B+ tree and LSM-tree indexing on variable length strings. ForestDB uses an in-memory log structured write buffer index and an on-disk HB+-trie as indexing. HB+-trie splits keys into chunks and stored in normal B+ tree nodes to guide the traffic. The write buffer index stores the disk locations of records not in HB+-trie and the log-structure of write buffer index reduces disk I/O.[03]

History[02][04]


The ForestDB project came from ACM SIGMOD 2011 programming contest. It is now under the development of Couchbase's Caching and Storage team to replace the previous Couchstore storage engine and plans to conduct optimizations for SSD, support reduce feature and allow users to pause/resume compaction.

Data Model


Indexes


Embeddings
AR Ardb
Revision #4