2千万数据、17.3GB数据库用帝国CMS6.0分表合理存放 |
|
数据库总大小:17.3GB、总记录数:4千万零450条、信息数量:2千万条、单表最大信息数:400万条 | |
一、前言: | ||||||||||||||||||
下面我们就开始测试: |
||||||||||||||||||
二、测试环境 | ||||||||||||||||||
1、硬件配置:使用本人工作使用的机器测试,普通的配置 | ||||||||||||||||||
|
||||||||||||||||||
2、软件环境:使用无任何优化的帝国CMS6.0一键安装包 |
||||||||||||||||||
|
||||||||||||||||||
3、截图工具用PrintScreen屏幕截取+photoshop保存 | ||||||||||||||||||
4、网站存放数据栏目限制在12个 | ||||||||||||||||||
5、所有栏目都使用新闻系统模型 | ||||||||||||||||||
6、计算php页面时间代码: | ||||||||||||||||||
|
||||||||||||||||||
7、生成时间查看代码 | ||||||||||||||||||
|
||||||||||||||||||
三、分析2000万数据如何分配 | ||||||||||||||||||
|
||||||||||||||||||
1、首先我们可以用取平均值计算单个栏目存储的数据数量范围 | ||||||||||||||||||
20000000/12约等于1700000,所以每个栏目只要存储170万条数据就可以存下2000万数据。 | ||||||||||||||||||
2、根据我们的硬件环境条件我们可以计算出比较合理的单表大小范围 | ||||||||||||||||||
|
||||||||||||||||||
四、由于不知道多少数据使主表是在500~600MB范围,所以下面我们要用第一个新闻表来测试 | ||||||||||||||||||
说明:由于是第一次测试所以采用比较保守的增量:以每次插入50万数据测试并查看效果,直到达到最佳的内存范围。 | ||||||||||||||||||
测试项目:后台管理列表速度及翻页、修改信息速度、生成速度、动态内容页查看速度、查看数据库大小 | ||||||||||||||||||
(一)、第一次导入50万数据到news表: | ||||||||||||||||||
1、导入截图 | ||||||||||||||||||
2、后台管理信息列表速度 |
||||||||||||||||||
直接访问:0.0089秒 | ||||||||||||||||||
翻页:0.0091秒 | ||||||||||||||||||
3、修改信息页读取数据:0.0051秒 | ||||||||||||||||||
4、生成5000条数据 | ||||||||||||||||||
开始生成: | ||||||||||||||||||
生成过程截图: 5000条生成时间:18秒 生成后的栏目目录: |
||||||||||||||||||
5、测试在使用内容动态页的数据读取速度:0.0025秒 | ||||||||||||||||||
6、查看50万下数据库大小:50万信息,主表大小为67.7MB,第一个副表为370.8MB | ||||||||||||||||||
总结: | ||||||||||||||||||
说明:上面每个副表存储50万数据,其实通过整个2000万数据测试后发现副表存储100万数据效率也差不多。 |
||||||||||||||||||
>>>接下来我们继续100万测试 | ||||||||||||||||||