wiki数据库表

现在涉及到构建后台数据库表,问题是这样的,有上千个词条,每个词条有上百个历史版本,而且可能涉及到不定期的增加历史版本的问题。怎么构建可以灵活支持以后插入新的数据就成为了一个问题。
1、最简单的想法就是把数据写在一个表中:
列:page_id(词条的id)、revision_id(词条版本的id)、text(词条的内容)
但是这样的话,表太大,现在我抓取了截止到2011年4月19号的所有英文高质量词条,共3251个。每个词条有500个历史记录(我现在想的是,500个记录会不会太多,主要是我后面分析数据的时候难度可能会增加,所以我准备减少到200个记录,最后看实验结果了。。。唉。)

2、分表,每500个词条在一个表中。
列:page_id(词条的id)、revision_id(词条版本的id)、text(词条的内容)
与第一个没什么区别,就是把大表搞小了而已

3、今天看了看wiki本身的数据库表的设计。。它的数据比我做实验的要大多了,数据库表中的关系也要复杂多了。不过也挺有收获的,最后决定我的数据库表的采用和它一致的方法。只是我的简单多了。。只涉及三个表。
(1)表page
列:page_id(词条的id)、page_name(词条的名称)
(2)表revision
列:revision_page(词条的id)、rev_text_id(词条历史版本的id)、rev_user(词条历史版本的作者)
(3)表text
列:text_id(词条历史版本的id)、text(历史记录)
----------------------------------------------------------------------------------
当然这只是表设计的一部分。表中的列没有写全。主要是记录设计的思想。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值