[ 
https://issues.apache.org/jira/browse/CASSANDRA-6477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14631353#comment-14631353
 ] 

Benedict commented on CASSANDRA-6477:
-------------------------------------

bq. I've actually never understood why we do a batchlog update on the base 
table replicas (and so I think we should remove it, even though that's likely 
not the most costly one). Why do we need it?

The thing is, the coordinator-level batchlog write is quite expensive. It seems 
we've paired each node with one MV node, but here's an idea: why not also pair 
it with RF-2 (or 1, and only support RF=3 for now) partners, to whom it 
requires the first write to be propagated, without which it does not 
acknowledge? This could be done with a specialised batchlog write, that goes to 
the local node _and_ the paired MV node. That way, most importantly, we do not 
have to wait synchronously for the batchlog records to be written: if they're 
lost, then the corruption caused by their loss is also lost.



> Materialized Views (was: Global Indexes)
> ----------------------------------------
>
>                 Key: CASSANDRA-6477
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6477
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: API, Core
>            Reporter: Jonathan Ellis
>            Assignee: Carl Yeksigian
>              Labels: cql
>             Fix For: 3.0 beta 1
>
>         Attachments: test-view-data.sh, users.yaml
>
>
> Local indexes are suitable for low-cardinality data, where spreading the 
> index across the cluster is a Good Thing.  However, for high-cardinality 
> data, local indexes require querying most nodes in the cluster even if only a 
> handful of rows is returned.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to