Riak's Bitcask - A Log-Structured Hash Table For Fast Key/Value Data
highscalability.com
highscalability.com
In either case then the question is how does this affect the responsiveness of the system.
This paper http://downloads.basho.com/papers/bitcask-intro.pdf is a nice easy ready with another level of detail over the linked to article.
I suspect they could consider - varint encoding of the key and value sizes on disk - aligning some writes to disk block boundaries to avoid spanning 2 blocks
though both probably only have minor gains.
For more inspiration see Jeff Dean's comments on the SSTable data structure at Google: http://osdi2006.blogspot.com/2006/10/paper-bigtable-distribu...
http://fiz.stanford.edu:8081/display/ramcloud/Home
It's a _pure_ in memory key-value store, that aims to give the lowest latency access to data as possible (~1 to 10us for small bytes of data).