zoukankan      html  css  js  c++  java
  • hdfs功能详解

    1.分布式文件系统理解

      使用低配置电脑配置成集群,存储管理单台电脑不能处理的大型文件。

      

      

      直观理解三个臭皮匠,顶个诸葛亮。

      很多磁盘加一起就可以装超多电影。

      类似于你出5毛,我出5毛,我们一起凑一块。

    2.hdfs优缺点

      优点:

        a.高容错性:数据自动保存多个副本;通过增加副本的形式,提高容错性。一个副本丢失以后,它可以自动恢复。

        b.适合处理大数据:数据规模达到GB、TB甚至PB级数据;能够处理百万规模以上的文件数量,数量相当大;能够处理10k节点规模。

        c.可构建在廉价机器上,通过多副本机制,提高可靠性。

        d.适合批处理:它是通过移动计算不是移动数据;它会把数据位置暴露给计算框架。

        e.流式数据访问:一次写入,多次读取,不能修改,只能追加,能保证数据的一致性。

      缺点:

        a.不适合低延时数据访问,做不到毫秒级的数据存储;

        b.无法高效的对大量小文件进行存储,存储小量文件,会占用NameNode大量内存来存储文件、目录、块信息。小文件存储的寻道时间会超过读取时间,违反了hdfs的设计目标。

        c.不支持并发写入:一个文件只能有一个写,不允许多个线程同时写入;仅支持数据追加,不支持文件的随机修改。 

     3.hdfs的架构详细剖析

       

      数据以block块的形式统一存储管理,每个块默认最多可存储128M的文件,如果有一个文件大小为1kb,也是要占用一个block块,但是实际磁盘空间还是1kb大小。

      每个block块的元数据大小大概为150字节。

      a)hdfs集群包括NameNode、DataNode、SecondaryNameNode。

      b)NameNode负责管理整个文件系统的元数据,以及每一个路径(文件)所对应的的块信息。

      c)DataNode负责管理用户的文件数据块,每一个数据块可以在多个datanode上存储多个副本。

      d)SecondaryNode用来监控hdfs状态的辅助后台程序,每隔一段时间获取hdfs元数据的快照。最主要作用是辅助NameNode管理元数据信息。

      

  • 相关阅读:
    梦想就是梦想,不要让它成为杯具
    程序员,离开了库你还能干什么?
    采用WPF框架编写的3D软渲染Demo
    what the hell with Gimbal Lock?
    FX Composer VS RenderMonkey 使用对比之 FX Composer篇
    为什么你应该使用OpenGL而不是DirectX?
    游戏中的夜视效果实现
    {转}深入浅出之正则表达式(一)
    正则表达式30分钟入门教程版本:v2.31 (2009411) 作者:deerchao 转载请注明来源
    2013年
  • 原文地址:https://www.cnblogs.com/dan2/p/12626968.html
Copyright © 2011-2022 走看看