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

Alex Liu edited comment on CASSANDRA-6048 at 10/17/13 6:08 AM:
---------------------------------------------------------------

Add "ALLOW JOIN FILTERING " to CQL clause. By default, it doesn't use join 
filtering, so end user can decide when to use join filtering by specifying 
"ALLOW JOIN FILTERING".


was (Author: alexliu68):
Add "ALLOW FILTERING JOIN" to CQL clause. By default, it doesn't use join 
filtering, so end user can decide when to use join filtering by specifying 
"ALLOW JOIN FILTERING".

> Add CQL3 join data filtering
> ----------------------------
>
>                 Key: CASSANDRA-6048
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6048
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Alex Liu
>            Assignee: Alex Liu
>         Attachments: 6048-1.2-branch.txt
>
>
> Existing data filtering uses the following algorithm
> {code}
>    1. find best selective predicate based on the smallest mean columns count
>    2. fetch rows for the best selective predicate predicate, then filter the 
> data based on other predicates left.
> {code}
> So potentially we could improve the performance by
> {code}
>    1.  joining multiple predicates then do the data filtering for other 
> predicates.
>    2.  fine tune the best predicate selection algorithm
> {code}
> For multiple predicate join, it could improve performance if one predicate 
> has many entries and another predicate has a very few of entries. It means a 
> few index CF read, join the row keys, fetch rows then filter other predicates
> Another approach is to have index on multiple columns.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to