Pig
  1. Pig
  2. PIG-844

PERFORMANCE: streaming data to the UDFs in foreach

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.7.0
    • Component/s: None
    • Labels:
      None

      Description

      Currently, Pig places the data passed to UDFs into a bag. This can cause the process to use more memory than actually needed as in many cases it would be better to push the data one tuple at a time to the UDFs.

      For the case where combiner is invoked, this might not be that important; however, for non-algebraic UDFs as well as other cases where combiner can't be used, this can provide significant memory improvement.

      Another possible use case is where the data is already grouped going into pig and we don't need to group it again.

      How this will effect UDF interface needs to be further discussed.

        Activity

        Hide
        Olga Natkovich added a comment -

        accumulate interface took care of this.

        Show
        Olga Natkovich added a comment - accumulate interface took care of this.

          People

          • Assignee:
            Unassigned
            Reporter:
            Olga Natkovich
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development