我正在开发类似于Tinder的应用程序。在ElasticSearch中,我收集了大约50万用户及其位置)。每当用户打开应用程序搜索附近的用户时,我都会在该集合上运行弹性搜索查询。查询相当复杂,它不仅考虑位置,还考虑了用户的活跃程度或他拥有多少照片。如何从弹性搜索查询中排除大量ID
我所苦恼的是如何排除当前用户已经从查询中滑过的用户。实现这一点的一种天真的方式可能是维护嵌套的用户ID数组作为索引中的每个用户文档的一部分,并基于此排除。但是,由于每个用户都会花费数十万次,因此这个阵列可能会超级大,所以它不是一个可扩展的解决方案。
有没有一种方法可以根据弹性搜索查询中的大量实体排除不会影响性能的ID?
哇,这看起来不错,谢谢! –
工程就像一个魅力!所以这两个答案都能够充分解决我的问题,但我选择这个答案作为正确的答案,因为它是一个更优雅的解决方案。非常感谢 –
为了未来人们的利益,很高兴看到解决方案在工作,它实现了术语查找机制。 – Val