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

Hudson commented on PHOENIX-29:
-------------------------------

FAILURE: Integrated in Apache Phoenix - Branch:4.0 #35 (See 
[https://builds.apache.org/job/Phoenix-4.0/35/])
PHOENIX-29 (anoopsamjohn: rev 59618250ba0515a547a52d6279f62e1897a4f563)
* phoenix-core/src/main/java/org/apache/phoenix/compile/ProjectionCompiler.java
PHOENIX-29 (anoopsamjohn: rev e6de665dcd725ed425656ec7d07027dff9df3e6b)
* phoenix-core/src/main/java/org/apache/phoenix/compile/StatementContext.java
PHOENIX-29 (anoopsamjohn: rev 9f936749b89d06dcc966f94c73dd4da0aa2bef96)
* phoenix-core/src/main/java/org/apache/phoenix/compile/WhereCompiler.java
PHOENIX-29 (anoopsamjohn: rev 51f8a00dbdb011b5279f82d1a3f18399008eab3c)
* 
phoenix-core/src/main/java/org/apache/phoenix/filter/ColumnProjectionFilter.java
PHOENIX-29 (anoopsamjohn: rev 6ba276be0169e08f0894940651a4f990c7df4c58)
* phoenix-core/src/main/java/org/apache/phoenix/iterate/ExplainTable.java
PHOENIX-29 (anoopsamjohn: rev b75206db6eac2cc9809feefcc6b4709569101b3b)
* phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java
PHOENIX-29 (anoopsamjohn: rev 43381fcdd44eb111b6b2feb36dc2d73efe6ead2c)
* 
phoenix-core/src/test/java/org/apache/phoenix/end2end/ColumnProjectionOptimizationTest.java
PHOENIX-76 Fix perf regression due to PHOENIX-29 (JamesTaylor) (jamestaylor: 
rev 2581c20fba120466e4d1337e6ba086a435a07f2a)
* phoenix-core/src/main/java/org/apache/phoenix/iterate/ParallelIterators.java


> Add custom filter to more efficiently navigate KeyValues in row
> ---------------------------------------------------------------
>
>                 Key: PHOENIX-29
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-29
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: Anoop Sam John
>             Fix For: 3.0.0
>
>         Attachments: PHOENIX-29.patch, PHOENIX-29_V2.patch, 
> PHOENIX-29_V5.patch, PHOENIX-29_v3.patch, PHOENIX-29_v4.patch
>
>
> Currently HBase is 50% faster at selecting the first KV in a row than in 
> selecting any other column. The reason is that when you project a column into 
> a Scan, HBase uses its ExplicitColumTracker which does a reseek to the 
> column. The only case where this is not necessary is when the column is the 
> first one.
> In most cases (unless you have thousands of versions), it'd be more efficient 
> to just do a NEXT instead of a reseek (especially if your KV is the next 
> one). We can provide our own custom filter through which we pass two lists:
> 1) all KVs referenced in the select expressions. These are the only ones that 
> need to be returned back to the client which is another advantage we'd get 
> writing this custom filter.
> 2) all KVs referenced in the WHERE clause.
> The filter could sort the KVs using the standard KeyValue.COMPARATOR and 
> merge between them and the incoming KVs, using NEXT instead of a reseek. We 
> could potentially use a reseek if the number of columns in the table is 
> beyond a certain threshold.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to