Hbase基础

HBase

HBase概念:HBase是Apache旗下一个高可靠性、高性能、面向列、可伸缩的分布式数据库。
hbase操作速度受以下两个因素影响:
1、 表会被并发地进行插入、编辑以及删除操作。
2、 多个表关联后的复杂查询。

存储结构

HBase表由列族组成,列族由列组成,列由key和value组成,最基本的存储单位是列。
HMaster服务器负责维护表的结构信息;
HRegionServer服务器负责存储数据。

MemStore是内存缓冲区
通常当MemStore的大小达到128M或者占用内存达到总内存的40%时会触发flush操作。

StoreFile文件数量增长到3个后,会触发合并(Compact)操作。

当单个StoreFile的大小超过10G后,会触发分裂(Split)操作。

只有当写HLog和写MemStore都成功了才算数据写入完成。

如果日志数量达到32的时候,就会触发强制flush操作。

HBase组件的功能

Client:包含了访问HBase的接口,还有维护缓存加速HBase的访问。
Zookeeper:实现HMaster的高可用;监控HRegionServer的状态;存储.META.的地址。
HMaster:维护.META.;为HRegionServer分配Region;维护集群的负载均衡。
HRegionServer:处理客户端的读写请求;管理HMaster分配的Region。
HDFS::为HBase提供最终的底层数据存储服务。
Zookeeper集群的开启和关闭

start-hbase.sh
stop-hbase.sh

shell中的命令

list:查看有哪些表

describe 表名:查看表的属性

put,表名 ,rk,列族名:列名,插入的数据:插入数据

scan 表名:查看表中的数据
使用起始行 (STARTROW) 和结束行 (ENDROW) 来限制显示记录的条数。

get,表名,rk,列族:列名:获取单元格数据

delete 表名,rk,列族:删除单元格数据

  • HBase删除记录并不是真的立即删除了数据,而是放置了一个墓碑标记,把这个版本数据标记为不可见。

deleteall 表名,rk:删除rk的整行记录

disable 表名:停用表

enable 表名:启用表

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>