我目前正在使用用Java编写的本机脚本来基于各种形式的访问控制来过滤搜索结果。问题是访问控制验证每个记录花费了大量的时间。我们可以通过一些方法进行一些改进,但我们提出了一种可以大大改善它的解决方法。唯一的问题是,我不确定我是否可以按照自己的方式去做。
解决方案:在找到相关数量的结果后,我需要停止评估访问控制。
问题:我无法弄清楚如何从脚本中访问偏移量和页面大小(此时实现AbstractSearchScript)以确定何时达到最小结果。有没有人知道如何获得这些数据"正确"不将它作为脚本的单独参数?
奖励:我需要返回一些接近或大于实际命中数的点击数。由于elasticsearch不会缓存查询结果,因此我可以通过简单地为每个结果返回true来解决问题。但是我想在谷歌附近找到一个解决方案,根据到目前为止数据的百分比,我会返回一些剩余的结果。但是,为了做到这一点(并避免潜在的复杂性),我想直接修改命中数据。有没有办法从脚本中做到这一点?
答案 0 :(得分:0)
您应该使用" terminate_after" ES 1.4中引入的参数,而不是试图自己实现它。
对于你的"奖金,"我会在没有ACL的情况下再次运行查询。