NoSQL-列式模型

NoSQL-列式模型

数据库排名:https://db-engines.com/en/ranking

实例应用场景数据模型优点缺点
k-v模型Radis;Memcached内容缓存,主要用于处理大数据的高访问负载key-value键值对
列式模型Hbase(Hadoop Database);BigTable(Google);Cassandra(Twitter)分布式文件系统以列存储,将同一列数据存储在一起
文档模型MongoDB;CouchDBWeb应用JSON格式的文档
图形模型Neo4j社交网络节点+边

HBase

https://www.cnblogs.com/JamesXiao/p/6202372.html

https://www.cnblogs.com/nexiyi/p/hbase_shell.html

https://www.cnblogs.com/steven-note/p/7209398.html

1)特点

分布式面向列的数据库 
横向扩展性好
随机读写
容错能力
伸缩性好
稀疏性

2)组成

在这里插入图片描述


HMaster服务器群:负责Region的分配及数据库的创建和删除等操作。 

HRegioServer服务器群:负责数据的读写服务 。

ZooKeeper:作为HDFS的一部分 ,负责维护服务器集群的状态(某台服务器是否在线,服务器之间数据的同步操作及master的选举等)。  

在这里插入图片描述

Client访问HBase上的数据并不需要HMaster参与,寻址访问ZooKeeper和HRegionServer,数据读写访问HRegionServer,

  HMaster仅仅维护Table和Region的元数据信息,Table的元数据信息保存在ZooKeeper上,负载很低。HRegionServer存取一个子表时,会创建一个HRegion对象,然后对表的每个列簇创建一个Store对象,每个Store都会有一个MemStore和0或多个StoreFile与之对应,每个StoreFile都会对应一个HFile,HFile就是实际的存储文件。因此,一个HRegion有多少列簇就有多少个Store。

在这里插入图片描述

Table在行的方向上分割为多个HRegion,每个HRegion分散在不同的RegionServer中 ,但同一个HRegion是不会拆分到多个HRegionServer上的。HRegion按大小分割,每个表一般只有一个HRegion,随着数据不断插入表,HRegion不断增大,当HRegion的某个列簇达到一个阀值(默认256M)时就会分成两个新的HRegion。这个过程由HRegionServer管理,而HRegion的分配由HMaster管理。	

在这里插入图片描述

    每个HRegion由多个Store构成,每个Store由一个MemStore和0或多个的StoreFile组成,每个Store保存一个列簇

 MemStore 是放在内存里的,保存修改的数据即keyValues。当MemStore的大小达到一个阀值(默认64MB)时,MemStore会被Flush到文件,即生成一个快照。

	MemStore内存中的数据写到文件后就是StoreFile ,StoreFile底层是以HFile的格式保存。

3)模型

Region数据模型

在这里插入图片描述

定位数据:行键 ;

	    行键+时间戳 ;

	    行键+列族列 ;

Region物理存储模型

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值