You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/04/04 01:00:00 UTC
[jira] [Work logged] (HIVE-23095) NDV might be overestimated for a
table with ~70 value
[ https://issues.apache.org/jira/browse/HIVE-23095?focusedWorklogId=415863&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-415863 ]
ASF GitHub Bot logged work on HIVE-23095:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 04/Apr/20 00:59
Start Date: 04/Apr/20 00:59
Worklog Time Spent: 10m
Work Description: prasanthj commented on pull request #964: HIVE-23095 ndv 70
URL: https://github.com/apache/hive/pull/964#discussion_r403398547
##########
File path: standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/common/ndv/hll/HLLSparseRegister.java
##########
@@ -148,8 +148,12 @@ public int encodeHash(long hashcode) {
}
}
- public int getSize() {
- return sparseMap.size() + tempListIdx;
+ public boolean isSizeGreaterThan(int s) {
+ if (sparseMap.size() + tempListIdx > s) {
+ mergeTempListToSparseMap();
Review comment:
The tempList array was added for insertion performance (at the cost of slight misestimation when there are duplicates in the temp list) to quickly buffer up 1024 elements. This is negating that by merging it to sparse map more frequently. We might as well add it to sparse map directly instead of tempList so that getSize() becomes a constant time operation. The sparse register will switch to dense around after 3200 elements so sparsemap will not be a hot loop. I would recommend removing tempList from sparse register that way there will be less branching.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Issue Time Tracking
-------------------
Worklog Id: (was: 415863)
Time Spent: 20m (was: 10m)
> NDV might be overestimated for a table with ~70 value
> -----------------------------------------------------
>
> Key: HIVE-23095
> URL: https://issues.apache.org/jira/browse/HIVE-23095
> Project: Hive
> Issue Type: Bug
> Reporter: Zoltan Haindrich
> Assignee: Zoltan Haindrich
> Priority: Major
> Labels: pull-request-available
> Attachments: HIVE-23095.01.patch, HIVE-23095.02.patch, HIVE-23095.03.patch, HIVE-23095.04.patch, HIVE-23095.04.patch, HIVE-23095.04.patch
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> uncovered during looking into HIVE-23082
> https://issues.apache.org/jira/browse/HIVE-23082?focusedCommentId=17067773&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17067773
--
This message was sent by Atlassian Jira
(v8.3.4#803005)