Reddit joins Digg, Twitter on Cassandra
blog.reddit.com
blog.reddit.com
We are looking into Cassandra for thecadmus.com and any info would be greatly appreciated. Thanks.
If you're writing to disk, _anything_ will need good i/o performance to do well. That's sort of the name of the game.
EBS is kind of ass for i/o, not so much for average but because you get huge latency spikes for no reason. Most cassandra installs "in the cloud" are on rackspace cloud servers instead (where you get persistent, raided local disk) for this reason.
But, you do see people like reddit and simplegeo and openx running it on ec2 and it seems to work well enough.
Also it seems most of reads are done from the memory anyways (they mentioned 6GB RAM for 94% of their database in old memcachedb setting [1]).
So much less stress on I/O for this particular use-case.
[1] http://blog.reddit.com/2010/03/and-fun-weekend-was-had-by-al...
If anyone has any links to Cassandra/MongoDB comparisons for my desired setup I would appreciate seeing them.
Just trying to get my head around this nosql thing and the different approaches...
(Edit: as compared to other 'non traditional' database systems).
Cassandra only guarantees eventual consistency where as most RDBMS systems are focused on always showing a consistent view of data. Because of this (and other trade-offs), Cassandra is able to provide much higher IO rates as well as improved fault tolerance and linear scalability.
Twitter, Digg, and Facebook all happen to have usages which fit perfectly with this model. If you see a status update a few seconds (or even minutes) late occasionally it's no big deal. If your bank funds aren't matching for that long, it can be a big deal.
Edit: I just started looking into Cassandra a few days ago so someone please correct me if I've mis-stated anything.
How will we add new machines? Are their any single points of failure? Do the writes scale as well? How much administration will the system require? If its open source, is there a healthy community?
(And I would add, is it _fast_ as well as scalable?)