Hbase shell操作
Hbase常用指令shell操作
Hbase启动服务端准备:
1,集群时间同步
2,zookeeper正常运行
3,HDFS正常运行
进入命令行
①linux命令行输入:先jps查看进程,确定Hbase服务端启动
②linux命令行输入:hbase shell 进入hbase命令行操作
namespace(名称空间)
Group name:namespace
Commands:
create_namespace:
create_namespace创建名称空间
list_namespace
list_namespace查看名称空间
list_namespace_tables
list_namespace_tables 查看名称空间下的表
describe_namespace
describe_namespace查看名称空间的信息
alter_namespace
alter_namespace修改名称空间的属性,若存在,则修改,若不存在,则添加。
alter_namespace也可以删除属性
drop_namespace
drop_namespace删除名称空间
general普通命令
Group name:general
Commands:
version查看版本信息
whoami查看用户
status状态
DDL
DDL(数据定义语言(data definition language)此部分指令为操作表指令
create创建表,至少指定一个列族
用法:create “表名”,{NAME =>’cf1’}(列族)
describe查看表信息,表结构
用法 describe ‘表名’
desc ‘表名’
list查看表
查看default名称空间下的表
drop删除表,删之前必须禁用表,表被禁用之后,不能查看表数据
disable禁用表
enable启用表
is_disabled查看表是否被禁用
is_enabled查看表是否启用,即是否是可操作
disable_all 禁用所有符合条件的表
enable_all启用所有符合条件的表
drop_all删除所有符合条件的表
exists判断表是否存在
list_regions查看表region信息
split ‘表名’,’rk行号’
手动切分表,将表切为多个region,手动强制拆分多个region
region包含开头,不包含结尾,指定切分的rk为第二个region的起始位置
locate_region定位key所在的region
hbase查询数据是根据key
key --》region–》数据
clone_table_schema 根据已经存在的表,创建相同表结构的新表
clone_table_schema ,’已经存在的表’,’新表’
alter修改表结构信息(非同步修改,alter_async同步修改)
alter ‘表名’,NAME=>’列族名’,结构信息,若列族存在,则信息更新,若不存在,则添加新的列族
alter ‘表名’,’delete’=>’列族名’ 删除列族cf2
同上,删除列族cf3
DML
DML数据操作语言(Data Manipulation Language),此部分指令为操作表数据指令。
Group name:dml
Commands:
put向表中插入数据,若指定位置数据不存在,则为添加数据,若指定位置数据存在,则更新数据
scan查看表数据信息,可查询整个表数据,也可添加限定条件(limit)
查询时,也可加条件,比如只查询一行
查询时,可以查看历史修改版本(VERSIONS存在多版本时才可查看)
get 根据key获取数据
get ‘表名’,’rk’
获取一行数据的其中一列、两列、整个列族所有的列信息
append:在已经存在的值后面追加
count ‘表名’ 查看表有几行数据
delete删除数据,需指定表名,rk,列名(即删除一个单元格信息)如果数据有多个版本,删除最新版本
deleteall ‘表名’,’rk’ 删除一行数据
也可以删除一行中某一列族的某一列
incr 自增1 与get_counter 配合使用
也可指定增加的值
get_counter 获取incr的结果值
truncate 清空表数据
truncate ‘表名’
help
如果有指令忘记怎么使用了,可以在hbase命令行中输入help ‘指令’ 查看指令用法。