HDFS机架感知
一、网络拓扑、节点距离计算
Distance(/d1/r1/n0, /d1/r1/n0)=0 同一节点上的进程
Distance(/d1/r1/n1, /d1/r1/n2)=2 同一机架上不同节点
Distance(/d1/r1/n1, /d1/r2/n1)=4 同一数据中心,不同机架上的节点
Distance(/d1/r1/n1, /d2/r1/n1)=6 不同数据中心上的节点
二、机架感知
1.机架感知简介
机架感知的存在,是因为HDFS的副本放置策略需要机架感知,并且可以提高集群性能。为了充分发挥数据本地性的优势,避免数据跨网络传输,优化集群网络带宽资源。
2.机架感知相关知识
1)副本技术
副本技术即分布式数据复制技术,是分布式计算的重要组成部分。该技术允许数据在多个服务器端共享,一个本地服务器可以存取不同物理地点的远程服务器上的数据,也可以使所有的服务器均持有数据的拷贝。
通过副本技术可以有以下几个有点:
·提高系统可靠性:系统不可避免的会产生故障和错误,拥有多个副本的文件系统不会导致无法访问的情况,从而提高了集群的可靠性。另外,系统还可以通过其他完好的副本对发生错误的副本进行修复,从而提高了系统的容错性。
·负载均衡:副本可以对系统的负载量进行扩展,多个副本存放在不同的服务器上,可有效的分担工作量,从而将较大的工作有效的分布在不同的节点上。
·提高访问效率:将副本创建在访问频度较大的区域,即副本在访问节点的附近,