incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Faraaz Sareshwala <fsareshw...@quantcast.com>
Subject row cache
Date Thu, 15 Aug 2013 05:56:45 GMT
At the Cassandra 2013 conference, Axel Liljencrantz from Spotify discussed various cassandra
gotchas in his talk on "How Not to Use Cassandra." One of the sections of his talk was on
the row cache. If you weren't at the talk, or don't remember it, the video is up on youtube
[1]. The discussion on the row cache starts at about 5:35.

The takeaway from his row cache bit is that the row cache stores the full row:
Cache misses on a single column get silently turn into a full row read in order to cache the
full row
All writes invalidate the entire row (updates thrown out the cached row)


I'm mostly interested in his second point. Is he saying that a single column mutation on a
row which happens to be in the row cache results in the row cache completely discarding the
row and waiting for another read of the row in order to bring it back in?

I must have misunderstood what he said because there is no way the row cache would be effective
at all if that is how it worked. Most likely, it is smart and updates both the cache and real
storage, or sets a dirty bit and writes through on eviction or some other sane eviction policy.

I have yet to go through the source code for the row cache. I do plan to do that. Can someone
point me to documentation on the row cache internals? All I've found online so far is small
discussion about it and how to enable it.

Thank you,
Faraaz

[1] http://www.youtube.com/watch?v=0u-EKJBPrj8
Mime
View raw message