nginx_access索引是用来存储nginx访问日志,随着时间的积累,这个索引占用的磁盘空间多达100G,导致服务器磁盘资源紧张。
通过API删除了几百万条文档数据,索引占用的磁盘空间没有释放。
有没有什么好办法,能删除索引的旧文档的时候能释放磁盘空间?
POST /nginx_access/_delete_by_query?wait_for_completion=true
{
"query": {
"bool": {
"filter": [
{
"range": {
"time_local": {
"lt": "2021-11-10T23:59:59.999Z"
}
}
}
]
}
},
"sort": {
"time_local": "desc"
}
}
用delete by query删除的时候会先做个标记,下次merge时会把带有删除标记的doc删除。
可以在删除后接一个forcemerge https://www.elastic.co/guide/...