[
https://issues.apache.org/jira/browse/CASSANDRA-6477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14522171#comment-14522171
]
Matthias Broecheler commented on CASSANDRA-6477:
------------------------------------------------
bq. Sorry for a short reply. Just wanted to note that I see this being the
other way around. Full-on materialized views are the infrastructure for 'global
indexes', not the other way around.
Do you mean that from an implementation perspective? Conceptually, I would
argue it the other way around. When you build support for full-on materialized
views, you still have to deal with the decision: is the primary key high or low
selectivity, i.e. do I maintain this view locally or globally. And then,
depending on that decision, you would utilize the 2i infrastructure (or
something like it) or some other infrastructure for global maintenance of
derived records.
Plus, with full-on materialized views you are mixing in other challenges, like
dealing with multiple columns (e.g. CASSANDRA-5402).
So it seems, conceptually at least, that the initial atomic problem seems to be
how to consistently maintain derived row records on remote nodes. That would be
enough to build global indexes on a single column. From there, this could be
extended to full-on materialized view maintenance.
> 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.x
>
>
> 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)