浅谈Solr和ElasticSearch建索引性能优化策略
生活随笔
收集整理的這篇文章主要介紹了
浅谈Solr和ElasticSearch建索引性能优化策略
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
?由于Solr和ElasticSearch都是基于Lucene構建的,所以他們之間有很大程度的相似性,故而他們的一些優化策略基本也是通用的,面對越來越多的海量數據,如何優化全量索引的寫入性能呢? 散仙簡單總結了下面幾個方向的優化策略,如有疑問,歡迎拍磚。?
(一)硬件優化:?
(1)CPU加大,有利于并發寫入?
(2)內存提升,加大寫入緩沖?
(3)磁盤IO,使用SSD或者IO讀寫更快的磁盤?
(4)網絡IO,保證客戶端與服務端的通信帶寬充足?
(二)服務端框架優化:?
(1)加大shard的數目,理論上shard越多,寫入速度越快?
(2)設置較大的索引flush觸發條件,ramBufferSizeMB 或者 maxBufferedDocs?
(3)寫索引時,關閉副本,因為同步索引會大大降低寫入速度?
(4)監控GC,調整JVM參數?
如果Full GC頻繁,加大JVM堆內存,?
如果Yong GC頻繁,加大新生代的比例,如果使用的是CMS垃圾收集器,必要時,可以關閉survive區,避免survive區和Eden區來回拷貝?
(5)盡量使用穩定的新版本如JDK和框架本身?
(6)內存大的,可以嘗試G1垃圾收集器?
(三) 客戶端優化?
(1)如果公司有大數據部門,可以使用Hadoop或者Spark分布式集群構建索引?
(2)如果公司沒有大數據產品,可以使用多線程或者多進程并行構建索引?
(3)使用批量提交?
(4)減少commit次數,讓服務端控制flush索引,索引完成之后,可手動commit一次。?
有什么問題可以掃碼關注微信公眾號:我是攻城師(woshigcs),在后臺留言咨詢。?
技術債不能欠,健康債更不能欠, 求道之路,我們同行。?
轉載于:https://my.oschina.net/u/1027043/blog/667172
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的浅谈Solr和ElasticSearch建索引性能优化策略的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: thymeleaf模板引擎shiro集成
- 下一篇: 网站第三方评论对比