java – HBase:过滤器不适用于负整数
发布时间:2020-05-24 01:22:27 所属栏目:Java 来源:互联网
导读:我们已经成功实现了Hifier的QualifierFilter和ValueFilter(使用BinaryComparator),并且它们在大多数情况下都能正常工作.然而,他们在数字等情况下失败了. -10或数字 -10 请注意,数字= -10正常工作.另外,数字 10和数字 10也工作正常. 如果您想查看代码,请查看以
|
我们已经成功实现了Hifier的QualifierFilter和ValueFilter(使用BinaryComparator),并且它们在大多数情况下都能正常工作.然而,他们在数字>等情况下失败了. -10或数字< -10 请注意,数字= -10正常工作.另外,数字> 10和数字< 10也工作正常. 如果您想查看代码,请查看以下链接:
根据this blog,如果我们想要为rowkeys存储负值,这可能是序列化的问题,我们应该编写自己的序列化器进行比较. 解决方法由于Hbase只有二进制比较器而不是其他“类型”比较器,因此无法对负整数进行过滤,因为它存储了负数的2.此外,负2的补码整数的二进制表示将在最大正数之后按字典顺序排列,这就是它不起作用的原因.解决方法是更改数字的有符号位.事后工作正常.请注意,这仅适用于整数而不适用于浮点类型. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 为什么Java声称在涉及有界泛型时有2个声明的方法?
- SHA2密码哈希在java中
- java – 我们将Servlet放在Tomcat的目录结构中?
- Spring动态多数据源配置实例Demo
- java – Spark Strutured Streaming自动将时间戳转换为本地
- java – 为spring boot中的静态资源设置setCachePeriod
- 基于Retrofit+Rxjava实现带进度显示的下载文件
- 我可以动态制作正在运行的Java Swing应用程序的视频吗?
- java反射获取一个object属性值代码解析
- java.time:DateTimeParseException for date“20150901023
