在Mysql中存储表的增量

时间:2018-04-27 20:42:36

标签: mysql

我有一个用例,其中有一个包含三位数百万行的表。每天都有数百万的插页发生在那张桌子上。

表格结构:

id | label | quantity
_____________________

1  |   l1  |  6
2  |   l2  |  3
3  |   l3  |  1
4  |   l1  |  -2
5  |   l3  |  6
6  |   l2  |  -3
7  |   l4  |  5

created_at和updated_at字段也存在。

每天我们必须收集过去3天的delta(总和)(即前一天发生的所有插入)并将其发送到第三方系统。直接在主表上运行这需要花费大量时间(分钟。它具有所有适当的索引)

将采用以下形式:

{
  l1 : 4,
  l2 : 0,
  l3 : 7,
  l4 : 5, 
}

我的想法是创建一个新的增量表并向主表添加触发器,继续使用值更新增量表。与主表相比,该表较小,可以定期截断,以使数据保持最小绝对必要。这也应该提供较低的查询时间。

主表非常大,不可能对其进行任何重大更改。

最好的办法是什么?

谢谢

0 个答案:

没有答案