Hacker News new | ask | show | jobs
by Ixiaus 5057 days ago
If you want just a single node, use Couch or Mongo - Riak wasn't built to work reliably OR quickly on a single node; Riak gets all of its fault-tolerance, low-latency, and great performance from > 3 node clusters (preferably > 5).

Weak data model is by design. It's a Key/Value store - if you need something more complex then it isn't the right fit for you; Riak is not meant to replace relational databases.

Small community? Certainly not. Weak adoption? Definitely not. Adobe is using Riak, Braintree, and hundreds of other LARGE companies.

The query API is pretty easy to use from the clients in my experience. If you want REAL performance you can write Erlang map/reduce workers - which admittedly gets more complicated but you get far more performance out of that than doing it in JS (which is limited on ANY platform, no just Riak).

Your gripes really aren't legitimate, purely because you're not understanding the use-case for Riak.

We use riak for ONLY TWO pieces of data in our app (out of hundreds of pieces). Everything else is in a relational database. Riak is perfect for FAST GROWING data that maps to the Key/Value model very easily; I can't even begin to describe how perfect Riak is for that. Everything else fits into MySQL/PostgreSQL perfectly and without a hitch. Our fast growing data is handled purely by Riak and Map/Reduce using Erlang workers is FAST.