54liu...@163.com has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/16822


Change subject: IMPALA-10377 Improve the accuracy of resource estimation 
PlanNode does not consider some factors when estimating memory, this will cause 
a large error rate
......................................................................

IMPALA-10377 Improve the accuracy of resource estimation
PlanNode does not consider some factors when estimating memory, this will cause 
a large error rate

AggregationNode
1.The memory occupied by hash table's own data structure is not considered. 
Hash table inserts a new value, which will add a bucket. The size of a bucket 
is 16 bytes.
2.When estimating the NDV of merge aggregation, if there are multiple grouping 
exprs, it may be divided by the number of Fragment Instances several times, and 
it should be divided only once.
3.When estimating the NDV of merge aggregation, and there are multiple grouping 
exprs, the estimated memory is much smaller than the actual use.
4.If there is no grouping exprs, the estimated memory is much larger than the 
actual use.
5.If the NDV of grouping exprs is very small, the estimated memory is much 
larger than the actual use.

SortNode
1.Estimate the memory usage of external sort. the estimated memory is much 
smaller than the actual use.

HashJoinNode
1.The memory occupied by hash table's own data structure is not considered.Hash 
Table will keep duplicate data, so the size of DuplicateNode should be 
considered.
2.Hash table will create multiple buckets in advance. The size of these buckets 
should be considered.

KuduScanNode
1.Estimate memory by scanning all columns,the estimated memory is much larger 
than the actual use.

Change-Id: I46c656bc88b969f4de99e187df16be3887592f3d
---
M fe/src/main/java/org/apache/impala/planner/AggregationNode.java
M fe/src/main/java/org/apache/impala/planner/HashJoinNode.java
M fe/src/main/java/org/apache/impala/planner/JoinNode.java
M fe/src/main/java/org/apache/impala/planner/KuduScanNode.java
M fe/src/main/java/org/apache/impala/planner/PlanFragment.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/planner/SortNode.java
M fe/src/test/java/org/apache/impala/planner/CardinalityTest.java
8 files changed, 227 insertions(+), 16 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/22/16822/1
--
To view, visit http://gerrit.cloudera.org:8080/16822
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I46c656bc88b969f4de99e187df16be3887592f3d
Gerrit-Change-Number: 16822
Gerrit-PatchSet: 1
Gerrit-Owner: Anonymous Coward <54liu...@163.com>

Reply via email to