Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-2035

Use block-level merge for RCFile if merging intermediate results are needed

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.8.0
    • Component/s: None
    • Labels:
      None
    • Release Note:
      For tables stored as RCFile, intermediate results that have too many small files will be merged with a block-level merge that does not deserialize and re-serialized the contents of each block.

      Description

      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).

        Attachments

        1. hive-2035.3.patch
          458 kB
          Franklin Hu
        2. hive-2035.1.patch
          470 kB
          Franklin Hu

          Issue Links

            Activity

              People

              • Assignee:
                franklinhu Franklin Hu
                Reporter:
                nzhang Ning Zhang
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: