在 Elasticsearch 中,我想用两个与 OR 聚合的不同子句来过滤我的结果,例如,返回属性 A= 真或属性 B= true 的文档。
我一直在尝试使用布尔查询来实现这一点。我的基本查询只是must
中的文本搜索。如果我将这两个子句放在filter
出现类型中,它会用AND聚合它们。如果我将这两个子句放在should
出现类型中,并将minimum_should_match
1设置为1,那么我得到了正确的结果。但是,匹配这两个条件的文档得分较高,因为“应该”在查询上下文中运行。
如何过滤为仅匹配两个条件之一的文档,而不增加匹配两个条件的文档的分数?
提前谢谢
您需要利用< code>constant_score查询,这样一切都在过滤器上下文中运行:
{
"query": {
"constant_score": {
"filter": {
"bool": {
"minimum_should_match": 1,
"should": [
{
"term": {
"PropertyA": true
}
},
{
"term": {
"PropertyB": true
}
}
]
}
}
}
}
}
我正在处理一个简单的Docker映像,其中包含大量环境变量。你能像docker-compose一样导入环境变量文件吗?我在docker文件留档中找不到任何相关信息。 Dockerfile 我想重新表述这个问题的一个好方法是:如何在Dockerfile中高效地加载多个环境变量?如果无法加载文件,则无法将docker文件提交到GitHub。
问题内容: 我正在尝试将JSON数组拆分为多个事件。这是一个示例输入: 这是我的过滤器和输出配置: 这将产生2个事件,数组中的每个JSON都有一个。它接近我要寻找的东西: 问题是嵌套的“结果”部分。“结果”是目标参数的默认值。有没有一种方法可以使用拆分过滤器而不产生嵌套的JSON,并得到如下所示的结果: 目的是将其提供给ElasticSearch输出,每个事件都是带有document_id =>“
(Java版本8) 我需要在过滤器中处理请求正文。使用下面的代码,我读取了正文。 问题是如果请求正文发布的参数的内容类型为“Application/x-www-form-urlencoded”,那么这些参数在读取正文后将不可用。如果我不读取正文,它们可以使用request.getParameter()获取。 此外,我尝试使用以下代码包装请求并提供正文,这样解决方案的其余部分(例如servlet)就
问题内容: 我希望能够以不同于web.xml的方式修改/配置过滤器。这是2个过滤器的静态配置。我希望能够静态配置一个过滤器,并允许该过滤器加载其他过滤器。我只是想知道是否有人知道lib已有此功能。 使用Servlet API 2.5 我已经在Guice的GuiceFilter中完成了此操作,其中在运行时配置了过滤器。 问题答案: 只需执行与容器已完成的相同的工作即可。即,按照servlet过滤器所
问题内容: 当前,当我发出此SQL时,它将获得不同的用户名。 我有一些不同的用户名,它们代表组,例如。 我想将所有其他用户名(恰好是数字)分组为一个组,例如 我可以实现以下目标吗? 编辑:从答案修改的查询 问题答案: @bfavaretto很好(对他+1),但是如果您不了解前缀或前缀不同,则可以使用类似以下内容的方法:
我正在开发一个项目,由于DevOps的更改,突然需要重新连接到远程(使用新的URL)。我需要采取哪些步骤来移除旧的遥控器并与新的遥控器建立连接,而不会破坏未合并的分支? 我已尝试使用以下方法更新远程URL: 但在从主服务器获取时出现此错误: 我错过什么了吗? 作为背景,我以前使用的codecommitrepo已经更改为需要联邦访问。所以我想使用git remote codecommit(GRC)和