Joe Blomstedt has a long post up on the Riak mailing list about (eventual) consistency, Riak, Dyanmo, guarantees, etc. Its worth reading as a whole, but the last passage caught my eye
If you do look at other options, take the time to truly understand the
guarantees provided. What does atomic, multi-master replication mean
for a given product? What failure conditions can it tolerate? Can you
ever lose data under rare, but not necessarily uncommon scenarios? If
you're unsure, ask questions. It's not about good or bad. Different
products have different guarantees. The goal is to ensure that
whatever features/guarantees you need for your project are provided by
the choice you decide upon.
I can never emphasize this point enough - as I've said before, when you walk down the NoSQL path you will find out that
- You didn't understand your own problem-space as well as you thought you did.
- You didn't understand the package that you are using as well as you think you do.
- It will not scale the way you thought it would. Oh, it'll scale all right, just not the way you thought it would.
- Your object/document/JSON/whatever model really doesn't map exactly the way you expected it to.








0 comments:
Post a Comment