分享

hbase shell 如何根据指定格式的rowkey查数据

hery 发表于 2014-10-31 17:35:41 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 5 50240
hbase shell 如何根据指定格式的rowkey查数据?查询前100条??

已有(5)人评论

跳转到指定楼层
bioger_hit 发表于 2014-10-31 18:00:26
hbase通过setFilter来实现对rowkey的条件查询。

对于前10条或则,前缀相同等等这些都是可以实现的。

参考下面两个帖子,属于分页,也就是比方前10条,前100条,等

hbase分页应用场景及分页思路与代码实现

hbase分页查询实现
回复

使用道具 举报

hery 发表于 2014-10-31 18:01:45
bioger_hit 发表于 2014-10-31 18:00
hbase通过setFilter来实现对rowkey的条件查询。

对于前10条或则,前缀相同等等这些都是可以实现的。

好的,谢谢。。。。
回复

使用道具 举报

hery 发表于 2014-10-31 18:03:47
hery 发表于 2014-10-31 18:01
好的,谢谢。。。。

是否有通过shell的方式来操作呢?
回复

使用道具 举报

bioger_hit 发表于 2014-11-1 12:10:47
hery 发表于 2014-10-31 18:03
是否有通过shell的方式来操作呢?
传统数据库有两种操作方式:一种直接sql
一种api直接使用sql,也就是在通过编程调用sql。所以hbase也不例外。
scan ‘scores'

也可以指定一些修饰词:TIMERANGE, FILTER, LIMIT, STARTROW, STOPROW, TIMESTAMP, MAXLENGTH,or COLUMNS。没任何修饰词,就是上边例句,就会显示所有数据行。

例句如下: (对于scan不断的加条件)

  1. hbase> scan ‘.META.'
  2. hbase> scan ‘.META.', {COLUMNS => ‘info:regioninfo'}
  3. hbase> scan ‘t1′, {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => ‘xyz'}
  4. hbase> scan ‘t1′, {COLUMNS => ‘c1′, TIMERANGE => [1303668804, 1303668904]}
  5. hbase> scan ‘t1′, {FILTER => “(PrefixFilter (‘row2′) AND (QualifierFilter (>=, ‘binary:xyz'))) AND (TimestampsFilter ( 123, 456))”}
  6. hbase> scan ‘t1′, {FILTER => org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}
复制代码



回复

使用道具 举报

hery 发表于 2014-11-3 13:51:26
bioger_hit 发表于 2014-11-1 12:10
传统数据库有两种操作方式:一种直接sql
一种api直接使用sql,也就是在通过编程调用sql。所以hbase也不例 ...

好的,谢谢。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条