Database Facebook(或者你将如何)如何划分一个庞大的好友数据库?

Database Facebook(或者你将如何)如何划分一个庞大的好友数据库?,database,Database,如果一个朋友可以成为任何人的朋友,你会如何储存100亿个朋友?最简单的解决方案是创建一个数据库,一个名为Person的表,并在Person和Person之间创建多对多关联 但这不能适当地扩展。这些数据需要在世界各地的许多数据库之间进行分区,以便能够正确地分配负载 作为一名刚刚接触数据库开发的软件开发人员,我很好奇SO社区将如何解决这个问题。他们可能不使用关系数据库来存储这些信息。它更可能是NoSQL的某种味道,可能是一种味道 有可能会有博客(来自facebook或第三方)讨论它是如何实现的——以

如果一个朋友可以成为任何人的朋友,你会如何储存100亿个朋友?最简单的解决方案是创建一个数据库,一个名为Person的表,并在Person和Person之间创建多对多关联

但这不能适当地扩展。这些数据需要在世界各地的许多数据库之间进行分区,以便能够正确地分配负载


作为一名刚刚接触数据库开发的软件开发人员,我很好奇SO社区将如何解决这个问题。

他们可能不使用关系数据库来存储这些信息。它更可能是NoSQL的某种味道,可能是一种味道


有可能会有博客(来自facebook或第三方)讨论它是如何实现的——以上只是我自己基于对这些类型数据存储的基本理解所做的推测。

围绕这个问题有一个完整的科学领域:-)就我个人而言,我喜欢这个网站。他们经常探索这个问题,并发表关于facebook、twitter、大量鱼类和其他拥有大型数据库的高流量网站的白皮书。最后,它实际上是软件和硬件体系结构的结合。+1有趣的问题此视频简要介绍了图形数据库如何解决我给定的问题: