phoenix-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lars Hofhansl (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-5096) Local index region pruning is not working as expected.
Date Thu, 10 Jan 2019 23:50:00 GMT

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

Lars Hofhansl commented on PHOENIX-5096:
----------------------------------------

What also works:
create table test (pk1 integer not null, pk2 integer not null, pk3 integer not null, v1 float,
v2 float, v3 integer CONSTRAINT pk *PRIMARY KEY (pk1, pk2, pk3)*);
create local index l1 on *test(pk1, v1)*;

{code}
0: jdbc:phoenix:localhost> explain select /* NO_INDEX */ count(*) from test where pk1 <
1 and pk1 >= 0 and v1 < 0.001;
+------------------------------------------------------------------------------------------------------------------+-----------------+----------------+----------------+
|                                                       PLAN                             
                         | EST_BYTES_READ  | EST_ROWS_READ  |  EST_INFO_TS   |
+------------------------------------------------------------------------------------------------------------------+-----------------+----------------+----------------+
| CLIENT 1-CHUNK 5518821 ROWS 314572800 BYTES PARALLEL 1-WAY SKIP SCAN ON 1 RANGE OVER TEST
[1,0,*] - [1,1,0.001]  | 314572800       | 5518821        | 1547163312051  |
|     SERVER FILTER BY FIRST KEY ONLY                                                    
                         | 314572800       | 5518821        | 1547163312051  |
|     SERVER AGGREGATE INTO SINGLE ROW                                                   
                         | 314572800       | 5518821        | 1547163312051  |
+------------------------------------------------------------------------------------------------------------------+-----------------+----------------+----------------+
3 rows selected (0.054 seconds)
{code}

So if the pk part if completely bound it work... Again only when we rearrange the key structure
of the local index.

> Local index region pruning is not working as expected.
> ------------------------------------------------------
>
>                 Key: PHOENIX-5096
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5096
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Lars Hofhansl
>            Priority: Major
>
> The pruning of local indexes should do the following:
> * Use the local index
> * Reduce the number of regions based on filters on the table's primary key (i.e. WHERE
conditions including prefixes of the primary key)
> Instead it looks like in order for this to work the needed PK column need to be included
in the local index itself, changing the sort order of the local index.
> I'll provide some examples in the comments.
> [~giacomotaylor], [~tdsilva], [~vincentpoon], [~elserj], [~gjacoby]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message