问题描述
我想对一些数据进行回测,我希望我的回测和分析的输出成为我应用程序决策的输入。
我曾考虑复制模型/表并进行回测和分析,但随后我的工作量会增加一倍,而且没有特别的可扩展性。
是否可以为特定的特定类动态切换 rails 环境? IE。创建一个 BacktestingService 类,对“测试”数据库进行任何数据库读/写操作,而应用程序的其余部分继续使用开发/生产环境?
你能为我的用例推荐任何其他解决方案吗?
解决方法
使用 connected_to 我可以切换到不同的数据库(在本例中为 :test
),在 connected_to 块内执行我的回测和分析:
ActiveRecord::Base.connected_to(database: :test) do
backtest stuff here
end
在块之外,我可以使用我的默认数据库。
我发现这很有用:https://prathamesh.tech/2019/08/13/rails-6-multi-database-part-two/