Elasticsearch中的设置refresh_interval

在 Elasticsearch 中,refresh_interval 是一个 索引级别 的设置,用于控制 从内存缓冲区把新增/更新的文档刷到文件系统缓存(使其可搜索)的频率


🔍 一句话解释

它决定了 多久把"刚写入的数据"变成"立即可搜索的数据"


⚙️ 默认值

复制代码
"refresh_interval": "1s"
  • 默认每 1秒 执行一次 refresh。

  • 也就是说,默认情况下,新写入的文档最多延迟1秒就能被搜索到


🧪 参数说明

含义
"1s" 每1秒刷新一次(默认)
"30s" 每30秒刷新一次,降低I/O,提升写入吞吐量
"-1" 禁用自动刷新 ,需要手动调用 POST /my_index/_refresh 才能搜索到新数据

🧰 设置方法

创建索引时设置:
复制代码
PUT /my_index
{
  "settings": {
    "refresh_interval": "30s"
  }
}
动态修改(无需重启):
复制代码
PUT /my_index/_settings
{
  "refresh_interval": "30s"
}

✅ 使用场景建议

场景 推荐值 原因
实时搜索要求高(如电商搜索) "1s" 或更短 保证数据可见性
日志/批处理写入 "30s" 或更长 减少I/O,提升写入性能
大批量导入数据(如重建索引) 设置为 "-1",导入完成后手动 refresh 最大化写入吞吐量

🧠 小提示

  • 调大 refresh_interval 可以显著提升 bulk 写入速度,但会牺牲"实时性"。

  • 如果你在做 全量重建索引大批量导入 ,建议临时设置为 "-1",导入完再改回来。

相关推荐
Elastic 中国社区官方博客15 小时前
Elasticsearch:使用 AI Agent 来创建 workflow
大数据·运维·人工智能·elasticsearch·搜索引擎·自动化·全文检索
阿里云大数据AI技术16 小时前
AI Search+ES 9.4.X最佳实践:“更快、更准、更安全的企业级搜索引擎”"为AI Agent提供坚实底座”
人工智能·elasticsearch·agent
Elasticsearch19 小时前
Elastic 社区通讯 — 2026 年 8 月
elasticsearch
lsh曙光20 小时前
ES数据备份与恢复
大数据·elasticsearch·搜索引擎
Shawn Dev1 天前
MySQL Binlog 数据误删除恢复完全指南
数据库·mysql·elasticsearch
Elastic 中国社区官方博客1 天前
用两行 JSON 替换你的 ILM 策略:数据流生命周期新增冻结层支持
大数据·运维·elasticsearch·搜索引擎·架构·全文检索
小张同学a.1 天前
ELK企业级日志分析平台3——ES数据备份 & 集群监控 & ELFK+Kafka 架构部署
linux·运维·elk·elasticsearch·架构·kafka·filebeat
lsh曙光2 天前
ELK日志平台--elasticsearch部署
elasticsearch
Elasticsearch2 天前
训练量仅占 0.35%,竞争力却达到 100%:jina-embeddings-v5-omni 背后的冻结塔架构
elasticsearch
扶苏10022 天前
同一个 Git 项目整出两份,切分支互不影响?两种方案实测
大数据·git·elasticsearch