My Year of Riak
inaka.net
inaka.net
This model has helped me make better decisions about when & where to use it and the cost involved. For example, if you're on AWS, just use S3 and keep metadata in an RDBMS or search engine.
I don't know if anyone else feels a need for this, but I'd love to be able to do my entire DB with it, but the problem is RAM is really expensive to scale compared to disk space.
It should perform similarly to most disk-based dbs.
Riak Search should in theory be good stuff. It uses Lucene underneath, which is known to be rather slow, and last I checked it could not properly distribute documents across nodes, severely limiting its scalability. It is, in short, known to perform pretty badly.
MapReduce is interesting, but evidently not designed for "real-time", since it relies on traversing inter-object links, key by key. It does not scale to large number of links, either, since it's not possible to add or remove links incrementally. To add or remove a link, you have to rewrite the entire object and all its link in a single update operation.
I am sure Basho is working on those problems, but in the meantime, I'm surprised not more people complain about these issues. Riak had awful, awful performance before they released 1.0 with LevelDB support. Now the performance is much better, but it's still "merely" equivalent to the basic CRUD support of S3 (minus ACL support and so on).
It's not fast enough to replace Memcached or Redis as a first-level cache, and unlike Cassandra it does not do range lookups well, and anything that needs to scan the dataset sequentially will end up sucking, performancewise. These things limit its usefulness for many apps.
Right now you have something that is quite decent for implementing a distributed file system, session store or persistent fallback cache (behind something fast such as Memcached or Redis), but is a bad fit for many other applications.
I could not believe that your (Inaka's) posts on Riak and scaling Erlang had not yet been submitted to HN. Very useful stuff!
I also really enjoyed the edis preso, that's what got me to the blog.
http://devblog.seomoz.org/2011/10/using-riak-for-ranking-col...
Keep in mind we used Riak pre-1.0, so YMMV.