我有一个关于在数据库中存储关系的一般性问题。
让我们举一个社会例子:追随者。我想存储朋友 A (id 1) 正在关注朋友 B (id 5)。
我用数据库中的多对多关系来做到这一点。
插入:
table flw (friend,following,relation_id): (1,5,1)
所以我们继续……与朋友 A、B、C、D 的一百万个关系,……
现在我的问题是,当我需要获取朋友 A(或 B、C、...)关注的所有关系时......它需要获得数百万条记录。这仍然有效吗?我无法想象 facebook 通过十亿行来获取我的朋友列表。
解决方案可能是使用多个数据库。但是,这是(数百万个多对多关系)存储我的示例中的内容的(唯一)正确方法吗?