Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-20994

Alleviate memory pressure in StreamManager

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.1.1
    • 2.3.0
    • Spark Core
    • None

    Description

      In my cluster, we are suffering from OOM of shuffle-service.
      We found that a lot of executors are fetching blocks from a single shuffle-service. Analyzing the memory, we found that the blockIds(shuffle_shuffleId_mapId_reduceId) takes about 1.5GBytes.

      In current code, chunks are fetched from shuffle service in two steps:
      Step-1. Send OpenBlocks, which contains the blocks list to to fetch;
      Step-2. Fetch the consecutive chunks from shuffle-service by streamId and chunkIndex

      Thus memory cost can be improved for step-1.

      Attachments

        Activity

          People

            jinxing6042@126.com Jin Xing
            jinxing6042@126.com Jin Xing
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: