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

Stu Hood commented on CASSANDRA-749:
------------------------------------

Thoughts on incrementally updated views:

In a first version a View CF could be defined with a normal column family 
definition, plus a function that transforms a mutation against a 'base' column 
family into zero or more mutations against the 'view' column family.

At mutation time, inserts can immediately be transformed into inserts to the 
view. But, an insert that overwrites an older value implies deletion from the 
base, and therefore a potential deletion from the view.

One disadvantage/advantage Cassandra has is that an entire row is not available 
at mutation time, so we need to defer all deletes to the view until read time. 
To handle deletes, all columns in the view cf should be tagged with the 
column_key from the base cf that caused their creation.

At read time, the base cf column_keys that are tagging the columns in the view 
need to be queried and the view function re-applied. If the output of the view 
function no longer causes an insert to the column in question in the view, the 
column can be deleted from the view.

Definitely need to think of ways to efficiently account for deletes, and 
minimize the number of reads to the base cf that need to occur at read time for 
the view cf.

> Secondary indices for column families
> -------------------------------------
>
>                 Key: CASSANDRA-749
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-749
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Gary Dusbabek
>            Assignee: Gary Dusbabek
>            Priority: Minor
>             Fix For: 0.7
>
>         Attachments: 0001-simple-secondary-indices.patch
>
>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to