登录  /  注册
mysql 访客数等数据统计与优化要注意什么?
烟雨江南
烟雨江南 2017-02-28 09:39:59
[PHP讨论组]

现在想要解决的问题:
按天、时、周、月对数据做汇总统计,现在的分表模式对于业务还是不太够,当用户需要对前端展示出来的数据做一些动态修改时,难以在切换统计单位时展示出来。
希望能找一些分表方式,以及统计数据修改的方式。
到目前的流程:
最开始仅有a表(统计数据表)

id 数据id;
projectId 项目id;
time 统计日期(yyyy-MM-dd HH:mm:ss);
action 动作名称(如浏览、分享);
userAgent 用户来源(如微博、微信、pc);
commonUserId 用户id(如:ip);

访客数通过 COUNT(DISTINCT COMMONUSER_ID) _visitor统计的访客数,但数据量一大,查询速度就变得超级慢了,之后开始考虑分表,现在暂时建了个b表(汇总表)

id 数据id;
action 动作名称(如浏览、分享);
dataNum 数据总计;
projectId 项目id;
dataTime 统计日期(yyyy-MM-dd);
createtime 创建时间;

现在仅把每天的汇总了下,若不考虑假数据,按小时汇总的也可以用类似的方式,但考虑到日后需要动态修改一些展示的数据时(又必须保留数据库中的原始数据),就需要考虑修改数据后这几个统计单位各个统计量总数的统一,以及修改数据的方式,就比较麻烦,不清楚该怎么做更好些了。对于修改数据这块,目前想到的是一种是对数据加某个值,一种是对数据进行百分比添加,但若修改基数据,容易造成最终总数据的不一致,这样就比较纠结了。

烟雨江南
烟雨江南

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号