Ruby on rails Rails创建100k行
有没有办法优化rails中100K行的创建?我目前正在使用:Ruby on rails Rails创建100k行,ruby-on-rails,Ruby On Rails,有没有办法优化rails中100K行的创建?我目前正在使用: hash_numbers = SomeModel.all.map {|number| {number: number}} List.last.recipients.create hash_numbers 当列表变长时,它会以指数形式变慢。有什么建议吗?您可以尝试批处理方法之一在批处理中查找或查找每个,这可能仍然是一个很长的过程,但更容易记忆 或者使用limit拆分查询并将每个组放入各自的后台进程的某种方法。您是否尝试过在事务中包
hash_numbers = SomeModel.all.map {|number| {number: number}}
List.last.recipients.create hash_numbers
当列表变长时,它会以指数形式变慢。有什么建议吗?您可以尝试批处理方法之一
在批处理中查找
或查找每个
,这可能仍然是一个很长的过程,但更容易记忆
或者使用
limit
拆分查询并将每个组放入各自的后台进程的某种方法。您是否尝试过在事务中包装您的create
,以便db在单个事务中插入您的所有查询?可能还有其他更好的解决方案,但由于您使用ActiveRecord进行批量插入,请尝试一下:
ActiveRecord::Base.transaction do
1000.times { List.last.recipients.create hash_numbers }
end