删除超过一小时的文档在弹性搜索中不起作用
Posted
技术标签:
【中文标题】删除超过一小时的文档在弹性搜索中不起作用【英文标题】:Delete document older than One hour is not working in elasticsearch 【发布时间】:2019-06-28 06:49:44 【问题描述】:我是 elasticsearch 新手,我在 elasticsearch 中有一个文档,文档包含大量用户视图,现在我想删除那些超过 3 小时的视图,为此我在 elasticsearch 中编写了以下查询
POST INDEX/_delete_by_query
"query":
"bool":
"must": [
"term":
"type": "box_views"
,
"query":
"range":
"@created_at":
"gte": "now-3h"
]
当我执行此查询时,我收到以下错误
“错误”: “根本原因”: [ “类型”:“解析异常”, "reason": "没有为 [query] 注册 [query]", “线”:1, “科尔”:66 ], “类型”:“解析异常”, "reason": "没有为 [query] 注册 [query]", “线”:1, “col”:66 ,“状态”:400
【问题讨论】:
【参考方案1】:您的查询应如下所示:
POST INDEX/_delete_by_query
"query":
"bool":
"must": [
"term":
"type": "box_views"
,
"range":
"@created_at":
"gte": "now-3h"
]
此外,如果您要查找较旧的文档,我认为您应该使用 lte
而不是 gte
。
【讨论】:
以上是关于删除超过一小时的文档在弹性搜索中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
cron作业中的Rails类方法在弹性beantalk中不起作用