服务器网站跳转怎么做,室内设计平面图包括,防伪查询网站,单位建设网站申请信用卡吗HBASE是什么#xff1f;
高可靠、高性能、面向列、可伸缩、实时读写的分布式数据库。利用HDFS作为其文件存储系统#xff0c;利用MapReduce来处理HBase中的海量数据。利用Zookeeper作为其分布式协同服务。用于存储非结构化和半结构化的松散数据。
HBase数据模型
RowKey: 唯…HBASE是什么
高可靠、高性能、面向列、可伸缩、实时读写的分布式数据库。利用HDFS作为其文件存储系统利用MapReduce来处理HBase中的海量数据。利用Zookeeper作为其分布式协同服务。用于存储非结构化和半结构化的松散数据。
HBase数据模型
RowKey: 唯一标识一行记录按字典顺序排序RowKey只能存储64K的字节数据。 字典顺序存储在合理的rowkey设计情况下范围查询很快。 Column Family列族 – HBASE中每个列都归属于某个列族列族必须作为表模式定义的一部分先给出。 – 列名以列族作为前缀每个列族都可以有多个列成员column新的列族成员可以随后按需动态加入。 – 权限控制、存储以及调优都是在列族层面进行的。 – HBase把同一列族里面的数据存储在同一目录下由几个文件保存。TimeStamp – 在HBase每个cell存储单元对同一份数据有多个版本更加唯一的时间戳来区分每个版本之间的诧异不同版本的数据安装时间大圩排序最新的数据版本排在最前面。 – 时间戳类型是64位整型。 – 时间错可以由HBASE在数据写入时自动赋值此时时间戳是精确到毫秒的当前系统时间。 – 时间戳也可以由用户显示赋值如果应用程序要避免数据版本冲突就必须自己生产具有唯一性的时间戳。Cell单元格 – 有行和列的坐标交叉决定。 – 单元格室友版本的。 – 单元格的内容是未解析的字节数组{rowkey,column(familyqualifier),version}唯一确定的单元 – cell中的数据是没有类型的全部是字节数组形式存储的。
HBase架构 Client
访问Hbase的接口并维护Cache加快对Hbase的访问。
Zookeeper
保证集群中只有一个活跃的Master。存储所有Region的寻址信息。实时监控Region的上线、下线信息并实时通知Master。存储Hbase的schema和table元数据。
HMaster
为RegionServer分配Region,负责RegionServer的负责均衡。发现失效的RegionServer并重新分配其下的Region管理用户对Table的CRUD。
HRegionServer
负责维护HMaster分配给他的Region处理这些Region的IO请求。当Region变大到一个阈值后RegionServer会进行Region拆分并告知Master节点由Master协调拆分后的Region进行迁移。
HRegion
HBase自动把表水平划分成多个Region每个Region会保存一个表里面某段连续的数据类似MYSQL表的横向拆分每个表最开始只有一个Region随着数据不断插入Region不断增大当增大到一个阈值时Region就会才分成两个新的Region裂变。当Table中的行不断增多就会有越来越多的Region这样一张完整的表被保存在多个RegionServer上。
Store的MemStore和StoreFile
一个Region有多个Store组成一个Store对应一个列族。Store报货位于内存中的Memstore和位于磁盘中的StoreFile。 写操作先写入Memstore当Memstore中的数据打到某个阈值HRegionServer会启动FlashCache进行进行写入StoreFile每次写入形成单独的StoreFile。当StoreFile文件数量增长到一定的阈值后系统会进行合并在合并过程中会进行版本合并和删除工作写操作的时候都是append操作不会有更新和删除动作所以速度很快形成更大的StoreFile。当一个Region所有的StoreFile的大小和数量超过一定的阈值后会把所有的Region分隔成两个并由HMaster分配到相应的RegionServer服务器实现负载均衡 读操作先在Memstore找找不到去blockCache找找不到再到StoreFile找。 blockCache是Hbase的读缓存HBase采用最近最少访问策略来管理。 HLog
在HBase写操作时会先写HLog然后再往Memstore写。HLog先写到内存然后每秒进行一次持久化。在写入Memstore后持久化到StoreFile之前如果HRegionServer挂掉了则通过HLog进行数据恢复。如果HLog持久化之前挂掉了那么这一秒的数据将丢失。
HFILE
StoreFile存储在HDFS中的文件名称。
写操作
访问ZK得到元数据表地址。访问RegionServer找到列族Store往Store的MemStore写数据先写入HLog再写入MemStore。MemStore在数据快满或满64M的时候进行持久化到StoreFile。
读操作
访问ZK得到元数据表地址。访问RegionServer找到列族Store。从MemStore读数据如果MemStore中没有就从blockCache读缓存读。blockCache没有则从磁盘读取如果读取到则返回并缓存到blockCache。