2千万数据、17.3GB数据库用帝国CMS6.0分表合理存放(第十页)
六、本次2000万数据最终测试数据统计:
参数 数据
信息数: 2000万
单表最大信息数: 400万
总记录数: 4000万零450
每100万数据库占用约为: 900 MB
总数据库大小: 17.3 GB
后台管理信息列表速度: 0.009秒
修改信息页读取数据: 0.0052秒
生成5000条数据: 19秒
内容动态页的速度: 0.0025秒
PS:现在所有表包括400万数据那个表反复生成5000条数据竟然都在14秒。可能是那天机器不断导数据导致机器速度慢。
本次测试经验总结:
优点:6.0在大数据下的优势非常明显,生成内容页、动态内容页效率非常之快且不受数据量影响,解决了CMS负载最大的问题,并且使用按表管理信息列表速度很快,单表几十万和几百万数据没有明显区别。
不足之处:在于单栏目数据量大于200万时标签调用、栏目列表速度有所下降(指的是增加检索条件的情况),主要由于最耗资源的置顶排序与多重排序,下版会考虑删除置顶功能与优化列表,并且会增加大数据量标签调用优化处理功能,以达到所有页面速度在大数据量都很优秀,不仅是内容页效率优秀。

本次测试2000万只是本人空闲时搞的小测试,主要让大家知道帝国分表如何处理更好,只要分表均匀可以将一个很大的数据分解成无数个相同效率的表,单表无论是50万、400万甚至1000万数据在管理信息列表与生成页面效率基本是相同的,例如:5000万数据中12个栏目可以分成每表存放450万,每个450万数据表效率都是一样的。未来版本帝国将会推出更完美的构架,主表可以像副表一样无限分表,让系统性能再度翻倍提升。做一个完美的安全、稳定高效、强大、灵活的CMS是我们的终极目标,多年来我们一直朝这个方向迈进,不断创新不断完善。帝国软件以为中国网站提供最完善的建站解决方案为已任,打造国内最好的CMS程序。
 
帝国CMS对大数据情况建议:
数据表结构最好的优化是将所有的自定义字段都存放到副表;主表只存放标题字段;
总体的数据表数据分配均匀,主表下的每个副表存放建议100万数据以内;
内容页减少标签调用或采用JS调用或者采用.shtml包含最新内容页面的方式;
栏目列表设置最大显示数量;
过期信息或不再调用的信息进行归档;
减少使用搜索,搜索是最耗资源的功能;
自行修改文件去除标签和列表的置顶排序(置顶功能下版会默认删除),对性能更高要求的可只采用id排序;
优化运行环境,特别是MYSQL数据库优化;
服务器配置最好2GB以上内存、采用更快的CPU以及硬盘转速缓存更高IO更快。
 
未来帝国CMS版本对大数据方面功能展望:
标签调用与列表性能优化,删除置顶功能并且对标签调用优化处理;主表结构更加优化。
推出更完美的构架,主表可以像副表一样无限分表,让系统无论从维护数据还是生成页面性能将再度翻倍提升。
多服务器结构支持,实现负载均衡。
增加Oracle、postgresql、Mssql等多种数据库支持。
......更多功能我们正在不断的探索与创新,相信会给大家更多的惊喜。
 
附:帝国CMS6.0系统数据构架图
 
 
>>>返回帝国论坛