Given all the complication, should we search over key value storage? It depends on nature of your problem domain. However if you do need to search over key value storage, it’s not such a bad idea either :)
There are a couple of approaches to address non key-value access:
- precomputing everything so every access becomes key-value
For the first approach having smarter data types like Redis does can be helpful. The second approach is pretty straight forward, but it can also benefit of some improvements like the ones in Riak MapReduce.
There’s also a third approach for enhancing key-value store access: adding navigable metadata to key-value pair. Riak has this option covered by supporting web linking.
Original title and link: Search over Key Value Storage (NoSQL databases © myNoSQL)