Live data from Hacker News

Cassandra Performance

datastax.com

21–30 of 76 posts

Re: Cassandra Performance

#21
post #9

Cassandra is ugly, hardcore and performant as hell. It's not meant for the casual user, it's really meant to be there for you at scales where MongoDB craps its pants. If you wrap your head around ColumnFamilies, tunable consistency and NetworkTopologySnitch strategies, you get rewarded by a database that can scale on a global level to millions of I/O operations per second. We at Trademob have chosen Cassy as the back…

Sorry but this is just nonsense. Cassandra with PlayORM/Astyanax has been the easiest database for me to install, use and manage out of the 10+ I've tried. Far simpler to install/manage than MySQL Cluster or Riak, far easier to use than PostgreSQL and infinitely better to scale than MongoDB. You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine and if you…

If you don't understand the implications of eventual consistency, you're heading for a fall.

It's not a trivial topic and unfortunately "it appears to work as you'd expect" on a small dev cluster which can lead to statements like yours.

Your parent's post is actually very very accurate.

Re: Cassandra Performance

#22
post #9

Cassandra is ugly, hardcore and performant as hell. It's not meant for the casual user, it's really meant to be there for you at scales where MongoDB craps its pants. If you wrap your head around ColumnFamilies, tunable consistency and NetworkTopologySnitch strategies, you get rewarded by a database that can scale on a global level to millions of I/O operations per second. We at Trademob have chosen Cassy as the back…

Sorry but this is just nonsense. Cassandra with PlayORM/Astyanax has been the easiest database for me to install, use and manage out of the 10+ I've tried. Far simpler to install/manage than MySQL Cluster or Riak, far easier to use than PostgreSQL and infinitely better to scale than MongoDB. You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine and if you…

> You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine

Whaa?? Fine for what?

I agree with the OP. I used cassandra at a startup for a year, about a year ago, and haven't used it since last April. I'm sure things have progressed some (and we were using SuperColumns which a new user today might not) but the idea that it's a black box you don't need to understand? Not at the load we were putting it under.

Re: Cassandra Performance

#24
post #5

I'm not sure what's the point comparing benchmarks this way. Choosing a database is not only about performance, it's about the type of application you are building, the stage it's in (prototype product doesn't have the same need as a product that has grown over 5 years). It's also about the people that works on the project. Some projects are better handled in a specific language (ruby/java/php,asp.net, etc.) For exam…

This is terrible advice on how to build an application. As everyone who has worked on a large enterprise type project before knows, the decisions you make at the start live on. It is very rare to completely switch major parts of your architecture especially today where the database you choose will affect your entire architecture. Cassandra like Riak is multi master which means your deployment strategy would be very d…

Facebook completely changed their database infrastructure a few times since its beginning. So has Twitter, Google, Foursquare and many others.

While you may disagree with this, there are many living examples.

Re: Cassandra Performance

#25
post #9

Cassandra is ugly, hardcore and performant as hell. It's not meant for the casual user, it's really meant to be there for you at scales where MongoDB craps its pants. If you wrap your head around ColumnFamilies, tunable consistency and NetworkTopologySnitch strategies, you get rewarded by a database that can scale on a global level to millions of I/O operations per second. We at Trademob have chosen Cassy as the back…

Sorry but this is just nonsense. Cassandra with PlayORM/Astyanax has been the easiest database for me to install, use and manage out of the 10+ I've tried. Far simpler to install/manage than MySQL Cluster or Riak, far easier to use than PostgreSQL and infinitely better to scale than MongoDB. You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine and if you…

What is hard about using PostgreSQL?

Re: Cassandra Performance

#26
HBase looks bad in some of these benchmarks, because it is hard to setup and has many tuning knobs to be tuned correctly for the workload in question.

Due to its strictly consistent nature you have to think about key design, hotspotting of servers, etc, etc. In return you get correct atomic operations, row transactions, range scans by default (Cassandra uses a random partitioner by default not allowing range scans), etc, etc.

Some of the largest installations on this planet run on HBase. For example, FaceBooks HBase stats at HBaseCon (May 2012): Billions of msgs/day, 75Bn ops/day, 1.5M ops/sec peak. 250TB new data/mo and growing. (Facebook also created Cassandra, but is not using it)

As usual you use the right tool for the job and isolated benchmarks usually do not bear this out.

Re: Cassandra Performance

#27

HBase looks bad in some of these benchmarks, because it is hard to setup and has many tuning knobs to be tuned correctly for the workload in question. Due to its strictly consistent nature you have to think about key design, hotspotting of servers, etc, etc. In return you get correct atomic operations, row transactions, range scans by default (Cassandra uses a random partitioner by default not allowing range scans),…

And more usually, you'll use the tool the tool that your most familiar with or can become most familiar [quickest]. You say so yourself, HBase is relatively hard to quickly come to terms. We can observe the same when viewing the "SQL camp" with MySQL and PostgreSQL (and MSSQL).

It is also true of the Facebook HBase install! Completely unnecessary jab; the use of HBase was politically driven -- what the architects wanted to use. What are the proofs that it was the "right tool?" Well, it works, but you won't find it behind Google's Gmail / Talk, so who knows!?

Re: Cassandra Performance

#28

Earlier quoted context omitted.

Sorry but this is just nonsense. Cassandra with PlayORM/Astyanax has been the easiest database for me to install, use and manage out of the 10+ I've tried. Far simpler to install/manage than MySQL Cluster or Riak, far easier to use than PostgreSQL and infinitely better to scale than MongoDB. You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine and if you…

> You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine Whaa?? Fine for what? I agree with the OP. I used cassandra at a startup for a year, about a year ago, and haven't used it since last April. I'm sure things have progressed some (and we were using SuperColumns which a new user today might not) but the idea that it's a black box you don't need to unde…

Cassandra by itself is definitely complex.

But if you're a Java developer then PlayORM/Astyanax abstracts away almost all of the complexity and allow you to focus on your data model and not worry about the columns. Likewise for the preferences the defaults make sense and are pretty straightforward to change if you do need.

Re: Cassandra Performance

#29

Earlier quoted context omitted.

Sorry but this is just nonsense. Cassandra with PlayORM/Astyanax has been the easiest database for me to install, use and manage out of the 10+ I've tried. Far simpler to install/manage than MySQL Cluster or Riak, far easier to use than PostgreSQL and infinitely better to scale than MongoDB. You don't have to understand ColumnFamilies, consistency or the different topology strategies. The defaults are fine and if you…

If you don't understand the implications of eventual consistency, you're heading for a fall. It's not a trivial topic and unfortunately "it appears to work as you'd expect" on a small dev cluster which can lead to statements like yours. Your parent's post is actually very very accurate.

I am not disputing that Cassandra has a learning curve but I just disagree that it is any different to every other database available today.

They ALL have issues and eventual consistency is a fundamental part of a distributed database so its something you have to learn either way.

Re: Cassandra Performance

#30
The big caveat in their usage of VoltDB is that they are apparently using a synchronous client, waiting for a response each time, instead of async streaming. They mention this briefly in passing at the bottom of the paper, and say the VoltDB people were able to see performance increase by using an async client.
Post reply on HN