• Hbase命令


    进入hbase shell命令行

    bin/hbase shell

    HBase Shell; enter 'help' for list of supported commands.

    Type "exit" to leave the HBase Shell

    Version 0.92.1, r1298924, Fri Mar  9 16:58:34 UTC 2012./hbase shell

    1.查看服务器状态

    hbase(main):001:0> status

    1 servers, 0 dead, 3.0000 average load

     

    2.查看hbase版本

    hbase(main):002:0> version

    0.92.1, r1298924, Fri Mar  9 16:58:34 UTC 2012

     

    关于命名空间的命令:

    1. 创建

     

    2. 删除

    3.  修改

     

     

    显示命名空间:

    3.DDL操作

    1).create命令

    创建一个具有三个列簇"member_id"、"address"和"info"的表"member",其中表名、行和列都要用单引号括起来,并以逗号隔开。

    hbase(main):003:0> create 'member','member_id','address','info'

    0 row(s) in 1.1770 seconds

     

    2).list命令

    查看当前HBase中都有哪些表

    hbase(main):004:0> list

    TABLE

    member

    test

    2 row(s) in 0.0170 seconds

     

    3).describe 命令

    查看表的描述信息

    hbase(main):006:0> describe 'member'

    DESCRIPTION                                                                                 ENABLED

     {NAME => 'member', FAMILIES => [{NAME => 'address', BLOOMFILTER => 'NONE', REPLICATION_SCO true PE => '0', VERSIONS => '3', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}, {NAME => 'info', BLOOMFILTER => 'NONE', REPLICATION_SCOPE => '0', VERSIONS => '3', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}, {NAME => 'member_id', BLOOMFILTER => 'NONE', REPLICATION_SCOPE => '0', VERSIONS => '3', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => '2147483647', BLOCKSIZE =>'65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}]}

    1 row(s) in 0.0320 seconds

     

    4).删除一个列簇:disable,alter,enable

    注意:修改表结构必须先disable

    hbase(main):004:0> disable member

    NameError: undefined local variable or method `member' for #

     

    hbase(main):005:0> disable 'member'

    0 row(s) in 2.1560 seconds

     

    删除member表的info列簇

    hbase(main):006:0> alter 'member', 'delete' => 'info'

    Updating all regions with the new schema...

    1/1 regions updated.

    Done.

    0 row(s) in 1.3370 seconds

     

    记得enable表(disable:使表无效;enable:使表有效)

    hbase(main):009:0> enable 'member'

    0 row(s) in 2.2330 seconds

     

    5).删除一个表test(disable,drop)

    hbase(main):025:0> disable 'test'

    0 row(s) in 2.2100 seconds

     

    hbase(main):026:0> drop 'test'

    0 row(s) in 1.2350 seconds

     

    6).查询表是否存在

    hbase(main):033:0> exists 'test'

    Table test does not exist

    0 row(s) in 0.1820 seconds

     

    7).查看表是否enable

    hbase(main):032:0> is_enabled 'member'

    true

    0 row(s) in 0.0070 seconds

     

    2.DML操作

    1).插入数据

    hbase(main):005:0> put 'member','scutshuxue','info:age','24'

    0 row(s) in 0.0790 seconds

     

    hbase(main):005:0> put 'member','duansf','info:age','37'

    0 row(s) in 0.0790 seconds

     

    hbase(main):001:0> put 'member','scutshuxue','info:company','alibaba'

    0 row(s) in 0.6520 seconds

     

    hbase(main):002:0> put 'member','xiaofeng','address:contry','china'

    0 row(s) in 0.0090 seconds

     

    hbase(main):007:0> put 'member','xiaofeng','info:birthday','1987-4-17'

    0 row(s) in 0.0120 seconds

    注:插入语句后面一定不要有空格。

     

    2).获取一条数据

    hbase(main):012:0> get 'member','xiaofeng'

    COLUMN                               CELL

     address:contry                      timestamp=1488307463293, value=china

     info:birthday                       timestamp=1488307533852, value=1987-4-17

    2 row(s) in 0.0130 seconds

     

    3).获取一条记录中某个列簇的信息

    hbase(main):013:0> get 'member','xiaofeng','info'

    COLUMN                               CELL

     info:birthday                       timestamp=1488307533852, value=1987-4-17

    1 row(s) in 0.0100 seconds

     

    4).获取一条记录的某个列簇中的某个列的信息

    hbase(main):020:0> get 'member','xiaofeng','info:birthday'

    COLUMN                               CELL

     info:birthday                       timestamp=1488307533852, value=1987-4-17

    1 row(s) in 0.0090 seconds

     

    5).更新一条记录

    把duansf的年龄改为38岁

    hbase(main):022:0>get 'member','duansf','info:age'

    COLUMN                               CELL

     info:age                            timestamp=1488308172957, value=37

    1 row(s) in 0.0090 seconds

    hbase(main):022:0>put 'member','duansf','info:age','38'

    6).删除member表中某个列

    hbase(main):032:0* delete 'member','scutshuxue','info:age'

    0 row(s) in 0.0080 seconds

    7).member表全表扫描(类似于关系型数据库select *)

    hbase(main):002:0> scan 'member'

    ROW                                  COLUMN+CELL

     scutshuxue       column=info:age, timestamp=1488306890710, value=24

     scutshuxue       column=info:company, timestamp=1488307003752, value=alibaba

     xiaofeng          column=address:contry, timestamp=1488307463293, value=china

     xiaofeng        column=info:birthday, timestamp=1488307533852, value=1987-4-17

    2 row(s) in 0.9780 seconds

    8).删除整行 deleteall

    hbase(main):036:0> deleteall 'member','scutshuxue'

    0 row(s) in 0.0090 seconds

     

    9).查询表中有多少行count

    hbase(main):041:0> count 'member'

    2 row(s) in 0.0240 seconds

     

    10).清空整张表truncate

    hbase(main):045:0>truncate 'member'

    Truncating 'member' table (it may take a while):

     - Disabling table...

     - Dropping table...

     - Creating table...

    0 row(s) in 4.8640 seconds

  • 相关阅读:
    Apache Commons CLI命令行启动
    《三体1——地球往事》—— 读后总结
    《鬼谷子的局4》 —— 读后总结
    Microsoft Visual C++ 2017 Redistributable
    Navicat Premium 12安装与激活(亲测已成功激活)
    如何从DOS命令窗口进行复制粘贴
    使用java写js中类似setTimeout的代码
    Spring @RestController、@Controller区别
    SpringBoot整合Swagger2
    git clone 报“The project you were looking for could not be found.”
  • 原文地址:https://www.cnblogs.com/cxhzy/p/10532903.html
Copyright © 2020-2023  润新知