hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yin Huai (JIRA)" <>
Subject [jira] [Commented] (HIVE-3585) Integrate Trevni as another columnar oriented file format
Date Fri, 19 Jul 2013 06:14:51 GMT


Yin Huai commented on HIVE-3585:

I am concerned about the performance of Trevni. Please correct me if my explanation is not

First, seems we store a column by multiple compression blocks and the size of a block is around
64 KiB. When the reader reads data from a stored table, we read a compression block at a time.
Because the reader is row-oriented, in the worst case, the reader needs to seek to another
column after reading every single compression block. As pointed out in AVRO-1208, the performance
degradation is significant. 

Second, since we read a compression unit at a time, when the size of a compression unit is
smaller than the size of buffer used in the BufferedInputStream inside BlockReader, we may
not be able to efficiently read data. We will just use a portion of data fetched by BufferedInputStream
and the rest of data cannot be used. I have experience that the performance of Trevni on HDFS
without short circuit is not good. I think this issue may be the reason. But I have not dug
very deep.
> Integrate Trevni as another columnar oriented file format
> ---------------------------------------------------------
>                 Key: HIVE-3585
>                 URL:
>             Project: Hive
>          Issue Type: Improvement
>          Components: Serializers/Deserializers
>    Affects Versions: 0.10.0
>            Reporter: alex gemini
>            Assignee: Mark Wagner
>            Priority: Minor
>         Attachments: futurama_episodes.avro, HIVE-3585.1.patch.txt
> add new avro module trevni as another columnar format.New columnar format need a columnar
SerDe,seems fastutil is a good choice.the shark project use fastutil library as columnar serde
library but it seems too large (almost 15m) for just a few primitive array collection.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message