Uploaded image for project: 'Crunch (Retired)'
  1. Crunch (Retired)
  2. CRUNCH-660

FileTargetImpl uses Distcp vs FileUtils.copy

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.0.0
    • Core
    • None

    Description

      So for handling multiple runtimes I'm not sure there is a way to solve this but documenting as a JIRA regardless.

      If you are running in a multi-cluster environment where you might want to read data from one cluster and then write the output on another cluster (e.g. generating HFiles to be loaded into a separate HBase cluster), the performance of moving files is noticeable. Specifically due to the fact that the moving of the files happens in the launcher/driver process versus as part of the node execution it seems.[1]

      An efficient option would be to kick off a DistCp instead but that would tie the target directly to a runtime which is not a great approach.

      [1] - https://github.com/apache/crunch/blob/5609b014378d3460a55ce25522f0c00659872807/crunch-core/src/main/java/org/apache/crunch/io/impl/FileTargetImpl.java#L157

      Attachments

        Issue Links

          Activity

            People

              jwills Josh Wills
              mkwhitacre Micah Whitacre
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m