You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Rajesh Balamohan (Jira)" <ji...@apache.org> on 2021/02/03 09:43:00 UTC

[jira] [Commented] (HIVE-24710) Optimise PTF iteration for count(*) to reduce CPU and IO cost

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

Rajesh Balamohan commented on HIVE-24710:
-----------------------------------------

Updated the subject and description of this ticket based on further debugging.

> Optimise PTF iteration for count(*) to reduce CPU and IO cost
> -------------------------------------------------------------
>
>                 Key: HIVE-24710
>                 URL: https://issues.apache.org/jira/browse/HIVE-24710
>             Project: Hive
>          Issue Type: Improvement
>          Components: HiveServer2
>            Reporter: Rajesh Balamohan
>            Priority: Major
>              Labels: performance
>
> E.g query
> {noformat}
> select x, y, count(*) over (partition by x order by y range between 86400 PRECEDING and CURRENT ROW) r0 from foo
> {noformat}
> 1. In such cases, there is no need to iterate over the rowcontainers often (internally it does O(n^2) operations taking forever when window frame is really large). This can be optimised to reduce CPU burn and IO.
> 2. BasePartitionEvaluator::calcFunctionValue need not materialize ROW when parameters are empty. This codepath can also be optimised.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)