You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Dan Burkert (JIRA)" <ji...@apache.org> on 2016/09/23 23:39:20 UTC
[jira] [Commented] (KUDU-1363) Add Multiple column range predicates
for the same column in a single scan
[ https://issues.apache.org/jira/browse/KUDU-1363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15517891#comment-15517891 ]
Dan Burkert commented on KUDU-1363:
-----------------------------------
I'm going to rename this to 'Add IN-list column predicate type', since that's what it has turned into. If we want disjunctive {{OR}} predicates we can open another issue. Over the last couple of days I've rebased [~sabhyankar]'s patch, and I think it's getting close to being merged, review: https://gerrit.cloudera.org/#/c/2986/. I also have a separate patch to add support to the Java client: https://gerrit.cloudera.org/#/c/4530/. I'm going to file separate issues for landing in the Spark connector, and an IMPALA issue for impala integration.
> Add Multiple column range predicates for the same column in a single scan
> -------------------------------------------------------------------------
>
> Key: KUDU-1363
> URL: https://issues.apache.org/jira/browse/KUDU-1363
> Project: Kudu
> Issue Type: New Feature
> Components: client, perf, tablet
> Reporter: Chris George
> Assignee: Sameer Abhyankar
>
> Currently adding multiple column range predicates for the same column does essentially an AND between the two predicates which will cause no results to be returned.
> This would greatly increase performance were I can complete in one scan what would otherwise take two.
> As an example using the java api:
> ColumnRangePredicate columnRangePredicateColumnNameA = new ColumnRangePredicate(new ColumnSchema.ColumnSchemaBuilder("column_name", Type.STRING).build());
> columnRangePredicateColumnNameA.setLowerBound("A");
> columnRangePredicateColumnNameA.setUpperBound("A");
> ColumnRangePredicate columnRangePredicateColumnNameB = new ColumnRangePredicate(new ColumnSchema.ColumnSchemaBuilder("column_name", Type.STRING).build());
> columnRangePredicateColumnNameB.setLowerBound("B");
> columnRangePredicateColumnNameB.setUpperBound("B");
> which would be equivalent:
> select * from some_table where column_name="A" or column_name="B"
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)