es优化-翻译
使用bulk request
使用 multi threads/workers
调低或者临时关闭refresh_interval
指定routing的方式,減少thread的數量
临时不设置replica
禁用swap
確保filesystem有足夠的memory cache
使用es自动生成的id
使用更快速的存储
增大indexing buffer
使用cross-cluster replication,防止search影响index的吞吐
调整translog flush设置,減少 disk i/o
禁用你不需要的特性
不要使用默认的动态字符串mappings
监控分片的大小
禁用_source
使用best_compression
force merge
shrink index
使用最小够用的数字类型
index sorting可以提高压缩比
fields顺序相同,提高压缩比
rollup 历史数据
使用 Hot Warm Cold Architecture来分配合适的存储
確保filesystem有足夠的memory cache
使用更快的存储
避免使用join,nested,parent-child,fuzzy,regex等
搜索仅需要的field
pre-index数据
考虑mapping identifiers为keyword
避免使用scripts
日期查询时候,取整
对于只读索引,进行force merge
將 filter 條件切割來提高 Cache 利用率
预热Global ordinals
预热filesystem cache
使用index sorting可以加速conjunctions
使用preference优化缓存利用
replica不是越多越好
使用专用的节点作为coordinating node
对于相关系打分无关的查询使用filter
创建分片策略
在一个分片上搜索运行在一个thread上
每个分片有开销,不是越多越好
es自动在data tier中均衡分片
删除索引而不是文档
针对时序数据使用data streams和ilm
分片大小在10G-50G之间
每GB堆内存最多20个分片
避免热点节点
创建基于时间的索引,覆盖很长的时间段
删除空或者不需要的索引
非高分时刻执行force merge
shrink存在的索引减少分片
使用reindex合并小分片
上一篇
下一篇