Hbase-基本操作(一)
一、常用操作
1) 进入HBase客户端命令行
bin/hbase shell
退出Hbase客户端:quit / exit / ctrl+c
2) 查看帮助命令
hbase(main)> help
3) 查看当前数据库中有哪些表
hbase(main)> list
4) 查看当前数据库中有哪些命名空间
hbase(main)> list_namespace
5)写错了的话,需要ctrl+退格键一起
二、表的操作
1)创建表
hbase(main)> create 'iparkmerchant_order','smzf'
hbase(main)> create 'staff','info'
hbase(main):007:0> create 'student','cf1'
2) 插入数据到表-一次只能添加一条数据
hbase(main) > put 'student2','1001',cf1:name','Thomas'
hbase(main) > put 'student2','1001','cf1:sex','male'
hbase(main) > put 'student2','1001','cf1:age','18'
hbase(main) > put 'student2','1002','cf1:name','Janna'
hbase(main) > put 'student2','1002','cf1:sex','female'
hbase(main) > put 'student2','1002','cf1:age','20'
hbase(main):009:0> put 'student','1001','cf1:name','plus'
put相同的数据的话就会发生覆盖,默认展示的是最新的数据(时间戳最大的),历史版本可以通过修改版本号进行查看
数据插入后的数据模型
|
Rowkey |
timestamp |
cf1 |
|||
|
name |
sex |
age |
|
||
|
1001 |
|
Thomas |
male |
18 |
|
|
1002 |
|
Janna |
female |
20 |
|
3) 扫描查看表数据
hbase(main) > scan 'student'
hbase(main) > scan 'student',{STARTROW => '1001', STOPROW => '1001'}
hbase(main) > scan 'student',{STARTROW => '1001'}
注:这个是从哪一个rowkey开始扫描
hbase(main):012:0> scan 'student'

4) 查看表结构
hbase(main):012:0> desc 'student'

5) 更新指定字段的数据
hbase(main) > put 'student','1001','info:name','Nick'
hbase(main) > put 'student','1001','info:age','100'
hbase(main) > put 'student','1001','info:isNull',''(仅测试空值问题)

6) 查看“指定行”或“指定列族:列”的数据
hbase(main) > get 'student','1001'
hbase(main) > get 'student','1001','info:name'
7) 删除数据
(1)删除某rowkey的全部数据:
hbase(main) > deleteall 'student','1001'
这里就是删除所有以‘1001’为RowKey的数据行。
(2)只删除指定列的数据行
hbase(main):030:0> delete 'student','1001','cf1:isNull'
这里就是只删除指定的数据行-列簇中列名为isNull而且以’1001’为RowKey的数据行。
8) 清空表数据
hbase(main) > truncate 'student'
尖叫提示:清空表的操作顺序为先disable,然后再truncate。

9) 删除表
首先需要先让该表为disable状态:
hbase(main) > disable 'student'
检查这个表是否被禁用
hbase(main) > is_enabled 'hbase_book'
hbase(main) > is_disabled 'hbase_book'
恢复被禁用的表
enable 'student'
禁用/停止表之后然后才能drop这个表:
hbase(main) > drop 'student'
尖叫提示:如果直接drop表,会报错:Drop the named table. Table must first be disabled
ERROR: Table student is enabled. Disable it first.
10) 统计表数据行数
hbase(main) > count 'student'
11) 变更表信息
将info列族中的数据存放3个版本:
hbase(main) > alter 'student',{NAME=>'info',VERSIONS=>3}

查看student的最新的版本的数据
hbase(main) > get 'student','1001'
查看HBase中的多版本
hbase(main) > get 'student','1001',{COLUMN=>'info:name',VERSIONS=>10}
浙公网安备 33010602011771号