与直接按键获取操作相比,HBase 在按键获取范围时表现如何?

Posted

技术标签:

【中文标题】与直接按键获取操作相比,HBase 在按键获取范围时表现如何?【英文标题】:Comparing to a direct get by key operation, how does HBase perform when fetching a range by keys? 【发布时间】:2014-04-01 12:40:30 【问题描述】:

在 hbase 中,我可以执行两种基于 key 的数据检索:

按键获取 键范围扫描

在第一个场景中,我们知道 Hbase 对于“按键获取”执行事务的速度非常快。但是范围扫描呢?在我的场景中,我范围内的键都以一组共同的字节开头:

RNE8453MEREBWK0001
RNE8453MEREBWK0002
RNE8453MEREBWK0003
RNE8453MEREBWK0004

在上述情况下,我想在 RNE8453MEREBWK0000 - RNE8453MEREBWK9999 之间执行范围扫描。

上面的执行速度是否足够快?我知道 hbase 连续存储按键排序的数据,并且传输更多数据意味着简单 get 的交付速度较慢。但除此之外,还有其他关于性能的考虑吗?

【问题讨论】:

【参考方案1】:

是的。 HBase 扫描(没有过滤器)非常有效。对范围的扫描将胜过多次获取,因为 hBase 将减少 RPC 调用并大量获取记录

【讨论】:

以上是关于与直接按键获取操作相比,HBase 在按键获取范围时表现如何?的主要内容,如果未能解决你的问题,请参考以下文章