3 ms·
Interesting. What was the scenario? Which NoSQL DB did you end up using?
by justinsb 17y ago
Interesting. What was the scenario? Which NoSQL DB did you end up using?
- DrJokepu 17y agoIt was essentially a key-value store of 256-bit audio fingerprints for an audio recognition system not unlike Shazaam but used for different purposes. The system was required to work on real time audio input so low response times were essentiall. And we're talking about many billions of keys here and a lot of queries per second. We've tried PostgreSql initially but response times were a real bottleneck. Then we have made a proof of concept with BerkeleyDb and it worked really well but we couldn't use it due to licensing issues so we have ended up coding our own key-value store
- justinsb 17y agoI presume you used B-Tree indexing in PostgreSQL vs hash-indexing in BDB & your own code? PostgreSQL does support hash-indexing, but the documentation suggests it's not faster than B-trees anyway (probably because it would involve a second disk access). Let's be honest though - this is an incredibly niche use-case. There's nothing in the relational model that precludes supporting this use case optimally, but in practice engineering resources get focused on more mainstream uses. You did your due-diligence and found that support for your scenario was lacking in existing RDBMS systems. That's great, but I think you should be qualifying your support for NoSQL lest others with traditional use cases (best served by RDBMS systems) simply copy your conclusions where they don't apply.
- neilk 17y agoWhere do you work, the NSA?
- DrJokepu 17y agoBroadcasting (television).
- mahmud 17y agoIf you still have ownership of the project, port it to Tokyo Cabinet.