hbase shell基本操作

表操作:

list

#查看表名列表

 

创建表:

create '表名','列族名'[,'列族名']

#创建表,列族可以不止一个。

create "player",{NAME => 'basic',VERSIONS => 5,BLOCKCACHE = > true}

#对列族'basic'进行了描述:对一个cell保留最近的5个历史版本,允许读取数据时进行缓存。

查看单表是否存在:

exist 'player'

查看表结构:

describe 'player'

 

删除表:

disable 'player'

#需要先禁用表

is_disable 'player'

#查看禁用是否完成

drop 'player'

#删除表

truncate 'player'

#清空表数据

 

修改表结构:

增加列族:

alter 'player','advanced'

alter 'player','basic',{NAME => 'advanced',IN_MEMORY => true}

删除列族(表中至少要包含一个列族):

alter 'player','delete'=>'advanced'

alter 'player',{NAME=>'advanced',METHOD=>'delete'}

修改列族:

alter 'player',{NAME =>'basic',IN_MEMORY => true}

表名已存在就直接修改啦~

查看表结构:

describe 'player'

 

数据更新:

数据插入:

put '表名','行键名','列族名:列名','cell值',时间戳

put 'player','001','basic:playername','test A B C duang duang duang',1

 

数据修改:

同插入,时间戳覆盖即可。

put 'player','001','basic:playername','asojdaloijs',2

 

数据删除:

delete 'player','001','basic'

列名与时间戳是可选项,时间戳表示删除小于等于该时间戳的数据,delete删除的是cell,无法跨行键

deleteall 'player','001'

不需要指定列族和列,删除逻辑行

 

数据查询:

get 'player','001'

get必须标明表名和行键名。也可以同时指明列族名、时间戳的范围、数据版本数、使用过滤器。

get 'player','001',{COLUMN => 'basic',TIMERANGE => [1,2],VERSIONS => 3}

查看多时间戳:

get '表名','列族名',{COLUMN=>'basic:name',VERSIONS=>3}

 

数据扫描:

scan 'player'

scan 'player',{COLUMN => 'basic:playername'}

指定列族和列名

scan 'player',{LIMIT => 1}

指定输出行数

posted @ 2021-11-01 20:53  anyiya  阅读(61)  评论(0编辑  收藏  举报