gpt4 book ai didi

elasticsearch - 在SOLR或Elasticsearch中排除记录的好方法

转载 作者:行者123 更新时间:2023-12-03 01:46:19 25 4
gpt4 key购买 nike

对于婚介门户网站,我们有一个要求,即如果客户查看了新娘或新郎的完整文件详细信息,则我们必须从进一步的搜索结果中排除该文件。当前,连同其他详细信息,我们正在将查看的个人资料ID存储在该新娘或新郎详细信息的字段(逗号分隔)中。

例如,如果A查看了B,那么在B的记录saw_me下的字段中,我们将添加A(逗号分隔)。

在搜索时,假设当前搜索的成员(member)ID为123456,那么我们将触发一个查询,例如

从配置文件详细信息中选择*,其中(OTHER CON)和123456不在saw_me中;

这里的问题是saw_me字段值正以任何形式增长,是否有更好的方法来处理此要求?请指导。

最佳答案

如果使用的是Solr:

  • 首先,不要在q参数中添加'AND NOT ...'子句以及主查询,而是将它们添加到fq中。这有很多好处(fq将被缓存)
  • 在获得可能为1000的值列表之前,此方法很简单,应该可以正常工作
  • 到达列表很大的位置后,也许是时候该迁移到成本较高的post filter了(因此最后查找它)。这将查找要从外部源(redis,db ...)中删除的文档。
  • 关于elasticsearch - 在SOLR或Elasticsearch中排除记录的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43673321/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com