【发布时间】:2014-06-05 16:33:09
【问题描述】:
我正在使用 DataMapper 在 SQLite3 中工作。
我正在填充一个包含近 140 万条记录的表,这需要很长时间。我发现 SQLite 中的插入是inherently slow,可以通过以下方式改进:
- 设置
pragma Synchronous = OFF - 通过将它们嵌入
BEGIN..COMMIT块中进行批量插入。
有一个lot of ways 可以做到这一点。
我一直在尝试寻找对 DataMapper 执行相同操作的方法,但文档到目前为止还没有帮助。我搜索了互联网,并解释了在其他环境中执行相同操作的方法,但没有人在 Ruby 的上下文中谈论过 DataMapper。
到目前为止我的代码是:
DataMapper.setup(:default, 'sqlite:///path/to/DataBase.db')
//Definition of Model
File.open(fileName, "r") do |infile|
while (line = infile.gets)
// Populate data in database here
end
end
【问题讨论】:
-
如果您向我们展示您的尝试,这真的很有帮助。
标签: ruby database sqlite ruby-datamapper