2013-02-21 79 views
-1

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

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

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

回答

1

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

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

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

配置机架意识包括两个步骤,

  1. 配置核心site.xml中的 “topology.script.file.name”,

    <property>

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

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

    </property>

  2. 根据需要, 样品架意识脚本可以在这里找到落实rack-awareness.sh脚本,

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

+0

我怎么可以跟踪这些数据,这些文件块复制均匀地分布在物理机器上,确保在一台物理机器上没有文件块复本全部堆叠? – nivl 2013-02-22 17:28:55

+0

它确定如果我配置以下机架感知,文件块副本均匀分布在物理机上?我想实现的论文是从IEEE获得的:虚拟云中的位置感知MapReduce – nivl 2013-02-22 17:33:33