0、题记

项目中使用mysql作为数据存储,需要定期将库表中的数据按照给定格式生成报表。根据导出周期的不同分为:日报、周报、月报、季报、年报等格式。
导出的整个逻辑我来负责编写,前期的日报、周报导出都没有问题。
但是,四月初统计上个月的月报的时候,发现到处全部的数据需要花费超过12个小时的时间。
10几分钟的到处已然让人无法接受了,12个小时简直要了人命!
本文基于导出时间长的问题,说下数据库表的设计和多表关联需要注意的事情!

一、当前库表的情况

1、导出给定格式的表数据分散到十几张表中;
2、导出渠道也分为:搜索、微博、微信、论坛等近10种格式。
3、核心业务数据分散在5张表中,其中4张表平均月数据量5万条+,另一张关联表的数据量10万条+。
4、另五张表示配置相关的数据,如:渠道名称、主题名称、关键词名称等。

二、导出格式的要求

1、每


收藏 打印