【摘要】:高效地检测故障和恢复,提供系统可靠性是HDFS文件系统的设计的核心目标之一。NameNode通过心跳机制来检测datanode是否正常可运行,若datanode不能运行之后,便从其他节点找到备份数据进行数据恢复。HDFS的数据处理规模比较大,适用于批量处理离线数据,不适用于处理实时数据和交互式处理。由于文件系统的元数据存储在NameNode的内存中,NameNode的内存容量将限制文件系统所能存储的文件总数。对于上传到HDFS上的文件,不支持修改文件操作,适用于多次读取操作。
(1)HDFS的优点。
1)能够存储海量数据。
能够存储TB和PB级别的数据文件。
2)高可靠性。
众多服务器连在一起组成集群环境,硬件故障是常见性问题。高效地检测故障和恢复,提供系统可靠性是HDFS文件系统的设计的核心目标之一。NameNode通过心跳机制来检测datanode是否正常可运行,若datanode不能运行之后,便从其他节点找到备份数据进行数据恢复。
3)批量数据处理。
HDFS的数据处理规模比较大,适用于批量处理离线数据,不适用于处理实时数据和交互式处理。
4)高容错性。
构建在众多廉价机器上,数据保存多个副本,副本丢失或宕机自动恢复。
5)商用硬件。
Hadoop运行在廉价商用硬件上,其提供了容错和恢复机制,不需要运行在昂贵可靠的硬件上。(www.xing528.com)
(2)HDFS缺点。
1)不擅长低延迟数据访问。
由于hadoop数据吞吐量大,适用于数据批量处理,hadoop不适合低延迟数据访问,例如毫秒级数据的响应。
2)不适合大量的小文件存储。
由于文件系统的元数据存储在NameNode的内存中,NameNode的内存容量将限制文件系统所能存储的文件总数。
3)不支持修改文件。
对于上传到HDFS上的文件,不支持修改文件操作,适用于多次读取操作。支持append追加功能。
4)支持用户的并行写。
同一时间内,一个文件只能有一个写入者。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。