提升ElasticSearch插入數據性能

  正常的真實環境es集羣都是有副本數的,若是在大量插入數據的狀況下面,副本拷貝其實會使插入速度變慢的,根據業務狀況,能夠考慮取消replias(複製分片),等數據插入結束之後再進行更新操做,設置複製分片。此方法可以使插入速度提升一倍,shard刷新間隔,以及多線程和es批插入均可以提升效率等等。多線程

一、設置複製分片數量 curl

curl -XPUT http://ip:9200/index/_settings -d '{ 
    "settings" : { 
        "number_of_replicas" : 0 
    } 
}' 
//數據插入結束,更新複製分片爲1
curl -XPUT http://ip:9200/index/_settings -d '{ 
    "settings" : { 
        "number_of_replicas" : 1 
    } 
}' url


二、減小shard刷新間隔線程


curl -XPUT http://ip:9200/index/_settings -d '{ 
    "index" : { 
        "refresh_interval" : "-1" 
    } 
}' 
//完成插入後再修改成初始值 
curl -XPUT http://ip:9200/index/_settings -d '{ 
    "index" : { 
        "refresh_interval" : "20s" 
    } 
}' ip

三、適當增大節點threadpool參數thread


curl -XPUT http://ip:9200/_cluster/settings -d '{"transient":{"threadpool.bulk.queue_size": 100000}}'效率

相關文章
相關標籤/搜索