hbase基本指令

scan

  1. 根据行号查询 STARTROW, ENDROW
语法: scan [table], {STARTROW=>'row'}
hbase(main):078:0> scan 'test' ,{STARTROW=>'row2'}
hbase(main):077:0> scan 'test' ,{ENDROW=>'row2'}

  1. 全表查
语法: scan [table]
  1. 查找指定行
语法:scan [table], {COLUMNS=>['CF:column1','CF:column2']}

get

语法:get [table], [row], [CF:column]
示例:
hbase(main):081:0* get 'test', 'row1','cf:name'

hbase(main):082:0> get 'test', 'row1'

delete

hbase 一行中的列是离散分布的; 单元格是hbase 最小纬度定义

删除单元格

语法: delete [table], [row], [cf:column]

删除行

语法:
deleteall [table], [row]

disable 表

hbase 表示不可以说删除就删除的, 因为有可能有很多的客户端正在使用,或者是hbase正在做合并或者是分裂操作.
如果删除了表就造成了无法恢复的错误, 所以在删除之前需要对表进行disable,停用下线

disable [table]

判断是否停用: is_disabled [table]

drop

删除表,再删除之前需要disable

drop [table]

status

语法: status [参数]

查看集群状态, 有三种可选参数 
- simple
- summary (默认)
- detailed

version

查看当前版本

whoami

查看当前登录用户

list

查询所有的表,支持通配符

list '[]*'

alter

建立/修改列族

传入新的列族名称,就是创建,传入已存在的列族名称,就是修改列族属性

语法: alter [table], NAME=>[CF], [ATTR]=>[value]

示例:
   修改列族,支持的最大版本数量

# 修改前
hbase(main):030:0* desc 'test'
Table test is ENABLED                                               
test                                                                
COLUMN FAMILIES DESCRIPTION                                             
{NAME => 'cf', VERSIONS => '5'

# 修改

hbase(main):033:0* alter 'test', NAME=>'cf', VERSIONS=>10
Updating all regions with the new schema...
1/1 regions updated.
Done.
Took 2.2514 seconds          

# 验证
hbase(main):036:0* desc 'test'
Table test is ENABLED                                                 
test                                                     
COLUMN FAMILIES DESCRIPTION                       
{NAME => 'cf', VERSIONS => '10',

建立/修改多个列族

语法: alter [table], {NAME=>'列族1', 属性名1=>属性值1,,..}, {NAME=>'列族2', 属性名1=>属性值1}
# 创建两个列族,最大版数量分别是 3,4
hbase(main):033:0* alter 'test', {NAME=>'cf3',VERSIONS=>3}, {NAME=>'cf4', VERSIONS=>4}
Updating all regions with the new schema...
1/1 regions updated.
Done.
Took 2.5052 seconds                                                 
hbase(main):062:0> desc 'test'

删除列族

列族删除:

语法: alter '表名', 'delete'=>'列族名'

示例:

hbase(main):066:0* alter 'test', 'delete'=>'cf4'
Updating all regions with the new schema...
1/1 regions updated.
Done.
Took 2.4025 seconds       

修改表级别属性

//TODO

设置表配置

//TODO

删除表级别属性

//TODO

create

  1. 创建表,创建表的同时可以修改表的属性
语法: 
create '表名', {NAME=>'列族名1', 属性名1=>属性值1}, {NAME=>'列族名2', 属性名1=>属性值1}

示例:

hbase(main):070:0* create 'test1',{NAME=>'cf', VERSIONS=>3},{NAME=>'cf1', VERSIONS=>3},{NAME=>'cf2', VERSIONS=>4}
Created table test1
Took 1.3587 seconds                                                                                          
=> Hbase::Table - test1
  1. 创建表,不指定列族属性
语法: 
create '表名','列族1','列族2'..

describe

输出表的描述信息
describe [table]
或者
desc [table]

alter_status

查看表的各个region的更新情况,这条命令在异步更新表的时候,用来查看更改
命令执行的情况,判断该命令是否执行完毕

语法:
 alter_status '表名'
示例:

alter_status 'test1'
1/1 regions updated.
Done.
Took 1.0209 seconds    

alter_async

异步更新表。使用这个命令不需要等待表的全表region更新完成就返回.

语法:
alter_aynch '表名', 参数列表
示例:
alter_async 'test1', NAME=>'cf', VERSIONS=>5
Took 1.1535 seconds            
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章