hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xuefu Zhang (JIRA)" <>
Subject [jira] [Commented] (HIVE-5298) AvroSerde performance problem caused by HIVE-3833
Date Mon, 30 Sep 2013 20:17:24 GMT


Xuefu Zhang commented on HIVE-5298:

[~hsubramaniyan] Thanks for your comments. I think what Ashutosh meant above was that the
path in conf.getPathToAliases() is the partition directory, not individual file for the partition.
Thus, the number of entries from calling  conf.getPathToAliases() is the same as what my modified
code change will get. I verified that Ashutosh's point is correct. Did you see any evidence
of conf.getPathToAliases() returning each data file as entries?

> AvroSerde performance problem caused by HIVE-3833
> -------------------------------------------------
>                 Key: HIVE-5298
>                 URL:
>             Project: Hive
>          Issue Type: Improvement
>          Components: Query Processor
>    Affects Versions: 0.11.0
>            Reporter: Xuefu Zhang
>            Assignee: Xuefu Zhang
>             Fix For: 0.13.0
>         Attachments: HIVE-5298.1.patch, HIVE-5298.patch
> HIVE-3833 fixed the targeted problem and made Hive to use partition-level metadata to
initialize object inspector. In doing that, however, it goes thru every file under the table
to access the partition metadata, which is very inefficient, especially in case of multiple
files per partition. This causes more problem for AvroSerde because AvroSerde initialization
accesses schema, which is located on file system. As a result, before hive can process any
data, it needs to access every file for a table, which can take long enough to cause job failure
because of lack of job progress.
> The improvement can be made so that partition metadata is only access once per partition.

This message was sent by Atlassian JIRA

View raw message