Elasticsearch索引设计与调优
一、分片策略设计
1.分片容量规划
- 单分片容量建议30GB(日志场景可放宽至100GB),避免超大分片引发查询延迟。
- 分片总数计算公式:总数据量 / 30GB × 1.2(20%余量应对未来增长)。
- 主分片数创建后不可修改,副本分片数支持动态调整。
2.分片分布优化
PUT logs-2025
{
"settings": {
"number_of_shards": 5, // 主分片数
"number_of_replicas": 1 // 副本分片数
}
}
- 生产环境副本至少设为1,保障数据高可用。
- 使用shard allocation awareness策略,跨机架/可用区分布分片副本。
二、映射(Mapping)优化
1.静态映射管理
禁用动态映射("dynamic": "strict"