Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-10335

Mover$Processor#chooseTarget() always chooses the first matching target storage group

    Details

    • Target Version/s:
    • Hadoop Flags:
      Reviewed

      Description

      Currently the org.apache.hadoop.hdfs.server.mover.Mover$Processor#chooseTarget() always chooses the first matching target datanode from the candidate list. This may make the mover schedule a lot of task to a few of the datanodes (first several datanodes of the candidate list). The overall performance will suffer significantly from this because of the saturated network/disk usage. Specially, if the dfs.datanode.balance.max.concurrent.moves is set, the scheduled move task will be queued on a few of the storage group, regardless of other available storage groups. We need an algorithm which can distribute the move tasks approximately even across all the candidate target storage groups.

      Thanks Tsz Wo Nicholas Sze for offline discussion.

        Attachments

        1. HDFS-10335.000.patch
          1 kB
          Mingliang Liu
        2. HDFS-10335.000.patch
          1 kB
          Mingliang Liu

          Activity

            People

            • Assignee:
              liuml07 Mingliang Liu
              Reporter:
              liuml07 Mingliang Liu
            • Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: