incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Drew Kutcharian <d...@venarc.com>
Subject Re: Ditching Cassandra
Date Wed, 30 Mar 2011 00:53:05 GMT
Hi Gregori,

I'm about to start a new project and I was considering using MongoDB too, but I just couldn't
find a nice way to scale it. Seems like for scaling you need to use the same style as MySQL,
having master/slaves and replicas, which for us was a deal breaker. We just couldn't see how
you would scale MongoDB to support massive databases that you can reach using Cassandra/HBase.

I personally think that's where Cassandra shines and if you don't need that massive scale,
then there are a lot nicer solutions out there.

How do you scale MongoDB to store massive amounts of data?

- Drew





On Mar 29, 2011, at 5:11 PM, Gregori Schmidt wrote:

> hi,
> 
> After using Cassandra during development for the past 8 months my team and I made the
decision to switch from Cassandra to MongoDB this morning.  I thought I'd share some thoughts
on why we did this and where Cassandra might benefit from improvement.
> The API is horrible and it produces pointlessly verbose code in addition to being utterly
confusing.  EVERYTHING takes a lot of time to implement with Cassandra, and to be frank, it
is incredibly tiring.  For this reason alone I no longer recommend Cassandra.  If you want
an example, pick up the O'Reilly book on Cassandra and look through the examples.  Such MASSIVE
amounts of code for doing nearly NOTHING.  This is ridiculous.  Didn't this strike anyone
else as ridiculous?  It should have!
> You need to have official client libraries and they need to be programmer friendly. 
Yes, I know there are nice people maintaining a plethora of different libraries, but you need
to man up and face reality:  the chaos that is the Cassandra client space is a horrible mess.
> It is buggy and the solution seems to be to just go to the next release.  And the next.
 And the next.  Which would be okay if you could upgrade all the time, but what to do once
you hit production?
> I would recommend that everyone interested in improving Cassandra take the day off, 
download MongoDB and read https://github.com/karlseguin/the-little-mongodb-book . Then, while
you are downloading, unpacking, looking at what was in the JAR, reading the book and pawing
through the examples: _pay attention_ to the neatness and the effortlessness the ease with
which you can use MongoDB.  Then spend the rest of the day implementing something on top of
it to gain some hacking experience.
> 
> No, really.  Do it.  This is important.  You need to connect with the user and you need
to understand what you ought to be aspiring to.
> 
> In any case, thanks for all the effort that went into Cassandra.  I will check back from
time to time and perhaps in a year or so it'll be time to re-evaluate Cassandra.
> 
> PS: one last thing.  It took us less time to rewrite the DB-interface for our system
to MongoDB AND port over our data than it took to write the Cassandra implementation.
> 
> ~G


Mime
View raw message