Elasticsearch(ES)“丢数据”通常不是真的凭空消失,而是写入未生效 / 副本不一致 / 集群异常 / 配置或使用方式问题导致的。下面按最常见原因 → 原理 → 解决建议来说明。
async / fire and forget 写入index.refresh_interval 很大✅ 表现:
✅ 解决:
errors: truefailed 项"wait_for_active_shards": "all"
write → memory buffer → refresh → 可被搜索
refresh_interval = 1s✅ 表现:
✅ 解决:
?refresh=true
可能原因:
wait_for_active_shards 设置过低✅ 表现:
✅ 解决:
PUT /index/_settings
{
"index.number_of_replicas": 1
}
写入时:
?wait_for_active_shards=2
常见原因:
watermark)✅ 查看:
GET _cat/shards?v
GET _cluster/allocation/explain
✅ 解决:
PUT /index/_doc/id 覆盖_bulk 中 action 写错✅ 建议:
_update_create / index 语义delete phase✅ 检查:
GET _ilm/policy
index.translog.durability=async✅ 解决:
"index.translog.durability": "request"
ignore_malformed✅ 表现:
如果你能补充:
我可以帮你精准定位是哪一类原因。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。