.net – 如何快速将大量XML数据存入我的数据库?

我使用.NET来解析大约2000万行(1.56 GB)的 XML文件,从数据中构建LINQ对象,然后将其插入到SQL数据库中.这花了很长时间.

为了提高性能,我正在考虑要求管道分隔文件.我也想知道Perl是否会更快.有没有人有加快这个过程的建议?

解决方法

这是一个激进的想法,老实说我不知道​​它是否会改善你的表现,但它有很好的机会这样做.我敢打赌,你实例化你的上下文对象一次,然后使用它来插入所有记录,对吧?这样做意味着上下文将跟踪所有这些对象,直到它被处置,这可能解释了随着时间的推移性能下降.

现在,您可以清除上下文缓存,但我有一个更加坚定的想法.这些上下文对象被设计为在实例化时具有最小的开销(无论如何在文档中都这样说,我没有测试过该断言),因此如果在每次迭代中实例化上下文,它可能会有所帮助.即在创建对象的同时重新创建上下文.或者,这是一个更好的主意,维护数据对象的内部列表,并在每n次迭代中将列表提交到单独的方法以提交到数据库.该方法应该实例化并处理上下文.合理?

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念