给定一个短语匹配查询,如下所示:
{
'match_phrase': {
'text.english': {
'query': "The fox jumped over the wall",
'phrase_slop': 4,
}
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法可以通过完全匹配对结果进行分组?
因此,如果我有1个text.english
包含"快速狐狸跳过小墙"的文件和3个包含"懒狐狸跳过大墙"的文件,我最终得到了这两组结果.
我可以运行多个查询并在ES之外进行一些处理,但我需要一个能够在大量文档上合理执行的解决方案.理想情况下,我希望有一种方法可以使用我错过的聚合来做到这一点.
我提出的最佳解决方案是使用突出显示运行上面的查询,解析所有结果中的所有突出显示,并根据突出显示内容对它们进行分组.这适用于非常小的结果集,但是在1000多个文档结果集中,它非常慢.
编辑: 也许我可以让这一点更清楚.如果我有包含以下值的示例文档:
我想能够将我的结果分组如下,查询文字"狐狸跳过墙壁":
我正在使用PBKDF2,但这同样适用于BCrypt.
以合理的迭代次数散列密码可以轻松阻止0.5秒.什么是轻量级的方法来解决这个问题?我不愿意为此操作设置像Celery或Gearman这样的东西.