hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mostafa Mokhtar (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HIVE-10793) Hybrid Hybrid Grace Hash Join : Don't allocate all hash table memory upfront
Date Fri, 22 May 2015 19:01:17 GMT

     [ https://issues.apache.org/jira/browse/HIVE-10793?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Mostafa Mokhtar updated HIVE-10793:
-----------------------------------
    Attachment: HIVE-10793.2.patch

> Hybrid Hybrid Grace Hash Join : Don't allocate all hash table memory upfront
> ----------------------------------------------------------------------------
>
>                 Key: HIVE-10793
>                 URL: https://issues.apache.org/jira/browse/HIVE-10793
>             Project: Hive
>          Issue Type: Bug
>          Components: Hive
>    Affects Versions: 1.2.0
>            Reporter: Mostafa Mokhtar
>            Assignee: Mostafa Mokhtar
>             Fix For: 1.2.1
>
>         Attachments: HIVE-10793.1.patch, HIVE-10793.2.patch
>
>
> HybridHashTableContainer will allocate memory based on estimate, which means if the actual
is less than the estimate the allocated memory won't be used.
> Number of partitions is calculated based on estimated data size
> {code}
> numPartitions = calcNumPartitions(memoryThreshold, estimatedTableSize, minNumParts, minWbSize,
>           nwayConf);
> {code}
> Then based on number of partitions writeBufferSize is set
> {code}
> writeBufferSize = (int)(estimatedTableSize / numPartitions);
> {code}
> Each hash partition will allocate 1 WriteBuffer, with no further allocation if the estimate
data size is correct.
> Suggested solution is to reduce writeBufferSize by a factor such that only X% of the
memory is preallocated.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message