我该如何配置HBase,使扫描器一次只能检索多个记录?或者当数据库包含大量记录时,我该如何改进扫描仪/如何改进HBase扫描仪?
5
A
回答
10
我相信扫描仪只会实际上一次请求一个项目,除非您设置了缓存。您可以使用getCaching()来检查,以确保每次调用ResultScanner#next()时,它都会检索下一个项目。您也可以使用ResultScanner#next(int)来一次检索多个结果。
当设置您可以使用扫描#setCaching提前检索结果扫描器 http://hadoop.apache.org/hbase/docs/r0.20.4/api/org/apache/hadoop/hbase/client/Scan.html#setCaching(int)
的机会是你的扫描仪是缓慢的,因为你只是读取一条记录时间(包括所有回以及RPC协议和其他)。所以如果你打算大量阅读,请让系统提前为你缓存一些结果。
4
您可能还需要检查筛选器API,该筛选器API允许您选择性地将一部分行或单元格返回给客户端:http://hadoop.apache.org/hbase/docs/current/api/org/apache/hadoop/hbase/filter/package-summary.html。
0
您可以使用scan.setMaxResultSize
来控制每次从HBase
检索到的记录。 (这并不意味着,你从中得到的查询更少结果)
如果要限制像SQL select top 100 from TABLE;
结果你需要使用一个PageFilter
^_^
相关问题
- 1. 如何扫描声纳扫描仪
- 2. 扫描仪内的扫描仪错误
- 3. 扫描,扫描仪类
- 4. 如何使用扫描仪
- 5. 如何使用扫描仪
- 6. 如何停止扫描仪?
- 7. 如何使用扫描仪
- 8. 扫描仪+ TesterClass?
- 9. JFileChooser扫描仪?
- 10. 扫描仪NoSuchElementException
- 11. 与扫描仪
- 12. 与扫描仪
- 13. 扫描仪,useDelimiter
- 14. 由扫描仪
- 15. mapreduce,hbase和扫描
- 16. HBase行内扫描
- 17. Hbase扫描超时
- 18. 如何在扫描仪扫描仪=新扫描仪(System.in)中指示参数;在Netbeans
- 19. 扫描仪不扫描我的输入
- 20. 使用扫描仪扫描txt文件
- 21. 使用扫描仪扫描Java输入
- 22. 扫描20次的Wifi扫描仪
- 23. 如何做HBase部分扫描?
- 24. 如何扫描HBase的数值范围
- 25. 如何有效地扫描HBase行
- 26. 如何做hbase范围扫描?
- 27. 如何跳过Hbase扫描中的行?
- 28. 春扫描仪豆
- 29. 扫描仪类 - hasNextDouble()
- 30. PHP类扫描仪
下面的网址也是过滤器有帮助: http://hbase.apache.org/book/client.filter.html – David 2012-04-06 23:40:03