今天测试使用AggregationClient来统计最大最小年龄,结果返回空指针异常,然后我执行了一下rowCount聚合函数,是可以正确返回行数的,因此可以判断coprocessor设置是成功的。
经过一番折腾后发现,原来在hbase shell里put进去的年龄变成了字符串。。。。我是这么写的:put 'member2','row-1','info:age',20 。因为我突然发现我在shell控制台scan表时可以直接看到age的值!!!如果是数字类型的话,在shell控制台上显示的应该是16进制的字符串。
于是我改用API的形式put了一些测试数据数据进去,采用Bytes.toBytes(25L)的形式设置age的值。然后我重新scan了一下表,现在看到的是16进制值了。
然后我重新执行了一下聚合函数min,max,可以正常返回最大年龄和最小年龄了。。
记录一下避免再犯错。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。