敏捷数据库维护:归档,删除陈旧的数据策略

时间:2016-01-08 10:28:12

标签: ruby-on-rails postgresql

许多应用程序(postgresql上的rails 4+)都有一些我称之为以应用程序为中心的当前未来的表,即这些表是围绕其进行最重要的查询并需要效率的表。

这些也恰好是具有大索引的大型表。但是,绝大多数记录,如果不导致交易对记录所有者意义不大。最多,它们对于应用程序的管理员(设计使用配置文件等)具有统计意义。

因此,目标是使用最小索引大小来加速查询,但保持历史数据的分析能力。

我们有两种类型的数据:现在和面向未来(包括具有交易历史的过去记录)和陈旧数据,仅用于分析目的。

目前的想法是以下策略:

  • 使用各自的表创建连体模型,即circuit,circuit_twin
  • 保持双胞胎和其他模特之间的所有关系相同(最极端的情况有5个1对多关系和3个多对多关系)
  • 运行每日例程,将上一期间的记录复制到双胞胎
  • 清除主要表格中期间陈旧数据的记录

此方法存在哪些缺陷和缺点?a ruby gem 似乎这样做;然而它已经不再被维护并且已经发展到轨道3.虽然我不认为这是一个主要任务,是否还有其他宝石选项来实现相同的目标?

0 个答案:

没有答案