数据表每天五千四百万数据,,如何汇总
mysql数据表table1每天5千4百万数据,十张分表(或者五十张分表),目前还未确定分表数,
数据量是确定了,根据表中四个字段(c1,c2,c3,c4)汇总,四个字段相同就可合为一条,累加金额。
目前的处理方式是使用java, 不考虑存储过程(公司限制,分表太多,存储过程不利于维护)
方案一,在内存中计算判断,累加,在内存中保存汇总结果, 因为数据量太大, 不是很合适。
方案二, 批量取出(如五千条),一批批汇总, 将结果插入临时表中。再进行汇总。
方案三, 将四个字段的某个字段作为分表维度, 这样子的结果就是,每个表中的汇总结果都会各自独立,不需要再次汇总, 缺点是 每张表的数据量可能不平均。 (所有数据汇总完后,最多会有6万条汇总结果。)
汇总完后,最后还有个处理过程就是,汇总结果表table2中的主键id 需要回填进 table1 对应的记录(为了表明table1的记录汇总到了table2中的某条记录)。
个人认为几张方案都不是很合适。
论坛大神有其他好的方案么。