【Hadoop】HDFS简介——是什么/优缺点/适用场景

  • HDFS是什么
  • HDFS的优点/特性
  • HDFS适用场景
  • HDFS的缺点与不足
  • HDFS 不适用场景

HDFS是什么

  • 源自Google的GFS论文
    • Google于2003年10月发表
    • HDFS是GFS的一个克隆版
  • HDFS(Hadoop Distributed File System)
    • 是易于扩展的分布式文件系统。易扩展意味着如果文件系统大小不够可以增加节点
    • 运行在大量的普通低成本机器上,提供容错机制。也就是说机器成本较低
    • 为用户提供性能极好的文件存储服务

HDFS的优点/特性

  • 高容错性:数据自动保存多个副本,副本丢失自动恢复。比如正在使用的机器down掉后,可以及时地转移在其他备用机器上再进行
  • 适合批量处理
  • 移动计算而非数据:将数据位置暴露给计算框架。这是一个重要的概念。也就是说计算的时候并不是将集群的数据都传输到一台机器上进行计算,因为移动数据会耗费大量的IO(磁盘IO、网络IO等等),而是在集群中的每个机器上分别计算,然后再将结果进行汇总。
  • 适合大数据处理:TB,PB级的数据,百万规模以上的文件数量,10K+节点流式文件访问
  • 一次写入,可多次读取,确保数据的一致性。即文件被写入完成后通过设置使其进入只读状态。 在该状态下保护期内文件只能被读取,无法删除、修改或重命名。 通过采用WORM技术对存储数据进行保护后,可以防止其因意外而修改,这就保证了企业或组织对一些重要的业务数据安全存储的需求
  • 可构建在廉价机器上:通过多副本提高可靠性,有容错和恢复机制

HDFS适用场景

根据HDFS的优点/特性/特点来考虑:

  • 存储并管理 PB 级数据;

  • 适合处理非结构化数据;

  • 注重数据处理的吞吐量;

  • 应用模式为:write-once-read-many 存取模式。即文件被写入完成后通过设置使其进入只读状态。 在该状态下保护期内文件只能被读取,无法删除、修改或重命名。 通过采用WORM技术对存储数据进行保护后,可以防止其因意外而修改,这就保证了企业或组织对一些重要的业务数据安全存储的需求

典型应用例如:网站用户行为分析,生态系统数据分析,气象数据分析,日志分析等等。


HDFS的缺点与不足

  • 不适合低延迟数据访问:比如毫秒级的访问要求。需要进行低延迟与高吞吐率的权衡
  • 不适合小文件存取
    • 占用NameNode大量内存
    • 寻道时间超过读取时间
  • 不适合并发写入、文件随机修改。一个文件只能有一个Writer仅支持append写入

HDFS 不适用场景

根据HDFS的缺点和不足来考虑:

  • 低时间延迟数据访问的应用,例如几十毫秒范围。

    原因:HDFS 是为高数据吞吐量应用优化的,这样是以高时间延迟为代价。

  • 大量小文件。

    原因 : NameNode 将文件系统的元数据存储在内存中,因此文件系统所能存储的文件总数。受限于 NameNode 内存容量。如果每个文件目的录和数据块的存储信息大约占 150 字节,那么对于一百万个文件,假设每个文件仅占用一个数据块,则就至少需要 300MB 的内存,假设需要存储十亿个文件,这时需要的内存量将是非常巨大的。

  • 多用户写入,任意修改文件:现在 hdfs 文件可能只有一个 writer,而且写操作总是写在文件的末尾

你可能感兴趣的:(hadoop,hdfs,大数据)