|
|
|
|
|
by firefox
5057 days ago
|
|
Yes, they do have some strengths like predictable performance and easy administration but they still have to improve on things like:
- weak data model
- difficult query API
- poor single node performance
- small community/weak adoption |
|
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.