UP | HOME

hbase使用备注

Table of Contents

hbase使用备注

常见命令

# 获取命令帮助 help 'command_name'
hbase(main):042:0> help 'list'

# 查看状态
hbase(main):042:0> status

# 查看版本号
hbase(main):042:0> version

# 查看所有的表
hbase(main):042:0> 查看所有表

# 创建表
hbase(main):042:0> create 'test', {NAME => 'd', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'FAST_DIFF', 
TTL => '7776000', COMPRESSION => 'GZ', MIN_VERSIONS => '0', BLOCKCACHE => 'false', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}

# 查看表
hbase(main):042:0> describe 'test'

# 删除表
hbase(main):042:0> disable 'test'
hbase(main):042:0> drop 'test'

# 清空表
hbase(main):042:0> truncate 'test'

# 判断表是否存在
hbase(main):042:0> exists 'test'

# 修改表
hbase(main):042:0> disable 'test'
hbase(main):042:0> alter 'test', {NAME => 'f1'}
hbase(main):042:0> enable 'test'

# 获取数据
hbase(main):042:0> get 'test', '1100000000055558454177160'

# 扫描数据
hbase(main):042:0> scan 'test'

hbase建表

语句

#create 'qp_test', {NAME => 'd', BLOOMFILTER => 'ROW', VERSIONS => '1', 
IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'FAST_DIFF', 
TTL => '7776000', COMPRESSION => 'GZ', MIN_VERSIONS => '0', BLOCKCACHE => 'false', 
BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}

参数

NAME
列族
BLOOMFILTER
BLOOMFILTER : NONE | ROW | ROWCOL 对列族单独启用布隆
NONE -> 否
ROW -> 行键的哈希在每次插入行时将被添加到布隆
ROWCOL -> 行键 + 列族 + 列族修饰的哈希将在每次插入行时添加到布隆
VERSIONS
VERSIONS : 1 || N || ...
保留N个版本
参数设为1 能节约2/3的空间
备注:MIN_VERSIONS => ? 表示compact操作执行之后,至少要保留的版本
COMPRESSION
COMPRESSION :NONE | GZIP | LZO | Zippy/Snappy 压缩
| Algorithm  | remaining | Encoding   | Decoding |
|------------|-----------|------------|----------|
|GZIP       |   13.4%   |   21 MB/s  |118 MB/s  |
|LZO         |   20.5%   |   135 MB/s |410 MB/s  |
|Zippy/Snappy|   22.2%   |   172 MB/s |409 MB/s  |
TTL
默认是 2147483647 -> 68年
列族数据的存活时间,单位是s
这个参数可以根据具体的需求对数据设定存活时间,超过存过时间的数据将在表中不在显示,待下次major compact的时候再彻底删除数据. 
注意的是TTL设定之后 MIN_VERSIONS=>’0’ 这样设置之后,TTL时间戳过期后,将全部彻底删除该family下所有的数据,
如果MIN_VERSIONS 不等于0那将保留最新的MIN_VERSIONS个版本的数据,其它的全部删除,
比如MIN_VERSIONS=>’1’ 届时将保留一个最新版本的数据,其它版本的数据将不再保存
IN_MEMORY
设置激进缓存,优先考虑将该列族放入块缓存中
针对随机读操作相对较多的列族可以设置该属性为true
BLOCKCACHE
数据块缓存属性
BLOCKSIZE
设置HFILE数据块大小(默认64kb)

First created: 2021-02-27 Sat 00:00
Last updated: 2021-11-25 Thu 23:23
Power by Emacs 27.1 (Org mode 9.4)
© 2017 – 2021 by josephzeng