News for hackers. Stuff that matters.
Re:RocksDB – A persistent key-value store for fast storage e... by hendzen on Thursday November 14, 2013 @10:12PM (#6737460)
How much do you think RocksDB/LevelDB performance is impacted by the use of relatively coarse-grained locking? Another LevelDB fork, HyperLevelDB [1] implemented a fine grained scheme with performance benefits. Disclaimer: I am working on a (unreleased) fork of LevelDB that uses hardware transactional memory for synchronization using the new TSX-NI instructions present on Haswell processors.

[1] - http://hyperdex.org/performance/leveldb/

Re:RocksDB – A persistent key-value store for fast storage e... by dhruba_b on Friday November 15, 2013 @12:36AM (#6737928)
This is an excellent question. RocksDB has a lock per shard that is used to protect incrementing/decrementing refcounts on critical metaddata structures for writes. It is never held during actual IO to storage. We have been able to saturate a flash device for a pure-write workload when value size = 800 bytes without bottlenecking on this lock.