Hi Paul, You would actually get the most predictable performance simply storing the edges as k/v pairs and 'following' the links client-side. This is especially helpful if you have a wide trees or a high crossing number, for example. In such cases, you can retrieve multiple edges simultaneously in parallel, which is a much more efficient query pattern than having Riak hop around the cluster finding those edges and queuing up the result set while the client application waits.
Another advantage of this approach is that you can keep your logic and tests in your native language, rather than going through Riak's m/r abstraction. This is a different mindset from working with relational databases, where we were taught to always do as much calculation in the database layer as possible. With a database tuned for high concurrency and low latency like Riak, you will get the most bang for your buck if you keep the application close to the database, pre-calculate your desired results as much as possible, and perform the calculations and logic in the client application layer, not the database layer. Thanks! -Casey On Tue, Mar 25, 2014 at 8:12 AM, Paul Walk <[email protected]> wrote: > Thanks - this is somewhat reassuring (the ability to do some basic > graph-like operations is one reason I have been using Riak). > > I have so far not had cause to use MapReduce. I wonder if you know of any > examples/docs for using MapReduce to perform an operation similar to > link_walking that I could use to get a head start? > > Thanks, > > Paul > > On 25 Mar 2014, at 15:08, Brian Roach <[email protected]> wrote: > > > Hi Paul, > > > > Link walking is being deprecated as Christian notes. > > > > We removed it from the official 2.0 clients for that reason, and also > > that the new clients only use protocol buffers which on the Riak PB > > API side never had that functionality directly. > > > > It is still possible to perform the operation, you just have to do it > > through map-reduce (which is what our clients have always done when > > using PB) > > > > Thanks, > > - Roach > > > > On Tue, Mar 25, 2014 at 8:56 AM, Paul Walk <[email protected]> wrote: > >> I'm gradually getting up to speed with the technical release of Riak > 2.0, and am appreciating CRDT and the seamless integration into search. > >> > >> I had just turned my attention to links, and started to wonder how I > should implement links when the objects I will mostly be dealing with are > CRDT 'map' objects, when I discovered that the link-walking functions > appear to have been removed from the latest Ruby client!! > >> > >> Is link-walking deprecated and intentionally removed from Riak version > 2.0? Or is it just missing from the Ruby client? > >> > >> Paul > >> ------------------------------------------- > >> Paul Walk > >> http://www.paulwalk.net > >> ------------------------------------------- > >> > >> > >> > >> > >> > >> > >> _______________________________________________ > >> riak-users mailing list > >> [email protected] > >> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com > > ------------------------------------------- > Paul Walk > http://www.paulwalk.net > ------------------------------------------- > > > > > > > _______________________________________________ > riak-users mailing list > [email protected] > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com >
_______________________________________________ riak-users mailing list [email protected] http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
