phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-258) Use skip scan when SELECT DISTINCT on leading row key column(s)
Date Wed, 01 Jun 2016 16:57:59 GMT

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

James Taylor commented on PHOENIX-258:
--------------------------------------

Yes, good point, [~lhofhansl]. The reverse scan case is tricky. Padding with a single 0xFF
isn't necessarily enough, as if the next field is a BIGINT, you'd need 8 0xFF bytes, and if
the field after that is an INTEGER, you'd need 4 more 0xFF bytes. Since we have the schema
information, we can compute the necessary padding in the constructor. You'd just loop through
the fields in the RowKeySchema and add the field.getByteSize() while field.isFixedLength()
is true. Then add one more to the sum you get and you'll be good in all cases.

> Use skip scan when SELECT DISTINCT on leading row key column(s)
> ---------------------------------------------------------------
>
>                 Key: PHOENIX-258
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-258
>             Project: Phoenix
>          Issue Type: Task
>            Reporter: ryang-sfdc
>            Assignee: Lars Hofhansl
>             Fix For: 4.8.0
>
>         Attachments: 258-WIP.txt, 258-v1.txt, 258-v10.txt, 258-v11.txt, 258-v12.txt,
258-v13.txt, 258-v14.txt, 258-v2.txt, 258-v3.txt, 258-v4.txt, 258-v5.txt, 258-v6.txt, 258-v7.txt,
258-v8.txt, 258-v9.txt, 258.txt, DistinctFixedPrefixFilter.java, in-clause.png
>
>
> create table(a varchar(32) not null, date date not null constraint pk primary key(a,date))
> [["PLAN"],["CLIENT PARALLEL 94-WAY FULL SCAN OVER foo"],["    SERVER AGGREGATE INTO ORDERED
DISTINCT ROWS BY [a]"],["CLIENT MERGE SORT"]]             
> We should skip scan.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message