0

我正在接收大的(每个大约 120MB)嵌套的 xml 文件。解析本身非常快,目前我正在使用 Nokogiri:SAXParser,它比基于 DOM 的速度更快。我需要检查数据库中的很多值。(是否应该更新?)此外,我将数据库查询保持在尽可能低的水平(急切加载,纯 sql 选择)与仅解析相比,性能损失约为 40 倍。由于需要验证/检查现有记录/涉及大量关联,我无法使用批量插入。整个过程都在一个事务中,它加快了大约 1.5 倍的速度。你会采取什么方法?我期待着任何帮助!我在整个 XML 方面不是很熟练。XLST 会帮助我吗?我还有一个 XSD 文件,用于存放到达我的文件。

提前致谢!

4

1 回答 1

0

我最终重建了现在更适合第三方数据的关联,并且我可以使用 MASS-INSERTS。(注意 max_allowed_pa​​cket 值!!!)我正在使用 sax-machine gem。当大部分基本数据已经在数据库中时,我现在可以在大约 10 秒内处理(包括数据库内容)一个 120MB 的文件。这完全没问题。随意问。

于 2013-11-22T01:21:24.020 回答