Php 对于此…,最好的数据库结构是什么

Php 对于此…,最好的数据库结构是什么,php,database,mysqli,database-design,Php,Database,Mysqli,Database Design,我正在努力寻找理解这一点的最佳方式: 假设我是Facebook的开发人员,我不得不重新设计Facebook的MySQL数据库(只关注他们的“活动”功能,在这里你可以看到你的朋友分享了什么)。存储状态消息,对这些消息的评论,喜欢,以及其他内容的最佳方式是什么,请记住,用户只能访问朋友的帖子。不是每个人的 有人能提出任何可能的处理方法吗。数据库结构或任何东西将不胜感激 在我忘记之前:我实际上正在进行一项研究(为了我在webdev中的个人成长)。我不打算为Facebook工作,也不打算创建一个新的Fa

我正在努力寻找理解这一点的最佳方式:

假设我是Facebook的开发人员,我不得不重新设计Facebook的MySQL数据库(只关注他们的“活动”功能,在这里你可以看到你的朋友分享了什么)。存储状态消息对这些消息的评论喜欢,以及其他内容的最佳方式是什么,请记住,用户只能访问朋友的帖子。不是每个人的

有人能提出任何可能的处理方法吗。数据库结构或任何东西将不胜感激


在我忘记之前:我实际上正在进行一项研究(为了我在webdev中的个人成长)。我不打算为Facebook工作,也不打算创建一个新的Facebook或诸如此类的东西。我只是想更深入地了解如何处理这种情况。如果大家都同意的话…:-)

这是一个相当主观的问题,但我会这样设置:

3个表:

状态信息

id (PK) | user_id (FK) | message | timestamp
id (PK) | status_id (FK) | user_id (FK) | comment | timestamp
id (PK) | status_id (FK) | user_id (FK) | timestamp
状态\u评论

id (PK) | user_id (FK) | message | timestamp
id (PK) | status_id (FK) | user_id (FK) | comment | timestamp
id (PK) | status_id (FK) | user_id (FK) | timestamp
地位\u喜欢

id (PK) | user_id (FK) | message | timestamp
id (PK) | status_id (FK) | user_id (FK) | comment | timestamp
id (PK) | status_id (FK) | user_id (FK) | timestamp
PK=主键 FK=外键

显然,这不是一个完整的解决方案,但您可以从结构中获得要点。
你还需要某种类型的成员/用户表,Facebook显然比我上面概述的要做得多,但上述内容足以实现一个非常简单的系统。

这是一个更适合感谢DaveRandom的问题。我将访问该网站。当我第一次读到这篇文章时,我想到了我的大多数客户:“让我成为一个应用程序。它应该像Facebook一样。不应该超过一周。”感谢您指出“主观”部分,并感谢您的贡献。在我违反更多规则之前,我将结束问题:-)