HBase 写入数据的一个坑

HBase 是没有数据类型的,全部以字节数组形式存储。

错误代码

int value = 0;
// int 类型会被转换为 ASCII 码后存入字节数组 ['48'],实际存储的是 48
put.addColumn(FAMILY, Bytes.toBytes("value"), Bytes.toBytes(value));

正确代码

// 先转换为字符串 "0",再转换为字节数组 ['0'],实际存储的是 0
put.addColumn(FAMILY, Bytes.toBytes("value"), Bytes.toBytes(String.valueOf(value)));

经验教训

String 类型的数据,都需要先转换为字符串,再转换为字节数组。

posted @ 2022-06-04 10:07  ageovb  阅读(101)  评论(0编辑  收藏  举报