Data reads by default
---------------------
Key: CASSANDRA-2540
URL: https://issues.apache.org/jira/browse/CASSANDRA-2540
Project: Cassandra
Issue Type: Bug
Reporter: Stu Hood
Fix For: 0.8.0
The intention of digest vs data reads is to save bandwidth in the read path at
the cost of latency, but I expect that this has been a premature optimization.
* Data requested by a read will often be within an order of magnitude of the
digest size, and a failed digest means extra roundtrips, more bandwidth
* The [digest reads but not your data
read|https://issues.apache.org/jira/browse/CASSANDRA-2282?focusedCommentId=13004656&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13004656]
problem means failing QUORUM reads because a single node is unavailable, and
would require eagerly re-requesting at some fraction of your timeout
* Saving bandwidth in cross datacenter usecases comes at huge cost to latency,
since both constraints increase proportionally enough that the tradeoff is not
clear
Some options:
# Add an option to use digest reads
# Remove digest reads entirely (and/or punt and make them a runtime
optimization based on data size in the future)
\\
The outcome of data-reads-by-default should be significantly improved latency,
with a moderate increase in bandwidth usage for large reads.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira