我目前正在使用用 Java 编写的本机脚本来根据各种形式的访问控制过滤搜索结果。问题是访问控制验证每条记录都需要大量的时间。有一些方法我们可以有所改进,但我们想出了一个解决方法,可以大大改进它。唯一的问题是我不确定我是否可以按照我想要的方式去做。
解决方案:在找到相关数量的结果后,我需要停止评估访问控制。
问题:我无法弄清楚如何从脚本中访问偏移量和页面大小(目前正在实现 AbstractSearchScript),以便决定何时达到我的最小结果。有谁知道如何“正确”获取这些数据而不使其成为脚本的单独参数?
奖励:我需要返回接近或大于实际点击数的点击数。由于 elasticsearch 不缓存查询的结果,我可以通过简单地为超过相关结果的每个结果返回 true 来解决这个问题。但我想开发一个更接近谷歌的解决方案,我会根据迄今为止命中的数据百分比返回一些剩余的结果。但是,要做到这一点(并避免潜在的并发症),我只想直接修改命中数据。有没有办法从脚本中做到这一点?