HBase Shell使用详解

COMMAND GROUPS:
  Group name: general
  Commands: status, version, whoami
  1、status主要用于显示集群状态,可选参数有'simple'(每个rs的requestsPerSecond, numberOfOnlineRegions, usedHeapMB, maxHeapMB), 'summary'(rs存活数,死亡数及平均负载), 'detailed'(多少rit的,master协处理器列表,存活rs中region详情,死亡rs列表),默认是'summary'。
  2、version输出当前安装的hbase版本
  3、whoami输出当前hbase用户




  Group name: ddl
  Commands: alter, alter_async, alter_status, create, describe, disable, disable_all, drop, drop_all, enable, enable_all, exists, is_disabled, is_enabled, list, show_filters
  1、alter修改列族或表级别参数,常用表属性有MAX_FILESIZE,MEMSTORE_FLUSHSIZE, READONLY, and DEFERRED_LOG_FLUSH,常用列族属性有DATA_BLOCK_ENCODING, BLOOMFILTER, REPLICATION_SCOPE, COMPRESSION, VERSIONS, TTL, MIN_VERSIONS, KEEP_DELETED_CELLS, BLOCKSIZE, ENCODE_ON_DISK , IN_MEMORY, BLOCKCACHE),修改某个列族的属性(alter 't1', 'f', ''=>''),删除某个列族(alter 't1', NAME=>'f', METHOD=>'delete',或alter 't1', 'delete'=>'f'),新增列族(alter 't1', {NAME=>'f'}),删除表属性(alter 't1',  METHOD => 'table_att_unset', NAME => ''),添加协处理器(alter 't1', METHOD => 'table_att',    'coprocessor'=>'hdfs:///foo.jar|com.foo.FooRegionObserver|1001|arg1=1,arg2=2',删除协处理器(alter 't1', METHOD => 'table_att_unset', NAME => 'coprocessor$1'),还可以修改列族相关的配置,像这样alter 't1',  NAME=>'f', CONFIG => {'hbase.hstore.compaction.min' => '5'}
  2、alter_async同alter,只不过这个不需要等所有region收到schema发生更改就返回
  3、alter_status协同前一个命令,可以查看alter进度,有几个region收到schema更改通知
  4、createc创建表,还可以预分区等,create 't1', {NAME => 'f', VERSIONS => 1, TTL => 2678400, COMPRESSION => 'LZO'}, {SPLITS_FILE => '/home/hadp/message_splits.txt'}, create 't1', 'f1', {NUMREGIONS => 15, SPLITALGO => 'HexStringSplit|UniformSplit'}, create 't1', 'f1', {SPLITS => ['10', '20', '30', '40']}
  5、describe描述表的schema信息
  6、disable将表状态置为disable状态,这时表无法提供服务
  7、disable_all将会对符合正则条件的表都会disable掉 disable_all 'huang.*' .匹配除\n之外的任何单个字符,*表示前一个字符出现0次或多次
  8、drop删除表,这个操作成功的前提是表必须处于disable状态
  9、drop_all 删除正则匹配的表
  10、enable使表处于enable状态对外提供服务
  11、enable_all使满足正则条件的表enable
  12、exists查看集群中是否存在某张表,不管其是否enable状态的
  13、is_disabled查看表是否处于disable状态
  14、is_enabled查看表是否处于enabled状态
  15、list列出集群所有的表
  16、show_filters显示hbase中所有支持的filter




  Group name: dml
  Commands: count, delete, deleteall, get, get_counter, incr, put, scan, truncate
  1、count统计某张表行数,可以指定显示间隔默认是1000,cache条数默认是10 count 't1', INTERVAL => 10, CACHE => 1000,这个很耗时,可以采用org.apache.hadoop.hbase.mapreduce.RowCounter
  2、delete删除指定cell,时间戳是可选的,delete 't1', 'r1', 'c1', ts1
  3、deleteall删除一行的cell,列和时间戳可选deleteall 't1', 'r1', 'c1', ts1
  4、get获取一行或一个cell的值,列和时间戳可选get 't1', 'r1', {COLUMN => 'c1', TIMERANGE => [ts1, ts2], VERSIONS => 4}, get 't1', 'r1', 'c1', 'c2'  get 't1', 'r1', {FILTER => "ValueFilter(=, 'binary:abc')"}
  5、get_counter获取递增cell的值get_counter 't1', 'r1', 'c1'
  6、incr生成一个递增cell,可指定步长,默认是1,incr 't1', 'r1', 'c1', 1
  7、put插入以个cell,时间戳可选put 't1', 'r1', 'c1', 'value', ts1
  8、scan扫描数据scan '.META.', scan 't1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => 'xyz'}, scan 't1', {RAW => true, VERSIONS => 10}
  9、truncate这个操作会将表drop,然后重新建表




  Group name: tools
  Commands: assign, balance_switch, balancer, close_region, compact, flush, hlog_roll, major_compact, move, split, unassign, zk_dump
  1、assign分配一个region,请谨慎使用。assign 't1,,1389754486055.3f6aacebea6c8b2b66ac7d1d565a358d.'
  2、balance_switch设置balancer是否开启,会返回之前balancer的状态
  3、balancer执行均衡region的操作,如果成功发出指令将返回true,否则返回false,比如处于rit状态时无法做均衡
  4、close_region关闭region,可以直接让rs操作close_region '3f6aacebea6c8b2b66ac7d1d565a358d', 'node104,60020,1390292741528',也可以让master操作close_region 't1,,1389754486055.3f6aacebea6c8b2b66ac7d1d565a358d.'
  5、compact执行紧缩操作,可以表,region或列族粒度compact 't1',compact 'r1',compact 't1', 'c1',compact 'r1', 'c1'
  6、flush将memstore中数据刷入hdfs,可以表,也可以regionflush 'TABLENAME',flush 'REGIONNAME'
  7、hlog_roll对wal进行轮转,需传入rs完整名字hlog_roll 'node104,60020,1390292741528'
  8、major_compact使用方式桶compact,区别只是minor和major之间的差异,前者只是文件的合并,后者还会对过期数据,删除数据进行清理
  9、move移动region被托管的地方,可以指定rs,也可以任由其随机选move 'ENCODED_REGIONNAME',move 'ENCODED_REGIONNAME', 'SERVER_NAME'
  10、split拆分region,可以传入表名,可以传入region全名,可以指定分割点split 'tableName',split 'tableName', 'splitKey'
  11、unassign将现有region下线,同时在新的地方打开,可以传入true强制执行unassign 't1,,1389754486055.3f6aacebea6c8b2b66ac7d1d565a358d.', true
  12、zk_dump将zk目前的信息dump出来


  Group name: replication
  Commands: add_peer, disable_peer, enable_peer, list_peers, list_replicated_tables, remove_peer, start_replication, stop_replication
  暂略


  Group name: snapshot
  Commands: clone_snapshot, delete_snapshot, list_snapshots, restore_snapshot, snapshot
  暂略


  Group name: security
  Commands: grant, revoke, user_permission
  暂略
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值