Elasticsearch效能優化引數註解

chenfeng發表於2018-01-05
ES優化主要涉及以下一些引數,每個引數設定建議和解釋如下:

  node.master: false   (是否作為主節點,每個節點都可以被配置成為主節點,預設值為true,不建議兩節點都配置為true,容易產生腦裂)
  node.data: true      (是否儲存資料,即儲存索引片段,預設值為true)
  index.number_of_shards: 3    (每一個索引分的分片數量,擁有更多的shard可以提升索引執行能力,並允許通過機器分發一個大型的索引)
  index.number_of_replicas: 2  (每個分片設定的副本數量,擁有更多的副本能夠提升搜尋執行能力以及叢集能力,一個分片可以設定多個副本)
  index.analysis.analyzer.default.type: index_ansj  (設定預設分詞器)
  index.analysis.analyzer.default_search.type: query_ansj  (設定預設分詞器查詢)
  index.unassigned.node_left.delayed_timeout: 5m  (等待一個超時設定的時間,如果丟失節點回來就可以立即恢復)

  bootstrap.memory_lock: true   (設定為true來鎖住記憶體。因為當jvm開始swapping時es的效率會降低,所以要保證它不swap)
備註:設定bootstrap.memory_lock需要修改/etc/profile,加入如下值
#vi /etc/profile
ulimit -l unlimited
命令列執行臨時生效命令: # ulimit -l unlimited
  index.refresh_interval: 30s  (索引速率與搜尋實時直接的平衡)
  index.translog.flush_threshold_ops: 1000000    (事務日誌的重新整理間隔,適當增大可降低磁碟IO)
  index.translog.durability: async    (設定是否可以非同步寫硬碟,增大寫的速度)
  index.merge.policy.floor_segment: 100mb   (設定可以防止很小的segment的頻繁flush,同時避免索引中的長尾問題。預設是2M)
  index.merge.scheduler.max_thread_count: 1  (索引merge最大執行緒數)
  index.merge.policy.min_merge_size: 10mb    (設定分段的最低階別的下限值)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2149753/,如需轉載,請註明出處,否則將追究法律責任。

相關文章