系统相关
首页 > 系统相关> > (3)Hbase的shell操作

(3)Hbase的shell操作

作者:互联网


文章目录


基本操作

1.进入HBase客户端命令行

[root@note01 conf]# hbase shell

2.查看帮助命令

hbase(main):001:0> help

3.查看当前数据库中有哪些表

hbase(main):002:0> list

表的操作

1.创建命名空间

hbase的命名空间类似于数据库中的数据库概念

hbase(main):005:0> create_namespace 'APP_DSI'

2.创建表

hbase(main):007:0> create 'APP_DSI:TEST','data'

3.插入数据

hbase(main):008:0> put 'APP_DSI:TEST','1','data:sex','male'hbase(main):009:0> put 'APP_DSI:TEST','2','data:age','18'

4.扫描查看表数据

hbase(main):010:0> scan 'APP_DSI:TEST'ROW                      COLUMN+CELL                                                           
 1                       column=data:sex, timestamp=1573295184323, value=male                  
 2                       column=data:age, timestamp=1573295221917, value=18                    
2 row(s) in 0.0300 seconds

5.查看表结构

hbase(main):011:0> describe 'APP_DSI:TEST'Table APP_DSI:TEST is ENABLED                                                                  
APP_DSI:TEST                                                                                   
COLUMN FAMILIES DESCRIPTION                                                                    
{NAME => 'data', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELL
S => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSI
ONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}              1 row(s) in 0.0270 seconds

6.更新指定字段的数据
对于更新字段信息,只需要同一个rowkey相同情况下即可实现覆盖到达更新的目的

put 'APP_DSI:TEST','1','data:sex','female'

7.查看“指定行”或“指定列族:列”的数据

hbase(main):016:0> get 'APP_DSI:TEST','1'COLUMN                   CELL                                                                  
 data:name               timestamp=1573295766431, value=zs                                     
 data:sex                timestamp=1573295667825, value=female

hbase(main):017:0> get 'APP_DSI:TEST','1','data:name'COLUMN                   CELL                                                                  
 data:name               timestamp=1573295766431, value=z

8.统计表数据行数
指代的是rowkey数据

hbase(main):019:0> count 'APP_DSI:TEST'2 row(s) in 0.0150 seconds=> 2

9.删除数据
删除某rowkey的全部数据

hbase(main):021:0> deleteall 'APP_DSI:TEST','1'

删除某rowkey的某一列数据

hbase(main):027:0> delete 'APP_DSI:TEST','2','data:age'

10.清空表数据

hbase(main):028:0> truncate 'APP_DSI:TEST'

11.变更表信息
将info列族中的数据存放3个版本

hbase(main):029:0> alter 'APP_DSI:TEST',{NAME=>'info',VERSIONS=>3}hbase(main):022:0> get 'APP_DSI:TEST','1001',{COLUMN=>'info:name',VERSIONS=>3}

12.删除表
首先需要先让该表为disable状态

hbase(main):030:0> disable 'APP_DSI:TEST'

再drop掉

hbase(main):031:0> drop 'APP_DSI:TEST'

提示:如果直接drop表,会报错:ERROR: Table student is enabled. Disable it first.

标签:shell,APP,DSI,TEST,操作,Hbase,main,data,hbase
来源: https://blog.51cto.com/bigdata/2855154