Hbase Shell常用命令操作
一、进入HBase客户端命令行
[atguigu@hadoop102 hbase]$ bin/hbase shell 1.查看帮助命令 hbase(main):001:0> help 2.通用命令 hbase(main):002:0> list --提供HBase的状态,例如,服务器的数量。 status
--提供正在使用HBase版本。 version
--表引用命令提供帮助。 table_help
--提供有关用户的信息。 whoami
二、表操作
1.创建表:
hbase(main):002:0> create \'student\',\'info\'
2.插入数据到表
hbase(main):003:0> put \'student\',\'1001\',\'info:sex\',\'male\' hbase(main):004:0> put \'student\',\'1001\',\'info:age\',\'18\' hbase(main):005:0> put \'student\',\'1002\',\'info:name\',\'Janna\' hbase(main):006:0> put \'student\',\'1002\',\'info:sex\',\'female\' hbase(main):007:0> put \'student\',\'1002\',\'info:age\',\'20\'
3.扫描查看数据
hbase(main):008:0> scan \'student\'
hbase(main):009:0> scan \'student\',{STARTROW => \'1001\', STOPROW => \'1001\'}
hbase(main):010:0> scan \'student\',{STARTROW => \'1001\'}
4.查看表结构 (desc 或者 describe)
hbase(main):011:0> describe \'student\'
5.更新指定字段数据
hbase(main):012:0> put \'student\',\'1001\',\'info:name\',\'Nick\' hbase(main):013:0> put \'student\',\'1001\',\'info:age\',\'100\'
6.查看“指定行”或“指定列族:列”的数据
hbase(main):014:0> get \'student\',\'1001\' hbase(main):015:0> get \'student\',\'1001\',\'info:name\'
7.统计表数据行数
hbase(main):021:0> count \'student\'
8.删除数据
删除某rowkey的全部数据: hbase(main):016:0> deleteall \'student\',\'1001\'
删除某rowkey的某一列数据: hbase(main):017:0> delete \'student\',\'1002\',\'info:sex\'
9.清空表数据
hbase(main):018:0> truncate \'student\' 提示:清空表的操作顺序为先disable,然后再truncate。
10.删除表
首先需要先让该表为disable状态: hbase(main):019:0> disable \'student\' 然后才能drop这个表: hbase(main):020:0> drop \'student\' 提示:如果直接drop表,会报错:ERROR: Table student is enabled. Disable it first.
11.变更表信息
将info列族中的数据存放3个版本:
hbase(main):022:0> alter \'student\',{NAME=>\'info\',VERSIONS=>3}
hbase(main):022:0> get \'student\',\'1001\',{COLUMN=>\'info:name\',VERSIONS=>3}
三、namespace常用操作
(1)创建namespace
create_namespace \'name_test\'
(2)删除namespace
drop_namespace \'name_test\'
(3)查看namespace
describe_namespace \'name_test\'
(4)列出所有namespace
list_namespace
(5)在namespace下创建表
create \'name_test:test1\', \'cf1\'
(6)查看namespace下的表
list_namespace_tables \'name_test\'
参考: