所以我需要一个可以为大约 3 亿用户存储信息的数据库。每个用户将有两个向量:他们最喜欢的 5 个项目,以及他们最相似的 5 个用户(这些用户也包含在用户集中)
前任:
preferences users
user | item user | user
-------------- --------------
user1 | item1 user1 | user2
user1 | item2 user1 | user4
user1 | item3 user2 | user8
user2 | item3 . . .
user2 | item4
. . .
所以基本上我需要两张表,都是多对多的关系,而且都比较大。我一直在探索 cassandra(但我对其他解决方案持开放态度),我想知道我将如何定义架构,以及我需要什么类型的索引来优化和正常工作。
我需要以两种方式查询:
1.当然是用户,
2.他们列表中的任何项目。(所以我可以获得具有相同收藏项的用户列表)
我已经设置了 cassandra 并开始搞乱它,但我什至无法让列表工作,因为我需要“复合”主键?我不明白为什么。
非常感谢任何朝着正确方向的帮助/推动。
谢谢!