
正文
hbasefilter全文检索,检索hbase中的数据行可采用row key
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
突破性能瓶颈!ElasticSearch百亿级数据检索优化案例
默认情况下 routing参数是文档ID (murmurhash3),可通过 URL中的 _routing 参数指定数据分布在同一个分片中,index和search的时候都需要一致才能找到数据,如果能明确根据_routing进行数据分区,则可减少分片的检索工作,以提高性能。
索引优化主要是在 Elasticsearch 插入层面优化,如果瓶颈不在这块,而是在产生数据部分,比如 DB 或者 Hadoop 上,那么优化方向就需要改变下。
写入Lucene 的数据,并不是实时可搜索的,ES 必须通过 refresh 的过程把内存中的数据转换成 Lucene 的完整 segment 后,才可以被搜索。 默认1秒后,写入的数据可以很快被查询到,但势必会产生大量的 segment,检索性能会受到影响。
虽然ES 对 gateway 使用 NFS,iscsi 等共享存储的方式极力反对,但是对于较大量级的索引的副本数据,ES 从 5 版本开始,还是提供了一种节约成本又不特别影响性能的方式:影子副本(shadow replica)。
权衡建索引的性能和检索的时效性,修改以下参数。倒排词典的索引需要常驻内存,无法GC,需要监控data node上segment memory增长趋势。定期对不再更新的索引做optimize (ES0以后更改为force merge api)。
关于hbasefilter全文检索和检索hbase中的数据行可采用row key的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







