我正在阅读雅虎在https://developer.yahoo.com/hadoop/tutorial/module2.html制作的hadoop模块,这里提到的是“本地DataNode”,我想知道什么是本地DataNode。我猜是一台NameNode的机器,同时也是一台DataNode,但我想知道它到底是什么。
发布于 2016-01-02 09:13:15
在Hadoop中,默认情况下,每个数据块被复制3次(复制因子为3)。
为了确保数据的可用性和持久性,Hadoop将副本放置在3个不同的数据节点中:
hadoop fs -cp命令)。第一个复制品放在这里。如果客户端正在从集群外部写入数据,则随机选择此节点。它是第一个副本被写入的节点。这确保了,即使一个机架发生故障,数据仍然可以在另一个机架中的数据节点上使用。
因此,在本教程中,本地数据节点是指发起写操作的数据节点。
让我们举个例子。让我们假设您试图将文件a.txt复制到HDFS中。让我们假设集群有3个机架,并且是机架感知的:
Rack 1: Node 1, Node 2
Rack 2: Node 3, Node 4
Rack 3: Node 5, Node 6
Also, you have another Node: Node 7, which is outside the Hadoop cluster, but is connected
to the cluster and you can perform HDFS operations.案例1:集群内的客户端
让我们假设您从Node 1(在Rack 1上)执行hadoop fs -copyFromLocal a.txt /tmp/。然后Hadoop将尝试按以下方式放置副本:
案例2:集群外的客户端
让我们假设您从Node 7执行hadoop fs -copyFromLocal a.txt /tmp/ (它不是集群的一部分,客户端在集群上运行)。然后Hadoop将尝试按以下方式放置副本:
理想情况下,复制放置应该是这样的。但是,这取决于不同机架和节点上可用的空间。
发布于 2016-01-02 14:35:20
我也同意本地数据节点的Manjunath定义
我们可以得出结论,Local Data Node是客户端程序编写第一个副本的节点。您可以将本地数据节点视为本地数据节点中的DataNade。
寻址查询前的:
Hadoop为distributed storage和distributed processing提供了以Tera/Peta字节为单位的大量数据的框架。
您引用的文章与分布式存储HDFS有关
*关于您的查询*
我指的是MapReduce,第一个处理映射任务的是本地DataNode -
MapReduce框架由单个主ResourceManager、每个集群节点一个从NodeManager和每个应用程序 (http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html)组成。
因此块放置(HDFS写)与地图缩减处理没有任何关系。
Mappers & Reducer节点是根据不同的标准选择的。
分布式存储:
HDFS processes: Name Node / Stand By Name Node + Data Node分布式处理(地图减少/纱线):
YARN processes : Resource Manager + Node Manager + Application Master (aka MRAppMaster)https://stackoverflow.com/questions/34564231
复制相似问题