基本操作

  1.进入HBase客户端命令行

    hbase shell

  2.查看帮助命令

    hbase(main)> help

  3.查看当前数据库的表

    hbase(main)> list

  4.查看当前数据库中有哪些命名空间

    hbase(main)> list_namespace

表的操作

1)  创建表

 hbase(main)> create 'student','info'

hbase(main)> create 'iparkmerchant_order','smzf'

hbase(main)> create 'staff','info'

2) 插入数据到表

 hbase(main) > put 'student','1001','info:name','Thomas'

hbase(main) > put 'student','1001','info:sex','male'

hbase(main) > put 'student','1001','info:age','18'

hbase(main) > put 'student','1002','info:name','Janna'

hbase(main) > put 'student','1002','info:sex','female'

hbase(main) > put 'student','1002','info:age','20'

数据插入后的数据模型

Rowkey

timestamp

info

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开始扫描

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) 删除数据

删除某rowkey的全部数据:

 hbase(main) > deleteall 'student','1001'

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}