[
https://issues.apache.org/jira/browse/CASSANDRA-10414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
C. Scott Andreas updated CASSANDRA-10414:
-----------------------------------------
Component/s: Coordination
> Add Internal Support for Reading Multiple Token Ranges with Single Command
> --------------------------------------------------------------------------
>
> Key: CASSANDRA-10414
> URL: https://issues.apache.org/jira/browse/CASSANDRA-10414
> Project: Cassandra
> Issue Type: Improvement
> Components: Coordination
> Reporter: Tyler Hobbs
> Priority: Major
> Labels: performance
> Fix For: 4.x
>
>
> Since CASSANDRA-1337, we've parallelized fetches of multiple token ranges
> when handling range slices or secondary index queries. However, a separate
> command still needs to be created, issued, and handled for (almost) every
> token range. With vnodes enabled, the number of commands to handle becomes
> quite large, introducing a lot of extra overhead. If we allow ReadCommands
> to contain multiple token ranges instead of a single range, we could
> significantly improve this.
> A secondary bonus of doing this is that we will reduce over-fetching of rows.
> Right now, each command uses the same total limit. If some of the token
> ranges have more rows than we expect (based on the average partition size and
> key estimates), the replicas will over-fetch rows, only for them to be
> discarded by the coordinator. In the worst case scenario, each token range
> could contain LIMIT rows. With a multi-range command we could still have
> overfetching, but it would be more tightly bounded: each node could return at
> most LIMIT rows (across all token ranges combined).
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]