我正在尝试使用以下架构找到具有相似兴趣的用户..
USERS - ID name etc
Interests - ID UID PID
其中 ID 是兴趣的唯一 ID,UIS 是用户 ID,PID 是产品 ID。我在 SO 上看过其他类似的问题,但没有一个有确切的答案。
示例-假设我有兴趣吸引与 John 有相似兴趣的用户,这就是两个表的样子......
ID Name
11 John
12 Mary
13 Scott
14 Tim
ID UID PID
3 12 123
4 12 231
5 12 612
6 13 123
7 13 612
8 14 931
9 14 214
10 11 123
11 11 231
12 11 781
13 11 612
我想要一个按这个顺序的结果。
我正在考虑对我感兴趣的用户与所有其他用户进行一组交集。这听起来不是一个很好的解决方案,因为每次用户增加兴趣或添加另一个用户时都必须这样做。它是一个小项目,到目前为止我将用户限制为 100。我仍然认为上述方法根本不会有效,因为它需要 100 2时间。
有人可以指导我正确的方向吗?有哪些可能的解决方案,在上述给定的限制条件下,哪一个是最好的。我正在查看ANN,看看我是否可以使用它。