Hbase-基本操作(一)常用操作 + 表的操作

Posted on 2020-04-21 21:49  MissRong  阅读(604)  评论(0)    收藏  举报

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}

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3