关于Solr索引性能优化
来源:互联网 发布:淘宝怎么延长收货十天 编辑:程序博客网 时间:2024/05/17 21:56
如何能在有限的服务器资源上较好的使用Solr服务,性能调优是必不可少的。鉴于个人经验,给出几条可调优方法:
1. 配置SolrConfig中的Directory, 不当的Directory会消耗大量的内存或IO资源,当索引规模变大时也很容易导致内存溢出,或索引维护的Map Failed现象!如何选择合适的Directory可参看《Lucene in Action》(第二版) Section2.10 中文本P52;
2. 配置Schema中的字段的 omitNorm= true, Norm中保存了大量的字段信息用于评分排序. 如果不是很必要的话可把omitNorm设置为true能够减少磁盘和内存的使用并加快索引速度,同时只用来索引而不需要显示的字段也可设置indexed=”true” stored=”false”, 具体Norm的作用可参见《Lucene in Action》(第二版) Section2.53 中文本P47;
3. 调整SolrConfig中的合并因子mergeFactor和内存触发机制setRAMBBufferSizeMB。mergeFactor越小,索引合并越频繁,索引段越少,同时,setRAMBBufferSizeMB越小,Writer更新的越频繁,索引段越多;《Lucene in Action》(第二版) Section11
4. 在索引阶段,不进行索引优化能够接受的话,就不进行索引优化optimize(),很耗时的一件事!但是在查询阶段,优化往往能够大幅度提高查询效率,因而如果可以,考虑周期性optimize()或optimize(maxNumSegments);《Lucene in Action》(第二版) Section11
注意:1. 在优化过程中,索引文件很容易占用超过自身文本大小10倍的硬盘空间,因而一定要考虑服务器的资源限制问题!《Lucene in Action》(第二版) Section11 中文本P355
2.字段中必留的三个: uniqueKey:id ,version, text
当然更多的性能调优方案要参考《Lucene in Action》(第二版) Section11 中文本P335, 文中给出很多细节的调优方案,例如如果财力支持的话请购买固态硬盘,哈哈。
推荐大家学Lucene还是去阅读Lucene in action, 看8月份manning出版社要出solr in action了,值得一读
优化任务任重而道远…
- 关于Solr索引性能优化
- MySQL性能优化-关于索引
- 浅谈Solr和ElasticSearch建索引性能优化策略
- 关于oracle索引的性能优化
- solr性能优化
- solr性能优化
- solr性能优化
- Solr 优化主关键字索引
- solr优化之增量索引
- 优化solr全量建索引,减少索引时间
- 索引性能优化实例
- MySQL性能优化---索引
- Mysql性能优化-索引
- 性能优化--表索引优化
- 优化solr全量建索引速度实践
- Solr Performance Factors(solr性能优化因素分析及配置)
- Solr Performance Factors(solr性能优化因素分析及配置)
- oracle性能优化之索引
- editplus编译执行java的配置方法
- 初步学习
- C++ 模版类使用 默认参数 和 c++的模板继承
- sql-exists与in的区别
- 线程间共享数据的一个例子
- 关于Solr索引性能优化
- pdf格式的文档用什么软件可以打开
- 宏基Acer笔记本预装win8系统换成win7系统安装教程
- Java 变量名不是引用本身
- java 调用webservice
- 记录片
- hadoop学习-mahout-Bayes分类算法示例程序
- JobTracker,TaskTracker简述
- NSString深浅复制的见解