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

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

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

解决方法

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

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

相关文章

引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而产生的。具体...
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere u want. 文章...
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere u want. 文章...
http://blog.jobbole.com/79252/ 引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满...
(点击上方公众号,可快速关注) 公众号:smart_android 作者:耿广龙|loonggg 点击“阅读原文”,可查看...
一、xml与xslt 相信所有人对xml都不陌生,其被广泛的应用于数据数据传输、保存与序列化中,是一种极为强...