Hack DayHbase原理及使用简介

Posted 一起哔哔哔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hack DayHbase原理及使用简介相关的知识,希望对你有一定的参考价值。

◆ ◆ ◆ ◆

Hbase原理及使用简介

◆ ◆ ◆ ◆


平台研发中心


Java研发工程师


朱真龙



特点

【Hack Day】Hbase原理及使用简介

技术

架构

        HRegion虽然是分布式存储的最小单元,但并不是存储的最小单元。事实上,HRegion由一个或者多个Store组成,每个store保存一个columns family。每个Strore又由一个memStore和0至多个StoreFile组成。

        如下图:StoreFile以HFile格式保存在HDFS上

【Hack Day】Hbase原理及使用简介
【Hack Day】Hbase原理及使用简介
【Hack Day】Hbase原理及使用简介


存储

模型

【Hack Day】Hbase原理及使用简介

常见

命令

# 语法:put <table>,<rowkey>,<family:column>,<value>,<timestamp>

# 例如:给表t1的添加一行记录:rowkey是rowkey001,family name:f1,column name:col1,value:value01,timestamp:系统默认

hbase(main)> put 't1','rowkey001','f1:col1','value01'

用法比较单一。

查询某行记录

# 语法:get <table>,<rowkey>,[<family:column>,....]

# 例如:查询表t1,rowkey001中的f1下的col1的值

hbase(main)> get 't1','rowkey001', 'f1:col1'

# 或者:

hbase(main)> get 't1','rowkey001', {COLUMN=>'f1:col1'}

# 查询表t1,rowke002中的f1下的所有列值

hbase(main)> get 't1','rowkey001‘

# 语法:scan <table>, {COLUMNS => [ <family:column>,.... ], LIMIT => num}

# 另外,还可以添加STARTROW、TIMERANGE和FITLER等高级功能

# 例如:扫描表t1的前5条数据

hbase(main)> scan 't1',{LIMIT=>5}

#禁用表

hbase(main)>disable ‘t1’

#删除表

hbase(main)>drop  ‘t1’


常见

问题

1、Region过少

对读的影响

相比较有多个region的情况,读并发比较低。 如果region多的表,需要读的数据跨两个region,则相当于并行在读,如果region少,则相当于串行在读。

对写的影响

同样是写并发度问题。另外,如果region过少,同样高的并发写入,会导致的flush次数变多,导致minitor compact频率更高,从而导致写性能降低。


2、RegionServer进程挂

可能性比较多:jvm策略问题、hdfs节点连接数不够、节点间时间不同步、网络延迟高、超时时间过短等等


【Hack Day】Hbase原理及使用简介
【Hack Day】Hbase原理及使用简介
【Hack Day】Hbase原理及使用简介


一起哗哗哗


以上是关于Hack DayHbase原理及使用简介的主要内容,如果未能解决你的问题,请参考以下文章

PCA原理简介及参考分析实战

Rsync服务简介部署使用及原理详解

Hack Day全文检索引擎Lucene原理

Appium简介及原理

Kickstart无人值守原理及简介

kafka入门:简介使用场景设计原理主要配置及集群搭建