hbase shell操作

 

说明行中:
括号内表示参数,递进关系,包含同级,同级不递进。“+”表示可以多个。“|”后表示为可选参数


信息查看

hbase启动/hbase shell启动

start-hbase.sh
hbase shell

查看表操作的帮助信息

table_help

查看具体操作的帮助信息

help 'put'
't1'[表名], 'r1'[行键], 'c1'[列族:列名]

查看集群状态,默认为summary。有三种可选的参数simple、summary、detailed。

status
status 'simple'

查看当前HBase版本

version

查看当前用户

whoami

 


表操作
显示所有表

list
list '正则'

创建表(表名,列族+,| 存储版本号)

create 'student', 'info'
create 'student', {NAME => 'info'}
create 'student', 'info', 'data'
create 'student', {NAME => 'info'},{NAME => 'data'}
create 'student', {NAME => 'info', VERSIONS => '3'}

查看表的属性

describe 'student'

表存在判定

exists 'student'

清空表数据

truncate 'student'

停用表+

disable 'student'
desc 'student'
disable_all '正则'

启用表+

enable 'student'
enable_all '正则'

停用/启用表判定

is_disabled 'student'
is_enabled 'student'

删除表(先停用,后删除)+

drop 'student'
drop_all '正则'

alter更改表或者列族的定义属性
增加表的列族+

alter 'student', 'info2'
alter 'student', {NAME => 'info2'}

删除表的列族+

alter 'student', 'delete' => 'info2'
alter 'student', {NAME => 'info2', METHOD => 'delete'}

调整列族的存储版本号

alter 'student', {NAME => 'info', VERSIONS => '5'}

查看表的更新状况

alter_status 'student'

异步更新表(表名,参数列表)

alter_async 'student', {NAME => 'info', VERSIONS => '5'}
列族属性
BLOOMFILTER
REPLICATION_SCOPE
MIN_VERSIONS
COMPRESSION
TTL
BLOCKSIZE
IN_MEMORY
IN_MEMORY_COMPACTION
BLOCKCACHE
KEEP_DELETED_CELLS
DATA_BLOCK_ENCODING
CACHE_DATA_ON_WRITE
CACHE_DATA_IN_L1
CACHE_INDEX_ON_WRITE
CACHE_BLOOMS_ON_WRITE
EVICT_BLOCKS_ON_CLOSE
PREFETCH_BLOCKS_ON_OPEN
ENCRYPTION
ENCRYPTION_KEY IS_MOB_BYTES
MOB_THRESHOLD_BYTES
表级别属性
MAX_FILESIZE
READONLY
MEMSTORE_FLUSHSIZE
DEFERRED_LOG_FLUSH
DURABILITY
REGION_REPLICATION
NORMALIZATION_ENABLED
PRIORITY
IS_ROOT
IS_META
所有属性

 


数据操作
插入数据(表名,行键,列族:列名,值,| 时间戳[一般13位])

put 'student', 'r001', 'info:age', 20
put 'student', 'r001', 'info:name', 'LiuYi'
put 'student', 'r001', 'info:gender', 'M', 2222222222222

Get查询(表名,行键,| 列族:列名+,版本号)

get 'student', 'r001'
get 'student', 'r001', 'info'
get 'student', 'r001', {COLUMN => 'info'}
get 'student', 'r001', 'info:name'
get 'student', 'r001', 'info:name', 'info:age'
get 'student', 'r001', {COLUMN => ['info:name', 'info:age']}
get 'student', 'r001', {COLUMN => 'info:name', VERSIONS => 3}

Get时间戳范围数据查询(表名,行键,列族:列名+,| 版本号)[左闭右开]

get 'student', 'r001', {COLUMN => 'info', TIMERANGE => [1588779577577, 1588781758439]}
get 'student', 'r001', {COLUMN => 'info:name', VERSIONS => 5, TIMERANGE => [1588779577577, 1588781758439]}
get 'student', 'r001', {COLUMN => ['info:name', 'info:age'], VERSIONS => 5, TIMERANGE => [1588779577577, 1588781758439]}

Get过滤器查询(表名,行键,过滤器)
值为'LiuYi'

get 'student', 'r001', {FILTER => "ValueFilter(=, 'binary:LiuYi')"}

Scan查询(表名,| 列族:列名+,版本号)

scan 'student'
scan 'student', {COLUMNS => 'info'}
scan 'student', {COLUMNS => ['info', 'info2']}
scan 'student', {COLUMNS => 'info:name'}
scan 'student', {COLUMNS => 'info:name', VERSIONS => 3}

Scan行键范围数据查询(表名,| 列族:列名+,行键范围)[左闭右开]

scan 'student', {STARTROW => 'r002',}
scan 'student', {COLUMNS => 'info', STARTROW => 'r001', ENDROW => 'r003'}
scan 'student', {COLUMNS => 'info:name', STARTROW => 'r001', ENDROW => 'r003'}

Scan时间戳范围数据查询(表名,| 列族:列名+,版本号)[左闭右开]

scan 'student', {TIMERANGE => [1588779577577, 1588781758439]}

Scan控制行数查询

scan 'student', {LIMIT => 3}

Scan包含已经删除的数据查询(表名,列族+,RAW,| 版本号)

scan 'student', {COLUMNS => 'info', RAW => true}
scan 'student', {COLUMNS => 'info', RAW => true, VERSIONS => 3}

Scan过滤器查询(表名,列族+,过滤器)
列标示符中含有a

scan 'student', {COLUMNS => 'info', FILTER => "(QualifierFilter(=,'substring:a'))"}

列出所有过滤器

show_filters

删除数据(表名,行键,列族:列名,| 时间戳)

delete 'student', 'r001', 'info:name'
delete 'student', 'r001', 'info:name', 1588781758439

删除整行数据(表名,行键,| 列族:列名,时间戳)

deleteall 'student', 'r002'
deleteall 'student', 'r002', 'info:name'

值加上新的值(表名,行键,列族:列名,值)

append 'student', 'r001', 'info:name', 'Yi'

计算表的行数(控制计算步长,控制缓存条数)

count 'student'
count 'student', INTERVAL => 1, CACHE => 1

 


其他操作

Region操作:不记录
其他操作:不记录

快照,恢复到某个时刻的结构和数据

snapshot 'student', '快照名'

把表转化成一个对象,以便操作

t1 = get_table 'student'
t1.scan

计数器单元格(表名,行键,列族:列名,| 加减值)

incr 'student', 'r001', 'info:name'
incr 'student', 'r001', 'info:name', 3

 

posted @ 2020-05-05 18:29  子崖子崖  阅读(173)  评论(0)    收藏  举报