hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "jiraposter@reviews.apache.org (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-2035) Use block-level merge for RCFile if merging intermediate results are needed
Date Fri, 17 Jun 2011 20:46:49 GMT

    [ https://issues.apache.org/jira/browse/HIVE-2035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13051316#comment-13051316
] 

jiraposter@reviews.apache.org 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

        

Mime
View raw message