文档首页/ MapReduce服务 MRS/ 组件操作指南(安卡拉区域)/ 使用HBase/ HBase常见问题/ 使用HBase bulkload导入数据成功,执行相同的查询时却可能返回不同的结果
更新时间:2024-11-29 GMT+08:00

使用HBase bulkload导入数据成功,执行相同的查询时却可能返回不同的结果

问题

在使用HBase bulkload导入数据时,如果导入的数据存在相同的rowkey值,数据可以导入成功,但是执行相同的查询时可能返回不同的结果。

回答

正常情况下,相同rowkey值的数据加载到HBase是有先后顺序的,HBase以最近的时间戳的数据为最新数据,一般的默认查询中,没有指定时间戳的,就会对相同rowkey值的数据仅返回最新数据。

使用bulkload加载数据,由于数据在内存中处理生成HFile,速度是很快的,很可能出现相同rowkey值的数据具有相同时间戳,从而造成查询结果混乱的情况。

建议在建表和数据加载时,设计好rowkey值,尽量避免在同一个数据文件中存在相同rowkey值的情况。