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

Log workAgile BoardRank to TopRank to BottomAttach filesAttach ScreenshotBulk Copy AttachmentsBulk Move AttachmentsAdd voteVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments


    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • datanode, performance
    • None


      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.


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

        Issue Links


          This comment will be Viewable by All Users Viewable by All Users


            jbooth Jay Booth Assign to me
            jbooth Jay Booth




                Issue deployment