对于婚介门户网站,我们有一个要求,如果客户查看了新娘或新郎的完整个人资料详情,那么我们必须从其他搜索结果中排除该个人资料。目前,除了其他细节之外,我们还将查看的个人资料ID存储在一个字段(逗号分隔)中,以反映新娘或新郎的详细信息。
例如,如果A观察了B,那么在字段saw_me下的B记录中我们将添加A(以逗号分隔)。
在搜索时,假设当前搜索的成员ID为123456,那么我们将触发像
这样的查询从profiledetails中选择*其中(OTHER CON)和123456不在saw_me;
这里的问题是saw_me字段值正在增长,有没有更好的方法来处理这个要求?请指导。
答案 0 :(得分:1)
如果这是使用Solr:
答案 1 :(得分:0)
在我看来,无论saw_me字段增长多少,它都不会对搜索时间产生太大影响。因为标记是反向索引的,而doc_values是以列主要方式在索引时创建的,用于高效读取并支持缓存来自OS。
ES有效地为您处理这些事情。