在您看来,Facebook如何计算共同的朋友?
是否为每个用户缓存了所有共同的朋友? 让MySQL通过查询计算? 对数据库进行查询然后计算列表? 其他?
答案 0 :(得分:2)
我相信它是预先计算的,并且在您加载页面时没有完成。 怎么样?有几个选项可以看看这个问题。 一种常见的方法是将数据视为图形,其中每个人都是顶点,边缘定义友谊。迭代每对现有的人,找到2条边路径。你过去的顶点是共同的朋友。如果你真的想进入它,我建议你先学习Graph Theory
在处理如此大量的数据时,使用MySql和查询将无法正常工作。对于少量数据,它会。