[
https://issues.apache.org/jira/browse/HIVE-2035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13051316#comment-13051316
]
[email protected] commented on HIVE-2035:
-----------------------------------------------------
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/935/
-----------------------------------------------------------
Review request for hive.
Summary
-------
For a table stored as RCFile, intermediate results are sometimes merged if
those files are below a certain threshold. For RCFiles, we can do a block level
merge that does not deserialize the blocks and is more efficient. This patch
leverages the existing code used to merge for ALTER TABLE ... CONCATENATE.
This addresses bug HIVE-2035.
https://issues.apache.org/jira/browse/HIVE-2035
Diffs
-----
trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java 1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/TaskFactory.java 1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/merge/BlockMergeTask.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/merge/MergeWork.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/merge/RCFileBlockMergeRecordReader.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/merge/RCFileKeyBufferWrapper.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/merge/RCFileMergeMapper.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMRFileSink1.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/ConditionalResolverMergeFiles.java
1134415
trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/MapredWork.java 1134415
trunk/ql/src/test/queries/clientpositive/rcfile_createas1.q PRE-CREATION
trunk/ql/src/test/queries/clientpositive/rcfile_insert.q PRE-CREATION
trunk/ql/src/test/queries/clientpositive/rcfile_merge1.q PRE-CREATION
trunk/ql/src/test/queries/clientpositive/rcfile_merge2.q PRE-CREATION
trunk/ql/src/test/queries/clientpositive/rcfile_merge3.q PRE-CREATION
trunk/ql/src/test/queries/clientpositive/rcfile_merge4.q PRE-CREATION
trunk/ql/src/test/results/clientpositive/rcfile_createas1.q.out PRE-CREATION
trunk/ql/src/test/results/clientpositive/rcfile_insert.q.out PRE-CREATION
trunk/ql/src/test/results/clientpositive/rcfile_merge1.q.out PRE-CREATION
trunk/ql/src/test/results/clientpositive/rcfile_merge2.q.out PRE-CREATION
trunk/ql/src/test/results/clientpositive/rcfile_merge3.q.out PRE-CREATION
trunk/ql/src/test/results/clientpositive/rcfile_merge4.q.out PRE-CREATION
Diff: https://reviews.apache.org/r/935/diff
Testing
-------
Thanks,
Franklin
> Use block-level merge for RCFile if merging intermediate results are needed
> ---------------------------------------------------------------------------
>
> Key: HIVE-2035
> URL: https://issues.apache.org/jira/browse/HIVE-2035
> Project: Hive
> Issue Type: Improvement
> Reporter: Ning Zhang
> Assignee: Franklin Hu
> Attachments: hive-2035.1.patch
>
>
> Currently if hive.merge.mapredfiles and/or hive.merge.mapfile is set to true
> the intermediate data could be merged using an additional MapReduce job. This
> could be quite expensive if the data size is large. With HIVE-1950, merging
> can be done in the RCFile block level so that it bypasses the
> (de-)compression, (de-)serialization phases. This could improve the merge
> process significantly.
> This JIRA should handle the case where the input table is not stored in
> RCFile, but the destination table is (which requires the intermediate data
> should be stored in the same format as the destination table).
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira