我在Pig Latin中使用org.apache.pig.backend.hadoop.hbase.HBaseStorage()。是否有可能获得一个值的所有版本?
在HBase Shell中,命令为:
get 'table', 'cf:column', {COLUMN => 'cf:column', VERSIONS => 5}
pig 也有可能吗?
输入样本:
我的HBase表如下所示:
hbase(main):019:0> put 'mytable', 'mykey1', 'cf:onlyoneclumn', 'value 1'
0 row(s) in 0.0070 seconds
hbase(main):020:0> put 'mytable', 'mykey1', 'cf:onlyoneclumn', 'value 2'
0 row(s) in 0.0070 seconds
hbase(main):021:0> put 'mytable', 'mykey1', 'cf:onlyoneclumn', 'value 3'
0 row(s) in 0.0050 seconds
hbase(main):022:0> put 'mytable', 'mykey1', 'cf:onlyoneclumn', 'value 4'
0 row(s) in 0.0050 seconds
hbase(main):023:0> get 'mytable', 'mykey1'
COLUMN CELL
cf:onlyoneclumn timestamp=1376470137654, value=value 4
1 row(s) in 0.0370 seconds
hbase(main):024:0> get 'mytable', 'mykey1', {COLUMN => 'cf:onlyoneclumn', VERSIONS => 5}
COLUMN CELL
cf:onlyoneclumn timestamp=1376470137654, value=value 4
cf:onlyoneclumn timestamp=1376470136632, value=value 3
cf:onlyoneclumn timestamp=1376470135411, value=value 2
3 row(s) in 0.0140 seconds
最佳答案
当前(0.11.1)个HBaseStorage是它附带的用于读取HBase表的类,不支持它。它仅支持以下内容
您可以做的就是获取HBaseStorage code,并构建自己的支持它的Loader