hbase2.1.x 保存数据原则(一般转成字符串保存)

保存数据原则

在 hbase 中,一般都转成 字符串,然后再保存

数值字段的处理

类似 价格、年龄 这类数字,也是转成 字符串,这样更便于处理

如果通过程序,保存 int型、double型 数据,在查询时,需额外处理,否则显示乱码。
即使做额外处理,也是显示成 科学计数法,不方便看

详见

hbase shell中保存数字

在 hbase shell 环境下,保存 数值型 数据,会默认 转成 字符串

过滤 字符串 的问题

转成字符串后,字符串进行过滤时,会发生错乱,如下:

10
1000
20

字符串 1000 在 10 和 20 之间,所以过滤 10-20 之间的数据,就会把 1000 查询出来

解决

前面补 0,转成 定长 的,再保存,这样便于 过滤

如:

  • 普通商品价格:000087.50

  • 人类年龄:021

例子

长度相同,在过滤就不会出现问题,如下:

0010
0020
1000

1000 排在最后面


原文出处:/show_1IX1x6ECLefe.html