开发者社区 问答 正文

HBase Shell最基本的使用命令有什么



HBase Shell 入门


本篇会介绍最基本的HBase Shell的使用命令。


  1. 连接到HBase
    请参考HBase Shell的配置来进行基本环境的配置。
    运行HBase目录下bin下的如下命令进入HBase shell $ ./bin/hbase shell


成功后会进入到如下的界面,这个时候我们就可以输入各种命令来执行了
hbase(main):001:0>
展示HBase Shell的帮助信息
help命令提供了很多基本的命令和对应的使用方法,当你忘记一些基本用法的时候,记得输入help来查看。 hbase(main):001:0>help

创建表
使用[backcolor=transparent]create命令来创建一张新的表,在创建的时候你必须输入表的名称和ColumnFamily的名称 hbase(main):001:0> create 'test', 'cf'
0 row(s) in 0.4170 seconds
=> Hbase::Table - test


查询表信息
使用[backcolor=transparent]list命令来查询表 hbase(main):002:0> list 'test'
TABLE
test
1 row(s) in 0.0180 seconds
=> ["test"]


往表里面插入记录
在hbase中,往表里面写一行记录的命令叫做[backcolor=transparent]put hbase(main):003:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.0850 seconds
hbase(main):004:0> put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0110 seconds
hbase(main):005:0> put 'test', 'row3', 'cf:c', 'value3'
0 row(s) in 0.0100 seconds


这里我们写入了三条数据,前面的[backcolor=transparent]rowx,代表写入的表的rowkey,也就是主键。后面的[backcolor=transparent]cf:x,是我们的自定义列,可以有无数多个,这里写了3个。我们叫这个a,b,c为qualifier,也就是列名。
查询表中的所有数据
[backcolor=transparent]scan是一种访问HBase数据的方式,它非常的灵活,你可以用它来扫描全表,也可以用它查询固定范围。相应的它的速度会比查询单条的[backcolor=transparent]get略慢一些,这里因为我们的demo数据库数据并不多,所以我们全部取出来。 hbase(main):006:0> scan 'test'
ROW                                      COLUMN+CELL
  row1                                    column=cf:a, timestamp=1421762485768, value=value1
  row2                                    column=cf:b, timestamp=1421762491785, value=value2
  row3                                    column=cf:c, timestamp=1421762496210, value=value3
3 row(s) in 0.0230 seconds


查询单条记录
使用[backcolor=transparent]get来查询单条记录 hbase(main):007:0> get 'test', 'row1'
COLUMN                                   CELL
  cf:a                                    timestamp=1421762485768, value=value1
1 row(s) in 0.0350 seconds


禁用一张表
如果你想要删除一张表,或者改变一张表的设置,或者其他类似的场景。你需要先禁用这张表,使用[backcolor=transparent]disable命令能够禁用一张表,使用[backcolor=transparent]enable命令能够取消禁用,恢复禁用的表。 hbase(main):008:0> disable 'test'
0 row(s) in 1.1820 seconds
hbase(main):009:0> enable 'test'
0 row(s) in 0.1770 seconds


删除一张表
要删除一张表,使用[backcolor=transparent]drop命令,这是一个危险的操作,使用的时候请务必小心。 hbase(main):011:0> drop 'test'
0 row(s) in 0.1370 seconds


退出HBase Shell
输入[backcolor=transparent]quit命令就可以离开HBase Shell环境了。

展开
收起
云栖大讲堂 2017-11-02 16:22:37 2177 分享 版权
0 条回答
写回答
取消 提交回答