首页技术文章正文

HDFS分布式文件系统的优点缺点有哪些?

更新时间:2020-12-16 来源:黑马程序员 浏览量:

1577370495235_学IT就到黑马程序员.gif

  随着互联网数据规模的不断增大,对文件存储系统提出了更高的要求,需要更大的容量、更好的性能以及安全性更高的文件存储系统,与传统分布式文件系统一样,HDFS分布式文件系统也是通过计算机网络与节点相连,但也有传统分布式文件系统的优点和缺点。

  优点

  (1)高容错

  HDFS是可以由成百上千台服务器机器组成,每个服务器机器存储文件系统数据的一部分。HDFS中的副本机制会自动把数据保存多个副本,DataNode节点周期性地向NameNode发送心跳信号,当网络发生异常,可能导致DataNode与NameNode失去通讯,NameNode和DataNode通过心跳检测机制,发现DataNode宕机,DataNode中副本丢失,HDFS则会从其他DataNode上面的副本自动恢复,所以HDFS具有高的容错性。

  (2)流式数据访问

  HDFS的数据处理规模比较大,应用程序一次需要访问大量的数据,同时这些应用程序一般都是批量的处理数据,而不是用户交互式处理,所以应用程序能以流的形式访问数据集,请求访问整个数据集要比访问一条记录更加高效。

  (3)支持超大文件

  HDFS分布式文件系统具有很大的数据集,旨在可靠的大型集群上存储超大型文件(GB、TB、PB级别的数据),它将每个文件切分成多个小的数据块进行存储,除了最后一个数据块之外的所有数据块大小都相同,块的大小可以在指定的配置文件中进行修改,在Hadoop2.x版本中默认大小是128M。

  (4)高数据吞吐量

  HDFS采用的是“一次写入,多次读取”这种简单的数据一致性模型,在HDFS中,一个文件一旦经过创建、写入、关闭后,一旦写入就不能进行修改了,只能进行追加,这样保证了数据的一致性,也有利于提高吞吐量。

  (5)可构建在廉价的机器上

  Hadoop的设计对硬件要求低,无需构建在昂贵的高可用性机器上,因为在HDFS设计中充分考虑到了数据的可靠性、安全性和高可用性。

  缺点

  (1)高延迟

  HDFS不适用于低延迟数据访问的场景,例如:毫秒级实时查询。

  (2)不适合小文件存取场景

  对于Hadoop系统,小文件通常定义为远小于HDFS的数据块大小(128MB)的文件,由于每个文件都会产生各自的元数据,Hadoop通过NameNode来存储这些信息,若小文件过多,容易导致NameNode存储出现瓶颈。

  (3)不适合并发写入

  HDFS目前不支持并发多用户的写操作,写操作只能在文件末尾追加数据。



猜你喜欢:

什么是数据仓库?Hive数据仓库特点简介

Linux系统如何配置虚拟机网络?

黑马程序员大数据培训课程 

分享到:
在线咨询 我要报名
和我们在线交谈!