Hbase命令行的一些记录,不然用完没多久又得忘了,找的时候又得花时间,干脆把用到的先记录下来,后面再用到其它命令的话继续补充。
Hbase准确说来是列蔟式数据库,而不是列式数据库,因为我们用的时候基本上是单一列族包含多列的结构,用在我们项目上的考虑主要是两点:
1)随机查询修改很快
2)只需要定义好列族,不需要像通常的关系型数据库那样事先定义好所有列结构
但是有缺点,做批量查询不给力,需要定期同步到其它地方进行批量查询。
一、Hbase管理
1、进入console
hbase shell
2、手动compact
compact分为两类,一类叫Minor compact
,一类叫Major compact
,Minor compact
只是进行文件merge操作,而Major compact
除了做文件Merge操作,还会将其中的delete
项删除。
major_compact 'test'
二、表相关操作
1、查看有哪些表
list
2、创建表
create 'test', {NAME=>'attr'}
其中,表名为test
,列族为attr
,对于Hbase
来讲,大多数情况下使用的是一个列族,使用多列族,在多列族都会涉及到查询修改的情况下,反而会拖慢效率。
3、删除表
先disable,然后drop
disable 'test'
drop 'test'
4、查看表信息
desc 'test'
5、修改表结构
先disable表,才能做修改
# hbase attr的生存期TTL设置为1天(86400秒)
disable 'test'
alter "test",NAME=>'attr',TTL=>'86400'
三、数据的增删改查
1、添加(修改)数据
put 'test','row_key','attr:column_name','2019-12-07 15:25:49->X161'
2、查询一行数据
get 'test','row_key'
3、查询多行数据
scan 'test', {LIMIT=>10}
4、删除一行数据
deleteall 'test','row_key'
5、删除所有数据
# 过程:disable table -> drop table -> create table
truncate 'test'