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

Carl Yeksigian commented on CASSANDRA-6477:
-------------------------------------------

- I think it makes sense to add an {{ALTER MATERIALIZED VIEW}} statement which 
allows for changing the options, without allowing the other operations - on par 
with what is provided with {{ALTER TABLE}} for MVs right now. I'll do that and 
disable using {{ALTER TABLE}} with MV's.
- Adding {{MATERIALIZEDVIEW}} to the flags seems like a good idea, and 
following the isCounter mold here. Moving it to CFMetaData also makes Thrift 
validation easier.
- I can add validation for Thrift to disallow modifying the views directly.
- Definitely need to disallow triggers on MV; they aren't going to work 
properly. I'm not sure if there is a strong reason to disable indexes on 2i, 
but if there is, shouldn't be too hard to disallow.
- It makes sense to move the {{SELECT}} permission into the update, like cas; 
probably also need to ensure {{MODIFY}} permission for the MV when updating base
- This has been following the 2i mainly because it was developed as global 
indexes, not MV. Might make sense to move to be on par with tables, but they 
are still intricately related to their underlying base table, so I'm inclined 
to leave as is for now (but, we should move that discussion to a new ticket 
before 3.0 GA)
- Let's move the combining two tables into a follow up ticket dependent on 
CASSANDRA-9712
- Let's move this into a follow up ticket which will come between this one and 
CASSANDRA-9778; might make sense to do with the previous refactor as well
- cas + MV need to be tested; since the materialized view updates happen inside 
the {{Keyspace.apply}} method, cas should update fine, but we aren't going to 
be hitting the coordinator batchlog so the failure scenarios may be subtly 
different.
- I'll disallow creating view on top of view

> 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 alpha 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