一、HDFS概述
1、HDFS的概念
HDFS是一个分布式文件系统,通过目录树来定位文件。HDFS的设计适合一次写入,多次读取的场景,且不支持文件的修改。
2、HDFS优缺点
(1)优点
1)高容错性
数据自动保存多个副本,通过增加副本提高容错性。
某一个副本丢失,可以自动恢复
2)适合大数据处理
数据规模:可以处理GB、TB、甚至PB的数据
文件规模:处理百万以上的文件数量
3)流式数据访问
一次写入,多次读取,不能修改,只能追加,保证数据的一致性
4)成本低
集群构建在廉价的机器上,多副本机制提高可靠性
扫描二维码关注公众号,回复:
8838652 查看本文章
(2)缺点
1)不适合低延迟的数据访问
2)无法高效处理大量小文件的存储
存储大量小文件的话,会占用NameNode大量的内存来存储元信息。
小文件的存储的寻址时间会超过读取时间,违反了HDFS的设计目标。
3)不能并发写入和文件随机修改
一个文件只能有一个写,不允许多个线程同时写
仅支持数据的追加,不支持文件的随机修改
3、文件块的大小
HDFS中的文件在物理上是分块存储的,块的大小可以通过配置参数来规定,默认是128M。
HDFS的块比磁盘大,目的是为了最小寻址时间。如果块设置的足够大,从磁盘传输数据的时间会明显大于寻址时间。因此传输一个由多个块组成的文件的时间取决于磁盘的传输速率。
如果寻址时间约为 10ms,而 传输速率为 100MB/s,为了使寻址时间仅占传输时间的 1%,我们要将块大小设置约为 100MB。默认的块大小 128MB。