Heim >Backend-Entwicklung >PHP-Tutorial >请问一个分表优化方案

请问一个分表优化方案

WBOY
WBOYOriginal
2016-06-13 09:59:52871Durchsuche

请教一个分表优化方案
系统有多个模型,每个不同模型的栏目下有多个表,例如:

新闻模型news
栏目1 对应主表为 data1_1、data1_2、.... 附加表为 fujia1_1、fujia1_2、...
栏目2 对应主表为 data2_1、data2_2、.... 附加表为 fujia2_1、fujia2_2、...


图片模型image
栏目3 对应主表为 data3_1、data3_2、.... 附加表为 fujia3_1、fujia3_2、...
栏目4 对应主表为 data4_1、data4_2、.... 附加表为 fujia4_1、fujia4_2、...

注:栏目表的主表和附加表分别以20W数据自增新表

现在假如想统计该栏目or模型本月本周或者总浏览次数之类的东西,或者随机十篇文章,如果循环该模型或者栏目多个表来排序,消耗肯定大的. 我想再建一个模型文章数据表,全放数字类型字段例如:

news模型
文章ID 栏目ID 会员ID 总浏览次数 月浏览次数 周浏览次数 ...


如果我这样做的话,调用点击前十名的文章也得两个表查10次,前面栏目分表是否多此一举? 但不这样的话,数据大放一个表中,很慢. 例如dedecms刚到10w数据,生成就卡得要死.
下了个帝国看了下他的表结构(据说他就是这样分表的),但貌似他没有多出第三个表来统计, 不知道他如何处理数据优化的呢,还没去研究。。


不知道各位前辈有什么好的建议或者意见思路吗?在此先谢了。

------解决方案--------------------
前面栏目分表是什么原则分的?
------解决方案--------------------
我首先想到的是 视图

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn