2013年(5)
发布时间:2013-09-04 16:29:31
基于QJM/Qurom Journal Manager/Paxos的HDFS HA原理及代码分析发表于 2012 年 11 月 27 日HDFS HA的解决方案可谓百花齐放,Linux HA, VMware FT, shared NAS+NFS, BookKeeper, QJM/Quorum Journal Manager, BackupNode等等。目前普遍采用的是shard NAS+NFS,因为简单易用,但是需要提供一个HA的共享存.........【阅读全文】
发布时间:2013-08-30 10:47:45
HDFS集群没有采用RAID(冗余磁盘阵列)作为datanodes的存储设备(尽管namenode使用RAID来保护元数据不会丢失)。由于HDFS是采用在节点之间块复制的方法,所以RAID提供的冗余机制对HDFS来说是多余的。此外,RAID条带(RAID 0)常用于增加性能,但却比HDFS中用到的JBOD(Just a Bunch Of Disks)要慢,而且JBOD在所有的磁盘之间.........【阅读全文】
发布时间:2013-08-23 17:33:02
Hadoop中在计算一个JOB需要的map数之前首先要计算分片的大小。计算分片大小的公式是:goalSize = totalSize / mapred.map.tasksminSize = max {mapred.min.split.size, minSplitSize}splitSize = max (minSize, min(goalSize, dfs.block.size))totalSize是一个JOB的所有map总的输入大小,即Map input byt.........【阅读全文】
发布时间:2013-08-23 11:07:05
本文基于cloudera-Hadoop-cdh-4.01版本进行分析在这个特定版本支持HA的Hadoop内,FailoverController主要是通过一个独立于NN的进程来完成的,在这个版本内是通过zookeeper的功能来完成的,所以这个版本内的FailoverController也称为ZKFC。这部分代码主要存在于org.apache.hadoop.ha以及org.apache.hadoop.ha.protocol.........【阅读全文】