Hadoop学习之通过shell命令操作HBase

我爱海鲸 2022-04-11 21:16:30 暂无标签

简介通过shell命令操作HBase

1、HBase Shell命令

HBase Shell基础命令:status、list、create table等

HBase Shell数据模型操作命令:put、get、delete、scan等

名称 命令表达式
查看存在哪些表 list
创建表 create '表名称',‘列名称1','列名称2','列名称N'
添加记录 put '表名称','行名称','列名称:',‘值’
查看记录 get‘表名称,'行名称’
查看表中的记录总数 count‘表名称’
删除记录 delete '表名','行名称’,'列名称’
删除一张表 先要屏蔽该表,才能对该表进行删除,第一步disable '表名称'第二步drop '表名称'
查看所有记录 scan“表名称”
查看某个表某个列中所有数据 scan“表名称”,[列名称:"]
更新记录 就是重写一遍进行覆

2、具体操作:

如果还没有安装Hbase的可以先参考之前的文章:

Hadoop学习之Hadoop伪分布式安装

Hadoop学习之HBase伪分布式安装

cd /usr/local/hadoop/hbase-1.2.4/bin  进入Hbase的bin目录下

./hbase shell  进入hbase的shell界面

如图:

接下来我们来使用第一个命令:

help 'status'    这个命令能够让我们查询一个具体命令的相关帮助

如图:

status         查看集群的基本状态

如图:

list              查看现有的表

如图:

create 'FileTable','fileInfo' , 'saveInfo'       创建表FileTable 并有两个列族 fileInfo和saveInfo

如图:

然后在执行一下list就可以看到相关的表信息了,如图:

desc  'FileTable'    查看FileTable表的详细信息(按Tab键可以补全相关单词)

如图:

alter 'FileTable','cf'       添加一个cf的列族

如图:

alter 'FileTable' ,{NAME=>'cf' ,METHOD=>'delete'}   删除一个列族

如图:

插入数据

put 'FileTable','rowkey1','fileInfo:name','file1.txt'  

put 'FileTable','rowkey1','fileInfo:type','txt'

put 'FileTable','rowkey1','fileInfo:size','1024'

put 'FileTable','rowkey1','saveInfo:path','/hone'

put 'FileTable','rowkey1','saveInfo:creator','tom'

put 'FileTable','rowkey1','saveInfo:creator','jerry'

put 'FileTable','rowkey2','saveInfo:creator','jerry'

put 'FileTable','rowkey2','saveInfo:path','/hone/pics'

put 'FileTable','rowkey2','fileInfo:size','2048'

put 'FileTable','rowkey2','fileInfo:type','jpg '

put 'FileTable','rowkey2','fileInfo:name','file2.jpg '

 

count 'FileTable'    查看数据行数

如图:

get 'FileTable' , 'rowkey1'       查看FileTable表中的rowkey1的值

如图:

get 'FileTable' , 'rowkey2'      查看FileTable表中的rowkey2的值

如图:

get 'FileTable' , 'rowkey1' ,'fileInfo'  单独查看某一个列族的信息

如图:

scan 'FileTable'   查看整张表的信息

如图:

scan 'FileTable',{COLUMN=>'fileInfo:name'}   只看单独某一个列族的数据

如图:

scan 'FileTable',{COLUMN=>'fileInfo'}    只看fileinfo的数据信息

如图:

scan 'FileTable' ,{STARTROW=>'rowkey1' ,LIMIT=>1,VERSIONS=>1}   查看FileTable表从rowkey1键开始,返回一种数据,版本号为1

如图:

scan 'FileTable' ,{STARTROW=>'rowkey1' ,LIMIT=>2,VERSIONS=>1}   查看FileTable表从rowkey1键开始,返回两种数据,版本号为1

如图:

delete 'FileTable','rowkey1','fileInfo:size'  删除FileTable表中rowkey1键,fileInfo的silze值

如图:

deleteall 'FileTable','rowkey1'  删除整行数据

如图:

接下来我们来删除表,要删除表首先要禁用该表

disable 'FileTable'   禁用FileTable

is_enabled 'FileTable'  查看当前表是否禁用 

is_disabled 'FileTable'  查看当前表是否没有禁用

drop 'FileTable'  删除该表

如图:

exists 'FileTable'  查看表是否存在

如图:

你好:我的2025