1
votes

Test the cassandra with YCSB and using the workloadc(read100%) . And iostat always show 0 with read.

Configurations:

data is on sdb, 24G data , 8G heap size, default memtable size, disable row-cache and key-cache.

As my thought, uniform request would cause the memtable miss, and lookup the data on ssttable, so the data dir iostat should not be zero. How could 8G heap's memtable store all the 24G data?

Anybody hit the same problem?

2

2 Answers

0
votes

There's no magic going on here. Your request workload must not be as random as you thought.

I happen to have a copy of YCSB checked out and workloadc uses requestdistribution=zipfian which is NOT uniform.

0
votes

how much total memory on the machine? If you have 32GB or more of RAM on the machine then it could also be the OS page cache - which would be outside of the Cassandra process (e.g. not the heap). In scenrios like that, the OS (assuming its linux) will wind up caching the entire 24GB in memory and you'll get little disk activity.