es 提升索引速度

791 阅读1分钟

以下建议的实操性较强,可拣选使用,具体前因后果可进入最后的官网连接查看。

  1. index.refresh_interval: 120s

  2. Indices.memory.index_buffer_size: 512MB Indices.memory.min_index_buffer_size: 256MB Indices.memory.max_index_buffer_size: 512MB

  3. 使用bulk 线程池,每个请求不超过 100 字节,最大线程池数量=CPU核心数+1,队列不宜太大,如果出现 429 TOO_MANY_REUQQUESTS 错误则延迟重试

  4. 索引时副本数量设置为 0 ,结束后恢复

  5. 建议使用自动生成的文档 id

  6. 调整 mapping 字段

  7. 在 ES 目录下有 jvm.option ,添加

     -Xms 10g
     -Xmx 10g
    

    注意:不超过 32 g,且不超过物理内存 50%

  8. 有实力就换更好的硬件,SSD 之类的

  9. 建议所在的主机给一半的机器内存用来运行 Elasticsearch,更好缓存 I/O 操作

参考:www.elastic.co/guide/en/el…