任务要求是:
1.定期删除21张表中的过时数据,这些表中超过百万级的有三张,十万级的大约8张,其余基本在万级别。
2.每次任务执行时删除N个月之前的数据,N由配置文件指定。每张表都有一个datetime类型的created_datetime字段,这个字段存储的时间如果在N月前就该被删除。
3.这些表数据存在关联性,如果删除出现异常,希望21张表一起回滚。根据这个要求产生两个方案,PlanA是21张一起将N个月前的数据删除,遇到异常一起回滚;PlanB是将N个月分为m天,一天天的删除,遇到异常则回滚一天的数据。现在对一张表填充两百万数据进行测试,PlanA大约需要6分钟,PlanB大约在8-9分钟。客户觉得耗时较长。请大家帮忙,看有没有什么稳妥快速的高招没?SQL方面的和Java方面的都行(但是DB动不了,这是没办法的事情)。