On 11 Apr 2012, at 22:15, Ahmed Bashir <[email protected]> wrote:
> It's not clear why the raw client API can't store() a RiakObject; it > looks like I need to implement IRiakObject myself It stores IRiakObject. There is an implementation in the library. Or use the builder. It doesn't store RiakObject as there are 2 legacy RiakObject implementations, each protocol specific, which should RawClient store? Those classes still exist for backwards compatibility reasons but I recommend you use the new API, if at all possible. There is a blog post here ( http://basho.com/blog/technical/2011/07/14/The-All-New-Riak-Java-Client/ ) with some history. Cheers Russell > > On Wed, Apr 11, 2012 at 1:39 PM, Russell Brown <[email protected]> wrote: >> >> On 11 Apr 2012, at 21:20, Ahmed Bashir wrote: >> >>> Thanks Russell! >>> >>> Any benefit to using IRiakClient vs RawClient other than what's >>> apparent in the API spec? >>> >> >> RawClient leaves you to deal with all the trade-offs that are consequences >> of using fault-tolerant, distributed databases like Riak, IRiakClient offers >> one set of possible well-behaved approaches. >> >> With RawClient, you need to retry a failure, IRiakClient has a default >> retrier and lets you provide a custom one of your own to handle faults. >> RawClient will give you an array of Riak Objects and a vector clock where >> IRiakClient makes it easy to convert the payload to a domain type to >> simplify sibling resolution. IRiakClient will always fetch before a store >> and will pass the vector clock for you. >> >> Which you chose depends on what code you want to write and the style you >> prefer to code in. IRiakClient is there to make it harder for people to >> shoot themselves in the foot and to incorporate some best practices for >> being a well behaved Riak client, RawClient is used by IRiakClient, and can >> certainly be used to build your own interactions with Riak. >> >> I hope that helps explain why there are there 2 layers that you can use, one >> building on the other. >> >> Please feel free to ask away if I can clear it up any more, >> >> Cheers >> >> Russell >> >>> On Wed, Apr 11, 2012 at 12:09 PM, Russell Brown <[email protected]> >>> wrote: >>>> Hi Ahmed, >>>> >>>> On 11 Apr 2012, at 19:45, Ahmed Bashir wrote: >>>> >>>> Thanks for the link; this is precisely what led me to believe that >>>> PBClusterConfig only supports IRiakClient, so I thought I'd ask around >>>> >>>> >>>> PBClusterConfig is used to produce a RawClient. IRiakClient is just a >>>> wrapper around RawClient. The cluster client is a RawClient. RawClient is >>>> more like that legacy RiakClient/RiakObject classes you're using. >>>> >>>> See >>>> http://basho.github.com/riak-java-client/1.0.5/com/basho/riak/client/raw/pbc/PBRiakClientFactory.html >>>> for >>>> details. >>>> >>>> Cheers >>>> >>>> Russell >>>> >>>> >>>> ... >>>> >>>> Also, if we create a RiakClient with a single host (and others exist), >>>> is there any auto-dicovery that goes on to balance the requests across >>>> ll ring members, or will that one host process all the app requests? >>>> >>>> >>>> >>>> On Wed, Apr 11, 2012 at 11:32 AM, Sean Cribbs <[email protected]> wrote: >>>> >>>> Ahmed, >>>> >>>> >>>> I think you'll find this resource useful, it contains some examples of how >>>> >>>> to use >>>> >>>> PBClusterConfig: >>>> https://github.com/basho/riak-java-client/wiki/ClientFactory >>>> >>>> >>>> On Wed, Apr 11, 2012 at 2:29 PM, Ahmed Bashir <[email protected]> >>>> >>>> wrote: >>>> >>>> >>>> Hey guys, >>>> >>>> >>>> I currently have an app that uses the RiakClient/RiakObject interface >>>> >>>> (fetch(),store(),etc) in lieu of the >>>> >>>> IRiakClient/IRiakObject/FetchObject interface. >>>> >>>> >>>> Is there any way for me to continue using my code with >>>> >>>> PBClusterConfig? It looks like I need to move to using IRiakClient in >>>> >>>> order to take advantage of PBClusterConfig, is that so? >>>> >>>> >>>> Any insight would be appreciated, thanks! >>>> >>>> >>>> Ahmed >>>> >>>> >>>> _______________________________________________ >>>> >>>> riak-users mailing list >>>> >>>> [email protected] >>>> >>>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> >>>> Sean Cribbs <[email protected]> >>>> >>>> Software Engineer >>>> >>>> Basho Technologies, Inc. >>>> >>>> http://basho.com/ >>>> >>>> >>>> >>>> _______________________________________________ >>>> 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 >> > > _______________________________________________ > 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
