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)