Hadoop——机架感知

Hadoop中副本在不同节点之间的复制需要消耗资源,为了充分发挥Hadoop的性能,Hadoop需要配置机架感知,这可以让Hadoop通过网络拓扑图计算不同节点之间的距离,因此来减少数据传输消耗的资源。

通过Hadoop官网我们知道,不配置机架感知,所有的都默认为/default-rack,可以通过命令hadoop dfsamin -printTopology来查看Hadoop的网络拓扑情况。

配置Hadoop机架感知需要在core-site.xml中配置

<property>

<name>topology.script.file.name</name>

<value>/home/XXX/topology.sh</value>

</property>

 

topology.sh脚本根据输入的参数进行判断,参数一般是主机名或者ip地址,判断出它对应的机架号,

hosts为各个节点的信息

topology.sh脚本如下:

#! /bin/sh
FILE=/home/enche/software/hadoop-2.7.7/etc/hadoop/hosts
exec < $FILE
while [ $# -gt 0 ];do
        result=""
        arg=$1
        while read line;do
        arr=(${line})
        if [ "${arr[0]}" = "$arg" ]||[ "${arr[1]}" = "$arg" ];then
                result=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值