On 23 Aug 2015 at 11:16, Glen Fernandes wrote:
On Sun, Aug 23, 2015, Niall Douglas wrote:
I couldn't find a Table 1.4.
Did you mean Table 1.5, the one comparing NoSQL databases with the naïve iostreams and AFIO key-value store and where AFIO comes off looking particularly badly?
"Table 1.4. This solution will perform reasonably well under these conditions" http://boostgsoc13.github.io/boost.afio/doc/html/afio/quickstart/workshop/na...
That "Maximum performance isn't important to you" was crossed implying that this solution satisfied the desire for performance. Unless you meant "is" instead of "isn't", but then the benchmarks don't reflect that.
The idea behind the workshop tutorial is we start with a really simple design which is one file per key-value, and move onwards from there with designs of increasing complexity and sophistication all implementing a key-value store with various improving characteristics like whether the store will survive power loss. The table at the end of each of these lists the characteristics of that particular step with a green tick (good) or a red cross (bad). One file per key-value is always going to be slow under any circumstances. Hence the "Maximum performance isn't important to you" red cross. The final design should have pretty close to constant time performance for lookup and linear complexity non-concurrent modify, but the implementation is very considerably more complex than a one file per key-value design. Niall -- ned Productions Limited Consulting http://www.nedproductions.biz/ http://ie.linkedin.com/in/nialldouglas/