锁定老帖子 主题:从一道面试题想到的论坛数据库设计
精华帖 (7) :: 良好帖 (6) :: 新手帖 (10) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-04-09
最后修改:2009-04-09
jiangzhen1984 写道
wendong007 写道
这样的设计能用吗,你把数据查出来之后怎么确定那条数据是主题,哪些是回复呢,再遍历一次?还有就是你这样设计和分成两个表然后做单表查询的差别有多大,多一次查询也不会损失多大的性能吧,而且你这么设计的话,索引怎么建比较好呢,还有就是会不会造成这个表过热,还有……
我觉得如果真的负载很重,还是分表来的更实在些吧,另外,我同意猫咪的观点,像论坛这样的系统,使用缓存可以大大降低数据库的负载 再这么高插入更新的频率下 索引就有些不实用了,创建索引会降低插入更新的速度而且访问量这么大的情况下,索引不建议采用
谢谢指教,我考虑的是这么大的数据量放在一个表里面,而且又不建索引,效率会怎么样呢,或者说这个问题根本就没有考虑的必要,我觉得这个方案根本就不可行 |
|
返回顶楼 | |
发表时间:2009-04-09
我赞成jiangzhen1984
|
|
返回顶楼 | |
发表时间:2009-04-09
就单单这个论坛暂不考虑相关业务,只是实现简单的发帖和回帖,如果不采用传统数据库做存储呢?有没有其他的解决方案呢?如果有人用过别的方式存储的,可否说一下性能怎么样?
|
|
返回顶楼 | |
发表时间:2009-04-09
对于这道题我们更关注的是分析的思路,题目是虚设的,但面对问题采取的手段这个才是最重要的
|
|
返回顶楼 | |
发表时间:2009-04-09
不管这道题的真假
就这样的一个论坛,实时在更新、发帖、回帖。我觉得在数据库上建立索引不太好,但是如果不建立索引如何来提高查询等方面性能呢? |
|
返回顶楼 | |
发表时间:2009-04-09
最后修改:2009-04-09
tangmi 写道
不管这道题的真假
就这样的一个论坛,实时在更新、发帖、回帖。我觉得在数据库上建立索引不太好,但是如果不建立索引如何来提高查询等方面性能呢?
分表 分库 缓存 |
|
返回顶楼 | |
发表时间:2009-04-09
这么大,都是分布式数据库了。
放在多个表中,直接关联一点都没问题。 重要是横向切分 |
|
返回顶楼 | |
发表时间:2009-04-09
最后修改:2009-04-09
wendong007 写道
tangmi 写道
不管这道题的真假
就这样的一个论坛,实时在更新、发帖、回帖。我觉得在数据库上建立索引不太好,但是如果不建立索引如何来提高查询等方面性能呢?
分表 分库 缓存 真正的解决方案我说不好,你可以去看看twitter的一篇文章 |
|
返回顶楼 | |
发表时间:2009-04-09
kunee 写道 这么大,都是分布式数据库了。
放在多个表中,直接关联一点都没问题。 重要是横向切分 说的在细点吧~~~ |
|
返回顶楼 | |
发表时间:2009-04-09
whaosoft 写道 kunee 写道 这么大,都是分布式数据库了。
放在多个表中,直接关联一点都没问题。 重要是横向切分 说的在细点吧~~~ 这个说来话长了,简单点说就是 某一部分用户存在A库,另一部分存在B库,每个库只存放一定数量的用户,这样用户的增长可以很方便扩展便宜硬件。 需要做集成数据再从各个库里面抽,大型网站都是这样的(除了银行这种BT有钱的单位可能是统一处理) |
|
返回顶楼 | |