美文网首页
Haoop(二十八) Hbase的命令操作詳記

Haoop(二十八) Hbase的命令操作詳記

作者: 文子轩 | 来源:发表于2018-08-22 00:28 被阅读29次

    下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下:

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

    一.一般操作

    • 查询服务器状态

    hbase(main):011:0> status
    1 active master, 0 backup masters, 1 servers, 0 dead, 4.0000 average load

    • 查詢版本

    hbase(main):012:0> version
    1.2.1, r8d8a7107dc4ccbf36a92f64675dc60392f85c015, Wed Mar 30 11:19:21 CDT 2016

    二.DDL操作

    1 創建一個表

    hbase(main):013:0> create 'table','column_famaly','column_famaly1','column_famaly2'
    0 row(s) in 94.9160 seconds
    => Hbase::Table - table

    2 列出所有的表

    hbase(main):014:0> list
    TABLE
    stu
    table
    test
    3 row(s) in 0.0570 seconds

    1. 获得表的描述

    hbase(main):015:0> describe 'table'

    1. 删除一个列族 alter,disable,enable

    base(main):016:0> alter 'table',{NAME=>'column_famaly',METHOD=>'delete'}
    Updating all regions with the new schema...
    1/1 regions updated.
    Done.
    0 row(s) in 3.0220 seconds

    hbase(main):018:0> describe 'table'

    1. drop一個表

    hbase(main):019:0> drop 'stu'
    ERROR: Table stu is enabled. Disable it first.

    1. 把表設置爲disable

    hbase(main):020:0> disable 'stu'
    0 row(s) in 2.3150 seconds

    1. 再删除一个表

    hbase(main):021:0> drop 'stu'
    0 row(s) in 1.2820 seconds
    8.判斷表是否enable
    hbase(main):025:0> is_enabled 'table'
    true
    0 row(s) in 0.0150 seconds

    1. 判斷表是否enable

    hbase(main):026:0> is_disabled 'table'
    false
    0 row(s) in 0.0140 seconds

    把表设为disable

    hbase(main):027:0> disable 'table'
    0 row(s) in 33.2980 seconds

    hbase(main):028:0> is_disabled 'table'
    true
    0 row(s) in 0.0140 seconds

    三、DML操作

    1.插入几条记录

    put 'table','id','column_famaly1:name','tanggao'

    hbase(main):032:0> put 'table','id','column_famaly1:age','20'
    0 row(s) in 0.0150 seconds

    hbase(main):033:0> put 'table','id','column_famaly1:sex','boy'
    0 row(s) in 0.0190 seconds

    1. 獲取一條數據
      获取一个id的所有数据

    hbase(main):034:0> get 'table','id'

    获取一个id,一个列族的所有数据

    hbase(main):035:0> get 'table','id','column_famaly1'

    获取一个id,一个列族中一个列的所有数据

    hbase(main):036:0> get 'table','id','column_famaly1:name'

    3.更新一条记录
    把id的age修改为22

    hbase(main):037:0> put 'table','id','column_famaly1:age','22'
    0 row(s) in 0.0160 seconds

    hbase(main):038:0> get 'table','id','column_famaly1:age'
    COLUMN CELL
    column_famaly1:age timestamp=1463055893492, value=22
    1 row(s) in 0.0190 seconds

    4.通过timestamp来获取两个版本的数据

    hbase(main):039:0> get 'table','id',{COLUMN=>'column_famaly1:age',TIMESTAMP=>1463055735107}
    COLUMN CELL
    column_famaly1:age timestamp=1463055735107, value=20
    1 row(s) in 0.0340 seconds

    hbase(main):040:0> get 'table','id',{COLUMN=>'column_famaly1:age',TIMESTAMP=>1463055893492}
    COLUMN CELL
    column_famaly1:age timestamp=1463055893492, value=22
    1 row(s) in 0.0140 seconds

    5.全表掃描

    hbase(main):041:0> scan 'table'

    6.删除行健为id的值的‘column_famaly1:age’字段

    hbase(main):042:0> delete 'table','id','column_famaly1:age'

    hbase(main):043:0> get 'table','id'

    7.刪除整行

    hbase(main):044:0> deleteall 'table','id'
    0 row(s) in 0.0550 seconds

    8.查詢表中有多少行

    hbase(main):045:0> count 'table'
    0 row(s) in 0.0450 seconds

    9.给‘id’这个行健增加'column_famaly1:addr'字段,并使用counter实现递增

    hbase(main):002:0> incr 'table','id','column_famaly1:addr'
    hbase(main):003:0> incr 'table','id','column_famaly1:addr'
    hbase(main):004:0> get 'table','id','column_famaly1:addr'
    hbase(main):005:0> incr 'table','id','column_famaly1:addr'

    10.獲取當前的count的值

    hbase(main):006:0> get_counter 'table','id','column_famaly1:addr'

    11.將整個表清空

    hbase(main):007:0> truncate 'table'

    相关文章

      网友评论

          本文标题:Haoop(二十八) Hbase的命令操作詳記

          本文链接:https://www.haomeiwen.com/subject/vririftx.html