incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oleg Tsernetsov <specif...@hot.ee>
Subject : Cassandra reads under write-only load, read degradation after massive writes
Date Wed, 09 Nov 2011 20:46:24 GMT
When monitoring JMX metrics of cassandra 0.8.7 loaded by write-only
test
I observe significant read activity on column family where I write to.
It seems strange to me, but I expected no read activity on write-only
load. The read activity is caused by writes, as when I stop the write
test, reads activity disappears. The test performs parallel column
writes to a single row, writing the values of fixed column set over and
over again. Furthermore, the second problem is that parallel massive
reads of such row degrade over time (even without parallel write load)
and cassandra starts burning 100% of CPU with read latency degrading
x20
times comparing with exactly the same row created from scratch. The
test
setup is 3 cassandra nodes, read/write consistency = Quorum. Row has 10
and above columns (tested with 10, 100, 1000, 10000 cols), the higher
is
the number of columns, the worse is observed degradation. Column family
has 2 indexed columns that are written with exactly the same values on
each and
every write. Row key, column name and column value are all Utf8Type.
Column family compaction on all the nodes does not help, and the row
remains "degraded". Read here means one of: read all the
the columns with slice query without bounds/with bounds; executing
column count query for a row with bounds/without bounds. I use Hector
as
cassandra client. I would be thankful if anyone could explain the read
activity on write load and give any hints on row read degradation after
massive write load on that row.

Regards,
Oleg
Mime
View raw message