Elasticsearch7.6.*寫入調優配置


寫的雖然是寫調優,除了一些index的設置外,其他平時都可以用...

安裝配置階段:

快速記錄,忽略格式..

1.調整內存占用.

 修改config/jvm.options里的默認1g增大.自己看情況改

# Xms represents the initial size of total heap space
# Xmx represents the maximum size of total heap space

-Xms4g
-Xmx4g

 

關於用到的垃圾回收器等等,分析gc日志前,建議先默認就可以里.默認也是配置CMS和G1這種高效的收集器.

2.在config/elasticsearch.yml添加一些設置.

當然也是要看自己情況選擇設置.

indices.memory.index_buffer_size: 40%
#寫入線程個數,這里還可以配其他讀查等,這也是老版本的bulk.size
thread_pool.write.size: 5
thread_pool.write.queue_size: 1000

  

3.修改服務器一些默認參數

要能啟動,機器上的一些默認限制會報錯.

  • vim /etc/security/limits.conf加:要切換用戶生效
* soft nofile 65536
* hard nofile 65536

  

  •  vim /etc/sysctl.conf 追加:
vm.max_map_count=655360

  需要執行sysctl -p生效.

  • 在ES的官方文檔上,要求Disabled Swapping

     執行swapoff -a

要永久的關閉swapping,需要編輯/etc/fstab文件,將包含swap的行的注釋掉。

/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=6a38540f-2ba9-437b-ac8b-8757f5754fff /boot                   xfs     defaults        0 0
# /dev/mapper/centos-swap swap                    swap    defaults        0 0
  • 線程數等,如果有需要,比如你設置的es線程數超過了系統設置.還要加這些.

4.動態調整index設置.

比如這里的寫入調優,可以把刷新時間設置為不刷新:

curl -H "Content-Type: application/json" -XPUT '127.0.0.1:9500/index_name/_settings' -d '{"index" : {"refresh_interval" : "-1" }}'

  

設置異步同步磁盤:

"index" : {"translog.durability":"async" }

#語法同第一條.就是加參數

  

還有磁盤刷新的間隔:

index.translog.sync_interval

  

5.批量插入

到這里配置信息基本上差不多了.批量插入時一定用bulk批量插入.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM