Thank you Vivek. I'll start playing with the clients today. Thank you very much!
Best, Daniel On Tue, Jun 21, 2011 at 9:33 AM, Vivek Mishra <vivek.mis...@impetus.co.in>wrote: > Hi Daniel, > > Just saw your email regarding kundera download. > > > > Kundera snapshot jar is available at: > > > > > http://kundera.googlecode.com/svn/maven2/maven-missing-resources/com/impetus/kundera/1.1.1-SNAPSHOT/ > > > > In addition, > > If you want to download source code then it is at: > > > > https://github.com/impetus-opensource/Kundera > > > > You could also refer to Kundera-examples for reference at: > > > > https://github.com/impetus-opensource/Kundera-Examples > > > > I hope it helps. > > > > > > *From:* Daniel Colchete [mailto:d...@cloud3.tc] > *Sent:* Monday, June 20, 2011 8:23 PM > *To:* user@cassandra.apache.org > *Subject:* Re: Cassandra Clients for Java > > > > Thank you all for your answers! It hard to tell the good projects from the > not so good projects and it seems that the choice is really between Hector > and Pelops. On average, most of the people are using Hector or Pelops and > most of the names starts with Da (sorry, couldn't help :)). > > > > Dan Washusen asked to comment more regarding Hector's e Pelops' APIs. Lets > start with what cassandra gives us: get, insert, remove for simple > operations; get_slice to read an entire row (or something like that); > multiget_slice and batch_mutate for reading or writing multiple data with a > single call. So we could start from this and we would be speaking > Cassandra-nease. One CassandraClient class exporting all those methods, with > the necessary model classes on the package. > > > > All of those methods have small details we don't want to have to work out > every time, like timestamp (now is a perfect default value), consistency > level (the client could have default values) and string encoding (UTF8 could > be a default, but the CassandraClient and the model classes should handle it > themselves). So, at this point we would have an API similar to Thrift's but > a little less boring to use. > > > > With this API we could do failover, load balancing, auto node discovery, > and still be speaking Cassandra-nease. > > > > But them writing methods to read from Cassandra to create models and to > persist models would be a pretty time wasting task. So them we would move to > an JPA implementation doing this automagically, like Hector did (thanks for > showing this up). The JPA implementation (I have no idea how to write > something like this, although I would like to learn), would use our > simplified thrift-like interface. > > > > In the end: no third semantics, still have direct access to Cassandra to > deal with special cases and for most of the cases you have JPA, still have > failover and load balancing. How many dependencies do we need besides what > Cassandra already requires: zero. Simple, powerful. I agree that I'm not > showing a proof-of-concept or anything but it is a good starting vision for > a client. Of course there are corner cases and details to work out but, what > do you think? > > > > With Hector, from their Getting Started page, first you initialize a > Cluster, them you create a Keyspace from that cluster, them, wait, you have > to create a template for your column family. With that template you can > create an updater to do an insert (in Cassandra-nease), or you can query > columns to do an get_slice (in Cassandra-nease), or delete column to do a > remove (in Cassandra-nease). You can clearly see a third semantics here. > > > > With Pelops their documentation on their main website (at GitHub) seems > very lacking and I couldn't understand if you have to create a mutator to > every write or not and why they assigned strings and not objects to organize > connections. They have this pool thing related to the fact that they use > strings to organize connections. > > > > In the end I think Hector should be a better choice because of their JPA > implementation and because Pelops doesn't seem to have documentation. Thanks > again for showing the JPA thing up, I really couldn't find anything linking > to it. Not even their User guide. > > > > Thank you very much for all for the answers. > > > > Best, > > Dani > > > > On Sat, Jun 18, 2011 at 4:04 PM, Rajesh Koilpillai < > rajesh.koilpil...@gmail.com> wrote: > > +1 to Hector (especially with the changes made in the latest version of > their API) > > > > On Sun, Jun 19, 2011 at 12:01 AM, Steve Willcox <swill...@rallydev.com> > wrote: > > I'm using Hector. > > > > The main contributor Nate McCall is very active and responsive to any > issues. The Hector community is very active. > > > > I've been using Java for a long time and I disagree that the client is > more complex than the underlying Thrift client. The latest version of Hector > has made large gains in simplifying the API. It has connection caching, load > balancing and failover build into its client. > > > > I found it easy to use and stable. My code has been in production since > April 2011 and we've not had one Hector issue yet. > > > > Hope that helps > > > > Steve W. > > On Fri, Jun 17, 2011 at 4:02 PM, Daniel Colchete <d...@cloud3.tc> wrote: > > Good day everyone! > > > > I'm getting started with a new project and I'm thinking about using > Cassandra because of its distributed quality and because of its performance. > > > > I'm using Java on the back-end. There are many many things being said about > the Java high level clients for Cassandra on the web. To be frank, I see > problems with all of the java clients. For example, Hector and Scale7-pelops > have new semantics on them that are neither Java's or Cassandra's, and I > don't see much gain from it apart from the fact that it is more complex. > Also, I was hoping to go with something that was annotation based so that it > wouldn't be necessary to write boilerplate code (again, no gain). > > > > Demoiselle Cassandra seems to be one option but I couldn't find a download > for it. I'm new to Java in the back-end and I find that maven is too much to > learn just because of a client library. Also it seems to be hard to > integrate with the other things I use on my project (GWT, GWT-platform, > Google Eclipse Plugin). > > > > Kundera looks great but besides not having a download link (Google site > link to Github, that links to Google site, but no download) its information > is partitioned on many blog posts, some of them saying things I couldn't > find on its website. One says it uses Lucandra for indexes but that is the > only place talking about it, no documentation about using it. It doesn't > seem to support Cassandra 0.8 also. Does it? > > > > I would like to hear from the users here what worked for you guys. Some > real world project in production that was good to write in Java, where the > client was stable and is maintained. What are the success stories of using > Cassandra with Java. What would you recommend? > > > > Thank you very much! > > > > Best, > > -- > Dani > Cloud3 Tech - http://cloud3.tc/ > Twitter: @DaniCloud3 @Cloud3Tech > > > > > > -- > Thanks, > - Rajesh Koilpillai > > > > > -- > Dani > Cloud3 Tech - http://cloud3.tc/ > Twitter: @DaniCloud3 @Cloud3Tech > > > ------------------------------ > > Register for Impetus Webinar on ‘Leveraging the Cloud for your Product > Testing Needs’ on June 22 (10:00am PT). Meet Impetus as a sponsor for Hadoop > Summit 2011 in Santa Clara, CA on June 29. > > Click http://www.impetus.com to know more. Follow us on > www.twitter.com/impetuscalling > > > NOTE: This message may contain information that is confidential, > proprietary, privileged or otherwise protected by law. The message is > intended solely for the named addressee. If received in error, please > destroy and notify the sender. Any use of this email is prohibited when > received in error. Impetus does not represent, warrant and/or guarantee, > that the integrity of this communication has been maintained nor that the > communication is free of errors, virus, interception or interference. > -- Dani Cloud3 Tech - http://cloud3.tc/ Twitter: @DaniCloud3 @Cloud3Tech