Hadoop集群规范
硬盘选型
尽管建议采用RAID(Redundant Array of Independent Disk,即磁盘阵列)作为NameNode的存储器以保护元数据,但是若将RAID作为DataNode的存储设备则不会给HDFS带来益处。HDFS所提供的节点间数据复制技术已能满足数据备份需求,无需使用RAID的垄余机制。
此外,尽管RAID条带化技术(RAID 0)被广泛用于提升性能,但是其速度仍然比用在HDFS里的JBOD(Just a Bunch Of Disk)配置慢。JBOD在所有磁盘之间循环调度HDFS块。RAID 0的续写操作受限于磁盘阵列中最慢盘片的速度,而JBOD的磁盘操作均独立,因而平均读写速度高于最慢盘片的读写速度。需要强调的是,各个磁盘的性能在实际使用中总存在相当大的差异,即使对于相同型号的磁盘。针对某一雅虎集群的评测报告中,JBOD比RAID 0快10%;在另一测试(HDFS写吞吐量)中,JBOD比RAID 0快30%。
最后,若JBOD配置的某一磁盘出现故障,HDFS可以忽略该磁盘,继续工作。而RAID 0的某一盘片故障会导致整个磁盘阵列不可用,进而使相应的节点失效。
总结
NameNode建议使用RAID
DataNode不建议使用RAID