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

Use single Selector and small thread pool to replace many instances of BlockSender for reads

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: datanode, performance
    • Labels:
      None

      Description

      Currently, on read requests, the DataXCeiver server allocates a new thread per request, which must allocate its own buffers and leads to higher-than-optimal CPU and memory usage by the sending threads. If we had a single selector and a small threadpool to multiplex request packets, we could theoretically achieve higher performance while taking up fewer resources and leaving more CPU on datanodes available for mapred, hbase or whatever. This can be done without changing any wire protocols.

        Attachments

        1. hdfs-918-pool.patch
          39 kB
          Jay Booth
        2. hbase-hdfs-benchmarks.ods
          23 kB
          Jay Booth
        3. hdfs-918-branch20-append.patch
          90 kB
          Jay Booth
        4. hdfs-918-TRUNK.patch
          81 kB
          Jay Booth
        5. hdfs-918-branch20.2.patch
          91 kB
          Jay Booth
        6. hdfs-918-20100309.patch
          76 kB
          Jay Booth
        7. hdfs-918-20100228.patch
          73 kB
          Jay Booth
        8. hdfs-918-20100211.patch
          82 kB
          Jay Booth
        9. hdfs-918-20100203.patch
          83 kB
          Jay Booth
        10. hdfs-918-20100201.patch
          81 kB
          Jay Booth
        11. hdfs-multiplex.patch
          83 kB
          Jay Booth

          Issue Links

            Activity

              People

              • Assignee:
                jbooth Jay Booth
                Reporter:
                jbooth Jay Booth
              • Votes:
                2 Vote for this issue
                Watchers:
                40 Start watching this issue

                Dates

                • Created:
                  Updated: