分布式数据库

作者: xin3521 | 来源:发表于2018-07-23 13:12 被阅读7次

    分布式架构
    分布式核心组件:hdfs , hbase newsql spark spanner 介绍。
    分布式文件系统hdfs , 分布式文件系统,类似于gfs, 是Hadoop中的大规模分布式文件系统,在整个架构上与gfs 大致相同,更简化,比如同一时刻只允许一个客户端对文件进行追加写操作。
    它具有以下几个特点:
    1)适合存储非常大的文件
    2)适合流式数据读取,即适合“只写一次,读多次”的数据处理模式
    3)适合部署在廉价的机器上
    但HDFS不适合以下场景(任何东西都要分两面看,只有适合自己业务的技术才是真正的好技术):
    1)不适合存储大量的小文件,因为受Namenode内存大小限制
    2)不适合实时数据读取,高吞吐量和实时性是相悖的,HDFS选择前者
    3)不适合需要经常修改数据的场景


    image.png

    由NameNode,DataNode,Secondary NameNode以及客户端组成。
    NameNode:
    负责管理整个分布式文件系统的元数据,包括文件目录树结构、文件到数据块的映射关系、Block副本及其存储位置等各种管理数据。这些数据保存在内存中。还负责DataNode的状态监控,通过心跳来传递管理信息和数据信息。
    Secondary NameNode
    职责并非是NameNode的热备机,(定期备份、检查点生成ckt)而是定期从NameNode拉取fsimage(内存命名空间元数据在外存的镜像文件)和editlog文件(各种元数据操作的write-ahead-log
    文件,在体现到内存数据变化前先把操作记录到此文件防止数据丢失)并对这两个文件进行合并,形成新的fsimage文件并传回给NameNode,以减轻NameNode的工作压力。
    DataNode
    类似于GFS的Chunk服务器,负责数据块的实际存储和读写。
    客户端
    与GFS客户端类似,HDFS客户端和NameNode联系获取所需读/写文件的元数据,实际的数据读写都是和DataNode直接通信完成的。

    相关文章

      网友评论

        本文标题:分布式数据库

        本文链接:https://www.haomeiwen.com/subject/nezdmftx.html