ruby-on-rails - Rails 事件记录导入 : How do I know how many records to insert in one batch?

标签 ruby-on-rails ruby database activerecord

我刚开始使用 activerecord-import ,它比我之前做的一个一个插入要快得多。我目前正在分批插入 500 条记录,想知道其他人发现哪个批处理的数字合适?我知道没有“一刀切”的答案。我只是在寻找具有 activerecord-import 经验的其他人的一些指导。我看过 documentation并用谷歌搜索,但没有找到任何东西。

附加信息 fwiw:我正在使用 Postgres,并保存模型对象,而不是具有值的列和数组。

感谢任何帮助。

最佳答案

activerecord-import 将根据您的数据库适配器的最大允许数据包将导入分成多个组,因此您应该不会遇到任何问题。优化是另一个问题。

我唯一关心的是内存分配 - 如果您已经分配了所有对象并且只是将它们分批提供给 import 调用,我会全部完成一次。

如果您为每个批处理动态生成对象(例如,从文件中读取时),您应该进行一些测试并查看不同批处理大小的内存使用情况。

关于ruby-on-rails - Rails 事件记录导入 : How do I know how many records to insert in one batch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7420774/

相关文章:

ruby-on-rails - 将 Ruby gems 推送到自己的服务器,以便可以公开访问

ruby-on-rails - Rails 如何在一个 View 中访问不同的数据库表

mysql - rails mysql BLOB 类型 - to_xml 返回二进制,想强制为字符串

html - 在 RoR 上使用 Prawn 和 Pdfkit 生成 PDF

database - pgadmin 连接到 postgresql ;错误 : server not listening

mysql - SQL - 无法添加或更新子行 : a foreign key constraint fails - Pivot table

ruby-on-rails - Ubuntu 在后台运行 Puma 和 Sidekiq 作为守护进程

ruby-on-rails - mongoid嵌入式文档回调

ruby - 从包含特定键的散列数组中删除散列

ruby-on-rails - PG::ConnectionBad,无法连接到服务器