问:如何使用RESTAPI扫描给定时间范围的hbase?
我试过这个代码:
<Scanner batch="1048576">
<filter>
{
"type": "PrefixFilter",
"value": "NThiMDNjYWRlNTc5NmIwOWI0OGViMTdl", // base64 encoded "58b03cade5796b09b48eb17e"
"timerange": ["1489502797781", "1489502797788"]
}
</filter>
</Scanner>
hbase shell时间范围扫描为:
> scan 'tableName', { TIMERANGE => [1489442551458, 1489442551558] }
将时间戳编码为base64不起作用,将数组字符串化并将其编码为base64不起作用,传递整数(时间戳)而不是字符串不起作用。没有错误,我得到的是我所有的记录,通过我提供的其他条件,这是“58b03cade5796b09b48eb17e”前缀,好像它完全被忽略了,所以我想这不是正确的方式。
1条答案
按热度按时间mtb9vblg1#
我在rest调用的xsd中看到,time参数是扫描器的参数,而不是过滤器的参数。另外,在xsd中,这两个属性似乎是分开的
startTime
以及endTime
(两个int)。所以,你可以尝试以下方法: