sunlei1980的专栏

name

grad

course

math

art

Tom

5

97

87

Jim

4

89

80

的course列族。

hbase(main):001:0> create’scores’,’grade’, ‘course’

(2)按设计的表结构插入值:

put’scores’,’Tom’,’grade:’,’5’put ‘scores’,’Tom’,’course:math’,’97’put ‘scores’,’Tom’,’course:art’,’87’put ‘scores’,’Jim’,’grade’,’4’put ‘scores’,’Jim’,’course:math’,’89’put ‘scores’,’Jim’,’course:art’,’80’

这样表结构就起来了,其实比较自由,列族里边可以自由添加子列很方便。如果列族下没有子列,加不加冒号都是可以的。

put命令比较简单,只有这一种用法:

hbase> put ‘t1’, ‘r1′,’c1’, ‘value’, ts1

ts1指时间戳,一般都省略掉了。

(3)根据键值查询数据

get ‘scores’,’Jim’get ‘scores’,’Jim’,’grade’

scan ‘scores’,{get只得到最新加入列族的一条记录)

get ‘scores’,’Jim’,’course:math’(这样可以)

shell操作,一个大概顺序就是操作关键词后跟表名,行名,列名这样的一个顺序,如果有其他条件再用花括号加上。get有用法如下:

hbase> get ‘t1’, ‘r1’hbase> get ‘t1’, ‘r1’, {TIMERANGE => [ts1, ts2]}hbase> get ‘t1’, ‘r1’, {COLUMN => ‘c1’}hbase> get ‘t1’, ‘r1’, {COLUMN => [‘c1’, ‘c2’, ‘c3’]}hbase> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMESTAMP => ts1}hbase> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMERANGE => [ts1, ts2],VERSIONS => 4}hbase> get ‘t1’, ‘r1’, {COLUMN => ‘c1’, TIMESTAMP => ts1, VERSIONS=> 4}hbase> get ‘t1’, ‘r1’, ‘c1’hbase> get ‘t1’, ‘r1’, ‘c1’, ‘c2’hbase> get ‘t1’, ‘r1’, [‘c1’, ‘c2’]

(4)扫描所有数据

scan ‘scores’

例句如下:

hbase> scan ‘.META.’hbase> scan ‘.META.’, {COLUMNS => ‘info:regioninfo’}hbase> scan ‘t1’, {COLUMNS => [‘c1’, ‘c2’], LIMIT => 10, STARTROW=> ‘xyz’}hbase> scan ‘t1’, {COLUMNS => ‘c1’, TIMERANGE => [1303668804,1303668904]}hbase> scan ‘t1’, {FILTER => "(PrefixFilter (‘row2’) AND (QualifierFilter(>=, ‘binary:xyz’))) AND (TimestampsFilter ( 123, 456))"}hbase> scan ‘t1’, {FILTER =>org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}

a. Using a filterString – more information on this is available in theFilter Language document attached to the HBASE-4176 JIRAb. Using the entire package name of the filter.

CACHE_BLOCKS=>false)。

(5)删除指定数据

delete ‘scores’,’Jim’,’grade’delete ‘scores’,’Jim’

删除数据命令也没太多变化,只有一个:

hbase> delete ‘t1’, ‘r1′,’c1’, ts1

create三个命令组合出来的。

(6)修改表结构

disable ‘scores’alter ‘scores’,NAME=>’info’enable ‘scores’

a、改变或添加一个列族:

hbase> alter ‘t1’, NAME=> ‘f1’, VERSIONS => 5

b、删除一个列族:

hbase> alter ‘t1’, NAME=> ‘f1’, METHOD => ‘delete’hbase> alter ‘t1’, ‘delete’ => ‘f1’

艰苦能磨练人的意志。

sunlei1980的专栏

相关文章:

你感兴趣的文章:

标签云: