Apache Cassandra™ 1.2

JavaScript must be enabled in order to use this site.

Please enable JavaScript in your browser and refresh the page.

About the read path

A description and illustration of the Cassandra read path.

When a read request for a row comes in to a node, the row must be combined from all SSTables on
that node that contain columns from the row in question, as well as from any unflushed memtables,
to produce the requested data. This diagram depicts the read path of a read request, continuing
the example in The write path of an update:

For example, you have a row of user data and need to update the user email address. Cassandra
doesn't rewrite the entire row into a new data file, but just puts new email address in the new
data file. The user name and password are still in the old data file.

The red lines in the SSTables in this diagram are fragments of a row that Cassandra needs to
combine to give the user the requested results. Cassandra caches the merged value, not the raw
row fragments. That saves some CPU and disk I/O.

The row cache is a write-through cache, so if you have a cached row and you update that row, it
will be updated in the cache and you still won't have to merge that again.

For a detailed explanation of how client read and write requests are handled in Cassandra, also
see Client requests.