Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-972

Improve the rack-aware replica placement performance

    XMLWordPrintableJSON

    Details

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

      Description

      This issue aims to improve the rack-aware replica placement performance. A major idea is to avoid constructing lists of possible targets for random selection in chooseTarget, which currently needs interating all DatanodeDescriptors. I plan to change the NetworkTopology data structure as follow:
      1. each InnerNode stores its childrens as a list;
      2. each InnerNode adds a new field numberOfLeaves the total number of leaves (i.e. data nodes) in its subtree.
      NetworkTopology will support two new methods:
      1. DatanodeDescriptor chooseRandom( String scope): it randomly choose one leave from scope.
      2. DatanodeDescriptor chooseRandomExclude(String excludedScope): it randomly choose one leave from ~scope

      In addition, Issue 971 will also help improve the performance of the rack-aware DFS patch.

        Attachments

        1. rack_performance.patch
          35 kB
          Hairong Kuang
        2. rack_performance2.patch
          36 kB
          Hairong Kuang
        3. rack_performance3.patch
          37 kB
          Hairong Kuang

          Issue Links

            Activity

              People

              • Assignee:
                hairong Hairong Kuang
                Reporter:
                hairong Hairong Kuang
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: