cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Liu (JIRA)" <>
Subject [jira] [Updated] (CASSANDRA-6048) CQL3 data filtering improvement
Date Thu, 17 Oct 2013 05:46:47 GMT


Alex Liu updated CASSANDRA-6048:

    Attachment: 6048-1.2-branch.txt

Patch on cassandra-1.2 branch is attached. It adds "ALLOW JOIN FILTERING" clause, so when
it's enable the join data filtering is used.

> CQL3 data filtering improvement
> -------------------------------
>                 Key: CASSANDRA-6048
>                 URL:
>             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

View raw message