Hbase的shell命令学习

在学习Hbase的shell命令,之前先得了解如何进入hbase的shell命令行,通过执行如下简单的命令回车后进入hbase的shell命令行界面

hbase shell

进入hbase命令行后,执行help然后回车,就能看到Hbase的shell命令行下有哪些命令,下面是根据help反馈的几类命令来进行学习:

一、 general commands

Command list: status, table_help, version, whoami

1、查看整理的状态

hbase(main):007:0> status

1 servers, 0 dead, 4.0000 average load

2、查看表涉及的命令对应的帮助

hbase(main):009:0> table_help

Help for table-reference commands ......

3、查看Hbase版本

hbase(main):012:0> version

0.98.6.1, r, Tue Apr 12 16:23:18 CST 2016

4、查看当前用户

hbase(main):013:0> whoami

hbaseadmin (auth:SIMPLE)

groups: users

二、ddl commands

Command list: alter, alter_async, alter_status, create, describe, disable, disable_all, drop, drop_all, enable, enable_all, exists, get_table, is_disabled, is_enabled, list, show_filters

1、显式所有的表

hbase(main):001:0> list

TABLE

member

t1

2 row(s) in 1.4470 seconds

显式某一类型的表,支持正则

hbase(main):003:0> list "mem.*"

TABLE

member

2、创建表(create)

2.1 创建student的表,含有name、address、age列族

create 'student','name','address','age'

2.2 创建namespace为hbase并且表名为t4的表

create 'hbase:t4',{NAME => 'f1'}

3、查看表(describe)

语法: describe 'tablename' or describe 'namespace:tablename'

备注:也可以使用缩写的desc来查看

3.1 查看创建的student表

describe 'student'

desc 'student'

4、修改表(alter)

4.1 为student表添加nickname的列族

alter 'student',NAME => 'nickname'

4.2 删除student表的nickname的列族

alter 'student','delete' => 'nickname'

5、启用表(enable)

hbase(main):003:0> enable 'student'

0 row(s) in 0.3000 seconds

6、禁用表(disable)

hbase(main):004:0> disable 'student'

0 row(s) in 1.3610 seconds

7、删除表(drop)

hbase(main):005:0> drop 'student'

0 row(s) in 0.2750 seconds

8、判断表是否存在(exists

hbase(main):008:0> exists 'member'

Table member does exist

hbase(main):009:0> exists 'student'

Table student does not exist

9、判断表是否启用(is_enabled)

hbase(main):011:0> enable 't1'

0 row(s) in 0.0470 seconds

hbase(main):012:0> disable 't2'

0 row(s) in 1.3090 seconds

hbase(main):014:0> is_enabled 't1'

true

hbase(main):015:0> is_enabled 't2'

false

10、判断表是否禁用(is_disabled)

hbase(main):016:0> is_disabled 't1'

false

hbase(main):017:0> is_disabled 't2'

true

三、 namespace commands

Command list: alter_namespace, create_namespace, describe_namespace, drop_namespace, list_namespace, list_namespace_tables

1、查看表空间列表

hbase(main):026:0> list_namespace

NAMESPACE

default

hbase

2 row(s) in 0.0130 seconds

2、查看表空间

hbase(main):027:0> describe_namespace 'hbase'

DESCRIPTION

{NAME => 'hbase'}

1 row(s) in 0.0180 seconds

3、查看表空间的表

hbase(main):029:0> list_namespace_tables 'hbase'

TABLE

acl

meta

namespace

t4

4 row(s) in 0.0330 seconds

4、创建表空间

hbase(main):031:0> create_namespace 'test2'

0 row(s) in 0.0760 seconds

hbase(main):032:0> list_namespace

NAMESPACE

default

hbase

test2

3 row(s) in 0.0200 seconds

5、修改表空间

hbase(main):045:0> alter_namespace 'test2',{METHOD => 'set', 'PROERTY_NAME' => 'PROPERTY_VALUE'}

0 row(s) in 0.0450 seconds

hbase(main):046:0> describe_namespace 'test2'

DESCRIPTION

{NAME => 'test2', PROERTY_NAME => 'PROPERTY_VALUE'}

1 row(s) in 0.0050 seconds

hbase(main):047:0> alter_namespace 'test2',{METHOD => 'unset', NAME=>'PROERTY_NAME'}

0 row(s) in 0.0300 seconds

hbase(main):048:0> describe_namespace 'test2'

DESCRIPTION

{NAME => 'test2'}

1 row(s) in 0.0080 seconds

6、删除表空间

hbase(main):049:0> drop_namespace 'test2'

0 row(s) in 0.0990 seconds

hbase(main):050:0> list_namespace

NAMESPACE

default

hbase

2 row(s) in 0.0130 seconds

四、dml commands

Command list: append, count, delete, deleteall, get, get_counter, incr, put, scan, truncate, truncate_preserve

1、添加记录

添加rowkey为rowkey001记录

put 'student','rowkey001','address:colum1','jiaxi'

put 'student','rowkey001','age:colum1','100'

2、查询记录

查询studen表中rowkey为rowkey001的记录

get 'student','rowkey001'

查询student表中rowkey为rowkey001,并且列族age为colum1的记录

get 'student','rowkey001','age:colum1'

3、扫描表

全表扫描student的数据

scan 'student'

只扫描stdent的前2行记录

scan 'student',{LIMIT => 2}

4、查看表的记录数

查看student表的记录数

count 'student'

5、删除记录

删除student中rowkey001为aget:colum1的值

delete 'student','rowkey001','age:colum1'

删除整行的数据

deleteall 'student','rowkey001'

删除整个表的数据

truncate 'student'

posted @ 2017-12-23 08:04  飞鸿无痕  阅读(701)  评论(0编辑  收藏  举报