
有个需求是这样,存在大约 15w 条货品记录,现在需要可以计算过去某天或者某个时间段的货品的数量,这个应该如何来存储呢? 现在想到的方法是,开一个数据库,然后每天 0 点存储记录,但是这个很快就会爬升到很大的数据量了, 10 天就上百万了。
1 7654 2016-09-12 12:32:38 +08:00 增加货品数量变更记录,然后按时间查询汇总即可 |
2 pepesii 2016-09-12 12:38:22 +08:00 先 ORDER BY YEAR(datetime), MONTH(datetime), DAY(datatime); 把结果放到另外一个表,然后去查询某个时间段;这样行吗? |
3 pc10201 2016-09-12 12:44:40 +08:00 时间序列数据库? |
4 zencitta 2016-09-12 12:58:06 +08:00 实时算比较方便, UI 上做好点就好了 |
5 zencitta 2016-09-12 12:59:51 +08:00 给用户感觉不是系统慢,而是他的数据太多。要优化再加钱。 |
6 stargazer242 2016-09-12 13:09:14 +08:00 这不就是库存吗 |
7 dl2k 2016-09-12 13:18:25 +08:00 楼主没有讲清楚需求,可以存在多种解读。 |
&nbs; 8 jint 2016-09-12 13:45:29 +08:00 via iPhone 如果数据变化不大,每天只存有变化的商品,变化大,那就必须承担数据量。 |
9 aru 2016-09-12 14:04:28 +08:00 如果觉得记录太多了,可以合并记录。设计一个表 ,字段为 id,时间, json 后的商品 id 到库存字典 不过这个库存字典数量可能比较大,可以考虑按照商品 id 分成若干个字典,比如根据商品 id 的最后一位来划分 |
10 laobaozi 2016-09-12 19:12:53 +08:00 via iPhone 增加一个货品变动纪录表,关联货品 ID ,货品状态 1 ,货品状态 2 ,修改日期 每次对货品操作 货品状态 1 纪录操作前的状态,货品状态 2 纪录操作后的状态 假设货品状态 库存=1 在途=2 已售=3 然后技能愉快的按日期 select 了 吗???? |
11 reus 2016-09-13 02:31:35 +08:00 一年也才几千万,算什么大…… 而且可以定期打包,移出数据库啊 |