hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Armstrong" <tim.g.armstr...@gmail.com>
Subject Re: Review Request: rcfilecat 16x performance improvement
Date Fri, 12 Aug 2011 03:56:39 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1474/
-----------------------------------------------------------

(Updated 2011-08-12 03:56:39.298860)


Review request for hive, Yongqiang He, Ning Zhang, and namit jain.


Changes
-------

Turned magic numbers into named constants, enable output buffering only after arguments processed.


Summary
-------

This patch improves rcfilecat performance enormously: throughput increased from 0.32MB/s to
5.15MB/s on one benchmark: 16x. There were a number of improvements I made to get to this
performance:

Initial:
0.32 MB/s

Change System.out to use bigger buffer (not line buffered)
1.7MB/s

Unchecked Get:
1.75MB/s

Use StringBuilder to construct each row before writing output.
3.7MB/s

Streamline decoding:
4.16 MB/s

Use StringBuilder to buffer multiple lines:
5 MB/s

Tuning buffer sizes:
5.15 MB/s


I also added a --verbose mode which writes progress updates to stderr.


This addresses bug HIVE-2370.
    https://issues.apache.org/jira/browse/HIVE-2370


Diffs (updated)
-----

  trunk/cli/src/java/org/apache/hadoop/hive/cli/RCFileCat.java 1156839 

Diff: https://reviews.apache.org/r/1474/diff


Testing
-------

Used diff to check output was same as old version of RCFileCat


Thanks,

Tim


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message