IEEE Transactions on Computers · 2015 · 46 citations · 17 references
ComputingComputer ScienceComputer SystemsData StructuresDatabasesStorage SystemsData Storage SystemsDatabase ManagementHash TablesNosql DatabasesScalable Data StorageStorage EnginesIndexingKey-value StorageKey-value Storage SystemsKey-value StoresPersistent StorageThroughputTree StructuresTrie Structures
Indexing key-value data on persistent storage is an important factor for NoSQL databases. Most key-value storage engines use tree-like structures for data indexing, but their performance and space overhead rapidly get worse as the key length becomes longer. This also affects the merge or compaction cost which is critical to the overall throughput. In this paper, we present ForestDB, a key-value storage engine for a single node of large-scale NoSQL databases. ForestDB uses a new hybrid indexing scheme called HB <sup xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">+</sup> -trie, which is a disk-based trie-like structure combined with B <sup xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">+</sup> -trees. It allows for efficient indexing and retrieval of arbitrary length string keys with relatively low disk accesses over tree-like structures, even though the keys are very long and randomly distributed in the key space. Our evaluation results show that ForestDB significantly outperforms the current key-value storage engine of Couchbase Server [1], LevelDB [2], and RocksDB [3], in terms of both the number of operations per second and the amount of disk writes per update operation.
17
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani et al. · 2007 · 3.5K citations
Fay W. Chang, Sanjay Ghemawat, Wilson C. Hsieh et al. · ACM Transactions on Computer Systems · 2008 · 3.4K citations
Avinash Lakshman, Prashant Malik · ACM SIGOPS Operating Systems Review · 2010 · 2.6K citations
The log-structured merge-tree (LSM-tree)
Patrick E. O׳Neil, E.T. Cheng, Dieter Gawlick et al. · Acta Informatica · 1996 · 1.3K citations
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani et al. · ACM SIGOPS Operating Systems Review · 2007 · 1.1K citations