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

Reply via email to