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

Todd Lipcon commented on KUDU-2380:
-----------------------------------

It seems that 7201b0635a448cd244dc598158b13226f14aa0fb improved this for the 
case where an entire rowblock is eliminated (either by deletions or by not 
matching a predicate). I tested COUNT(*) vs * on a table using a predicate with 
no matches and found that KUDU-2381 was responsible for the main difference 
between the two.



> Selective predicates when selecting high number of columns burns CPU in 
> SerializeRowBlock
> -----------------------------------------------------------------------------------------
>
>                 Key: KUDU-2380
>                 URL: https://issues.apache.org/jira/browse/KUDU-2380
>             Project: Kudu
>          Issue Type: Improvement
>          Components: perf, tserver
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>            Priority: Major
>         Attachments: pprof.kudu-tserver.samples.cpu.001.pb.gz
>
>
> Testing a table with 280 columns, I found the following performance 
> characteristic:
> - scanning all 280 columns with a selective non-key predicate which matches 0 
> rows took 8.28s
> - scanning no columns (count query) with the same predicate which matches 0 
> rows took 314ms.
> This suggests that we are burning 96% of our CPU doing useless work for this 
> query.



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

Reply via email to