HBase shell日常命令集锦

1. Table级别
# 创建命名空间

create_namespace 'ops'


# 创建表

create 'ops:member', {NAME=>'info', COMPRESSION=>'SNAPPY', TTL=>1296000}, {NAME =>'work', COMPRESSION=>'SNAPPY', TTL=>1296000}, {SPLITS => ['05','10','15','20','25']}


# 查看表结构描述

describe 'ops:member'
desc 'ops:member'


# 禁用与启用表

disable 'ops:member'
enable 'ops:member'

 
# 删除表及数据(先禁用才能删除,谨慎操作)

drop 'ops:member'


# 修改表结构

alter 'ops:member', {NAME => 'work', TTL => 648000}

 
# 判断表是否存在

exists 'ops:member'


# 判断表是否可用

is_enabled 'ops:member'
is_disabled 'ops:member'


 # 列出所有表

list


 # 列出所有命名空间

list_namespace

 
# 列出命名空间下所有表

list_namespace_tables 'ops'


2、Data
# 增,改

put 'ops:member', '22222', 'info:name', 'dashixiong'
put 'ops:member', '22222', 'info:age', '18'
put 'ops:member', '22222', 'info:male', 'women'
put 'ops:member', '22222', 'work:department', 'bdp'
put 'ops:member', '22222', 'work:post', 'ops'


 

# 查
get 'ops:member', '22222'
get 'ops:member', '22222', 'info:name'
get 'ops:member', '22222', 'work:post'
 
# 扫描
scan 'ops:member', LIMIT=>1
scan 'ops:member', COLUMNS => 'work:department', LIMIT=>1
scan 'ops:member', TIMERANGE => [1596003063095, 1596003096911], LIMIT=>1
scan 'ops:member', STARTROW => '22', ENDROW => '23', LIMIT=>1
scan 'ops:member', ROWPREFIXFILTER => '22', LIMIT=>1
 
# 删
delete 'ops:member', '22222', 'work:post'
delete 'ops:member', '22222'
 
# 清空(保留分区)
truncate_preserve 'ops:member'


3、Server

### RegionServer Group
# 添加RsGroup
add_group 'bdpops'
 
# 均衡分组Region
balance_group 'bdpops'
 
# 获取分组节点与表信息
get_group 'bdpops'
 
# 列出所有分组
list_groups
 
# 转移节点到指定分组
move_group_servers 'bdpops', ['CNSZ22PL362:16020']
 
# 转移表到指定分组
move_group_tables 'bdpops', ['hms:mj_all_open']
 
# 删除分组(分组下无节点和表时操作)
remove_group 'bdpops'
 
### Region,replication,sanpshot
# Flush table
flush 'ops:member'
 
# 上线Region
assign '57ae9d224339eed374a1a792fdbae954'
 
# 移动Region到指定节点
move '57ae9d224339eed374a1a792fdbae954', 'cnsz22pl0142,16020,1589801157334'
 
# 其他(不详细举证)
list_peers
add_peer '1', "server1.cie.com:2181:/hbase"
 
snapshot 'sourceTable', 'snapshotName'
list_snapshots
list_table_snapshots 'tableName'
restore_snapshot 'snapshotName'

hbase zookeper最大处理时延过大    
重置计数    
1、zk_max_latency过高,zk_avg_latency未明显增长,瞬时过大请求时延,重置计数
echo 'srst' | nc IP  PORT  示例 :echo 'srst' |nc 10.110.105.73 2181
2、zk_max_latency,zk_avg_latency皆过高,查询网络连接,确认异常请求,停止该业务请求

单节点同步队列sizeoflogqueue积压    生产容灾数据同步异常    
视具体情况而定
1、确认未同步表,如无容灾表,则建立容灾表
2、确认生产容灾网络连通是否异常
3、查看积压的节点日志,查看积压原因,可能的原因有请求比较大,容灾性能不够,网络异常等,根据不同的异常,进行处理
日志路径:/log/hadoop/hadoop-hdfs-datanode-{hostname}.log
4、如果无明显异常,或短时间无法恢复的情况下,可以短时间停止同步 disable_table_replication 'table_name',关闭peer(不建议做此操作)


#单节点TPS(RquestsPerSerond)过高,热点    部分请求变慢    均衡region分布/切分region并转移    
1、查看region分布
访问集群主页,查看同一rsgroup节点region分布情况
2、均衡region
若该节点regions num过多,balance该节点所属group,登录集群任一数据节点,进入hbase shell
hbase shell
balance_group '{groupname}'
否则转移热点region(同上)
3、切分region并转移
登录集群任一数据节点,进入hbase shell
hbase shell
split '{regionID}'
转移region至同一rsgroup其他节点
move '{regionID}','{serverName}'(此处region为切分产生的region)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HBase ShellHBase的交互式命令行界面,用于管理HBase数据库和执行各种操作。以下是HBase Shell常用命令: 1. help:显示可用命令的帮助信息。 2. version:显示当前HBase Shell的版本号。 3. status:显示HBase集群的状态信息,包括RegionServer的数量和状态。 4. list:列出所有的表。 5. create ‘table_name’, ‘column_family’:创建一个新表,并指定列族。 6. disable ‘table_name’:禁用一个表,停止对其进行读写操作。 7. enable ‘table_name’:启用一个表,允许对其进行读写操作。 8. describe ‘table_name’:显示一个表的结构信息,包括列族和列的详细信息。 9. alter ‘table_name’, {NAME => ‘column_family’, VERSIONS => ‘version_count’}:修改表的列族或列的配置,例如修改列族的最大版本数目。 10. drop ‘table_name’:删除一个表。 11. put ‘table_name’, ‘row_key’, ‘column_family:column’, ‘value’:向表中插入一条数据。 12. get ‘table_name’, ‘row_key’:获取表中指定行的数据。 13. scan ‘table_name’:扫描整个表,获取所有数据。 14. delete ‘table_name’, ‘row_key’, ‘column_family:column’:删除表中指定行的数据。 15. count ‘table_name’:统计表中的行数。 这些命令只是HBase Shell中的一部分,还有其他更多的命令可用于管理和操作HBase数据库。通过使用这些命令,可以在HBase Shell中轻松地管理表、插入和检索数据,以及执行其他与HBase相关的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值