我们希望跟踪Rails应用程序的生产数据,以便我们可以在几个月内对其进行分析。
更准确地说,我们有一些带有“状态”和日期列的数据模型,这些模型可以经常更改。
想法是每当状态或任何其他属性更改时,在数据库或日志文件中的某处写一行新行。这些行包含此对象的所有属性的副本。
我看到了不同的解决方案:
使用带有after_save的观察者,并将保存的数据复制到报告Mysql Db
使用记录器系统。
在数据库级别执行另一级别的操作,检测表中的更改并将受影响的行复制到报告数据库。
如果将数据存储在数据库中,则提取数据会更容易。日志文件速度更快,并且不会大大减慢该过程。我不知道什么是最好的方法,或者是否有其他解决方案/实现。
最佳答案
你看过act_as_versioned吗?我敢肯定有一个为此目的编写的更现代的库,但是它可以满足您的需要:在更新时对数据进行版本控制,以便以后可以对其进行跟踪。无论如何,它可能会为您提供模板。
关于mysql - 如何将生产数据存储到Rails应用程序中的报表数据库?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3191519/