相关疑难解决方法(0)

Facebook数据库设计?

我一直想知道Facebook如何设计朋友< - >用户关系.

我认为用户表是这样的:

user_email PK
user_id PK
password 
Run Code Online (Sandbox Code Playgroud)

我用用户的数据(性别,年龄等通过用户电子邮件连接,我会假设)来计算表格.

它是如何将所有朋友连接到此用户的?

像这样的东西?

user_id
friend_id_1
friend_id_2
friend_id_3
friend_id_N 
Run Code Online (Sandbox Code Playgroud)

可能不是.因为用户数量未知并且将会扩展.

sql database-design facebook database-normalization database-table

130
推荐指数
10
解决办法
17万
查看次数

Facebook"喜欢"数据结构

我一直想知道facebook如何管理你可以"喜欢"的所有不同事物的数据库设计.如果只有一件事需要,这很简单,只是你喜欢的外键和你是谁的外键.

但是必须有数以百计的不同表格,你可以在Facebook上"喜欢".他们如何存储喜欢的东西?

database-design facebook facebook-like

27
推荐指数
1
解决办法
2万
查看次数

在Rails中实现通知

在我的申请中,我想在评论或帖子中提及他/她时通知用户.
用户句柄@user_name类似于Facebook.
提及的数据库表如下所示:

Mention
  mentioned_by: user_id (foreign key)
  user_mentioned: user_id (foreign key)
  comment_id: (foreign key)
  post_id: (foreign key)
Run Code Online (Sandbox Code Playgroud)

我无法想出实现它的方法.Facebook/Twitter如何做到这一点?

我决定使用的是使用ActiveRecord callbacks/ Observer design pattern,每当新的评论/帖子保存到数据库时,我都可以浏览帖子/评论的内容,并留意任何提及,然后根据需要执行通知.

我觉得有一些缺失的东西,我没有把它弄好.
这是最好的方式吗?

twitter notifications facebook ruby-on-rails observer-pattern

18
推荐指数
1
解决办法
7062
查看次数

Facebook wall的数据库结构

我需要像Facebook一样创建一个墙系统(用户可以发布消息,视频,图像,事件等).有没有人创造类似的东西?你怎么建议我准备数据库?

database-design facebook

13
推荐指数
1
解决办法
2万
查看次数

什么应该是Facebook DB设计

我只是想知道facebook可以发布多少个db查询来呈现用户的主页.有没有人对facebook DB的设计有所了解.我听说它运行MySql并且有数千个副本以及比DB服务器更多的内存缓存服务器.

facebook数据是否被shard-ed?

如果是,它会转到每个分片并搜索我朋友的最新更新.在最坏的情况下,如果我有100个朋友,并假设facebook有101个分片,那么我的朋友可能会使用不同的分片.facebook怎么可能处理这个?

我会非常感激,如果有人能提供我SEOM提示或指针朝着类似"如何设计社交网站一个DB".我只是好奇!

database architecture database-design facebook social-networking

7
推荐指数
2
解决办法
7244
查看次数