我正在使用Node.js的Thrift NPM库来处理我正在进行的项目。
当我使用Hbase shell运行以下扫描时,我得到1个结果(正确):
scan "UserLog", {COLUMNS => ["entry"], FILTER => "(SingleColumnValueFilter('entry', 'addedTime', >=,'binary:1437696000000',true,true)) AND (SingleColumnValueFilter('entry', 'addedTime', <=,'binary:1437764400000',true,true))"}
使用相同扫描的NodeJS Thrift(以节点格式)我没有结果(不正确):
var query = { columns: [ 'entry' ], filterString: '(SingleColumnValueFilter('entry', 'addedTime', >=,'binary:1437696000000',true,true)) AND (SingleColumnValueFilter('entry', 'addedTime', <=,'binary:1437764400000',true,true)) ' }
我们使用的NodeJS Thrift代码是:
this.connection.hbaseConnect(function(client, connectionHbase) {
if(client) {
client.scannerOpenWithScan(tableName, new _hbase_types.TScan(query), null, function (err, scannerId) {
client.scannerGet(scannerId, function (err, result) {
client.scannerGetList(scannerId, 1000, function(err, res){
if(err) {
console.log(err);
}
callback(res);
connectionHbase.end();
});
});
});
}
else
{
callback(false);
}}, Message);
我们的环境详情如下: