[
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)