-1

我想问几台物理机上的几个虚拟机中的hadoop数据分配。我找到了设计分配策略的论文,将文件块的副本分配给不同的物理机并保持每台物理机的块数平衡。以确保在一台物理机器(包含多个虚拟机)上没有全部堆栈的文件块副本。

我想尝试执行那份文书工作。我一直坚持如何配置那些在由多个 VM 组成的分布式物理机上均匀分配的文件块副本。它是在 mapreduce 算法中编码还是在 hdfs 安装中配置?在纸面上,他们说他们将虚拟节点的位置信息添加到网络拓扑中。虚拟节点的网络位置可能会从 /default-rack 更改为 /Phy0。在物理节点的网络位置下方添加一层。

我不知道,如何在 hadoop 中配置它们?

4

1 回答 1

1

hadoop 中的这种配置称为机架感知。

使用 core-site.xml 中的属性“topology.script.file.name”配置机架感知。

如果未配置“topology.script.file.name”,则为任何 IP 地址传递 /default-rack,即,所有节点都放置在同一个机架上。

在 hadoop 中配置机架感知包括两个步骤,

  1. 在 core-site.xml 中配置“topology.script.file.name”,

    <property>

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

    <value>core/rack-awareness.sh</value>

    </property>

  2. 根据需要实现 rack-awareness.sh 脚本,可以在此处找到示例 rack-awareness 脚本,

    http://wiki.apache.org/hadoop/topology_rack_awareness_scripts

于 2013-02-21T18:48:04.343 回答