整套大数据学习资料(视频+笔记)百度网盘无门槛下载:http://www.edu360.cn/news/content?id=3377

3.1. HDFS的设计

hadoop 花牛 7℃ 0评论

HDFS以流式数据访问模式来存储超大文件,运行于商用硬件集群上。让我们仔细看看下面的描述。

  • 超大文件“超大文件”在这里指具有几百MB、几百GB甚至几 百TB大小的文件。目前已经有存储PB级数据的Hadoop集 群了。

  • 流式数据访问HDFS的构建思路是这样的:一次写入、多次读取 是最高效的访问模式。数据集通常由数据源生成或从数据源复制而 来,接着长时间在此数据集上进行各种分析。每次分析都将涉及该 数据集的大部分数据甚至全部,因此读取整个数据集的时间延迟比 读取第一条记录的时间延迟更重要。

  • 商用硬件Hadoop并不需要运行在昂贵且高可靠的硬件上。它是 设计运行在商用硬件(在各种零售店都能买到的普通硬件)的集群上的,因此至少对于庞大的集群来说,节点故障的几率还是非常高的。HDFS遇到上述故障时,被设计成能够继续运行且不让用户察觉到明显的中断。 同样,那些不适合在HDFS上运行&应用也值得研究。目前某些应用领域并不适合在HDFS上运行,不过以后可能会有所改进。

  • 低时间延迟的数据访问要求低时间延迟数据访问的应用,例如几十毫秒范围,不适合在HDFS上运行。记住,HDFS是为高数据吞 吐量应用优化的,这可能会以提高时间延迟为代价。目前,对于低延 迟的访问需求,HBase是更好的选择。

  • 大量的小文件由于namenode将文件系统的元数据存储在内存 中,因此该文件系统所能存储的文件总数受限于namenode的内存容量。根据经验,每个文件、目录和数据块的存储信息大约占150 字节。因此,举例来说,如果有一百万个文件,且每个文件占一个数据块,那至少需要300 MB的内存。尽管存储上百万个文件是可行的,但是存储数十亿个文件就超出了当前硬件的能力。

  • 多用户写入,任意修改文件HDFS中的文件可能只有一个writer,而且写操作总是将数据添加在文件的末尾。它不支持具有多个写入者的操作,也不支持在文件的任意位置进行修改。可能以后会支持这些操作,但它们相对比较低效。

转载请注明:全栈大数据 » 3.1. HDFS的设计

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址