我是天乙社区的作者,我以前在网易工作,我可以告诉你,网易论坛的数据结构与天乙社区6.0基本一样,方法是一定数量的结构相同的论坛表,程序根据版区id,通过算法插入某一个表,这样数据就基本被平均分配到了这些表中,这个实现方法的最大有点是容量大,数据性能好,如果有100万贴,10张论坛表,则这100万数据分到10张表后,每个表也就是10万数据,我在网易时使用了大概100张表,帖子正文是被保存为文本的,基本满足了论坛的数据需求,但这个做法也有个最大的缺陷就是对这个论坛数据的搜索,由于表都是分开的,有些功能会受到限制。 天乙社区7.0之后,没有采用这样拆表的做法,而是定期将历史数据转移至历史表,比如3个月的数据(天乙社区7是90天),这样论坛主表的数据大大减少,效率上可以得到保证,而且对于大型论坛,3个月以前的数据被查询的情况非常少,对于历史数据,再过一段时间可以完全转成HTML的静态页面。 总体来说一个大型论坛系统的构架还是有很多细节之处可以控制,天乙社区也是一个可以集群运行的系统,但总的来说瓶颈容易出现在数据库的地方,如果使用Oracle数据库,则千万的数量级没有什么问题。
大型论坛数据库表该如何设计
上一篇:6600的出厂密码忘记怎么办 下一篇:硬盘分区计算方法
