Equivalent to ORM for Distributed Key / Value Storage?

I'm in the process of evaluating how to implement something using a distributed keystore / value store for the back. I would like to have a layer on top of a key / value that supports the object model, which is similar to what I get from an object-relational map maker.

Can someone point me to any examples of other people who do this? I'm mostly looking for design ideas, although if I come across everything that I like, I can just use it instead of writing my own. I'm probably going to finish chess in Perl on top of Riak, but these decisions are not final.

+5
source share
2 answers

We previously used Riak to do something similar, using the Ruby client Ripple, which provides the AciveModel interface. However, I really need to advise against this (like the others). Using a heavy ORM on top of the key / value store, you really lose the main advantage of speed.

Now we are moving to the Ripple pass and talking directly to Riak for many high-speed things (we also go to Erlang and use the PBC, not the HTTP interface, but that's another story: D), here's how we do it:

  • In our objects, we save the JSON document in a format compatible with Ripple. Although we have a requirement for this, since we are still using Ripple for some things, if I did it again without Ripple, I would probably use this format.

  • Riak , . , , , (, ).

  • Ripple ( Riak) , . "fen2nf4j9fecd" "" . "tom" user_index_by_username Riak "" . , , "tom".

. , , . Riak, , - , , Riak , bucket.

- , , . , " ".

+4

, , .

/ , , back-end. ?

ORM , . , , .

+1

All Articles