开发者社区 问答 正文

HDFS的短路读(Short Circuit Read)指的是什么?

HDFS的短路读(Short Circuit Read)指的是什么?

展开
收起
追风少年刘全有 2021-10-22 16:24:56 992 分享 版权
来自: 华章出版社
1 条回答
写回答
取消 提交回答
  • 短路读是指对那些Block落在和DFSClient同一台机器上的数据,可以不走TCP协议进行读取,而是直接由DFSClient向本机的DataNode请求对应Block的文件描述符(File Descriptor),然后创建一个BlockReaderLocal,通过fd进行数据读取,这样就节省了走本地TCP协议栈的开销。

    测试数据表明,locality和短路读对HBase的读性能影响重大。在locality=1.0情况下,不开短路读的p99性能要比开短路读差10%左右。如果用locality=0和locality=1相比,读操作性能则差距巨大。

    资料来源:《HBase原理与实践》,文章链接:https://developer.aliyun.com/article/724670

    2021-10-22 16:35:08
    赞同 展开评论