Thanks. We are not planning to use row cache because we don't anticipate requests for the same row coming in often and we would better let the OS do the caching.. So does this mean in my case instead of running 6 servers with 100 GB each, I can run 75 servers with 8 GB RAM and set the Xms/Xmx to 4GB.
That's misleading, because you don't necessarily need to give the
memory to the JVM for Cassandra to make use of it. (See, for example,
In fact it's counterproductive to increase heap size past the point
where it can handle the bloom filters + memtables for your data set.
I suspect that the vast majority of deployments will not benefit from
heaps larger than 4GB, and there is a ticket open to make this the
default for 1.0: https://issues.apache.org/jira/browse/CASSANDRA-3295
That said, if you have the choice it's generally better to choose
more, smaller servers than fewer, larger ones, primarily because it's
easier to deal with failures. If you had 12 nodes half as expensive,
for instance, losing one would be 1/12 of your capacity instead of
On Mon, Oct 3, 2011 at 9:47 PM, Ramesh Natarajan <email@example.com> wrote:
> I was reading an article @ http://www.acunu.com/products/choosing-cassandra/
> and it mentions cassandra cannot benefit from more than 8GB allocated to JVM
> heap. Is this true? Are these cassandra installations with larger heap
> sizes? We are planning to have a cluster of 6 nodes with each node running
> with about 100 GB or so RAM. Will this be a problem?
> from http://www.acunu.com/products/choosing-cassandra/
> Memory Ceiling
> Cassandra typically cannot benefit from more than 8GB of RAM allocated to
> the Java heap, imposing a hard limit on data size. Taking advantage of big
> servers with lots of memory or many disks is no problem for Acunu. Thereʼs
> no memory ceiling for Acunu and as a result, no data ceiling either. Need to
> use larger servers? Go ahead.
Project Chair, Apache Cassandra
co-founder of DataStax, the source for professional Cassandra support