【问题标题】:Is SqlBulkCopy still faster than Dapper?SqlBulkCopy 是否仍然比 Dapper 快?
【发布时间】:2016-09-01 10:00:47
【问题描述】:

我找到了 Sam Saffron 的一篇关于批量插入的文章,使用 Dapper (That annoying insert problem getting data into the db using dapper) 他在文章结尾处声明:

例如,如果您需要一种超快速的方式将大量内容插入到 SQL DB 中,那么 SqlBulkCopy 是无可匹敌的,您将需要一个自定义 API。

文章已超过 4 年。

我最近偶然发现了Dapper Plus,它声称能够在 2,000 毫秒内执行 1,000,000 行,根据我发现的许多旧性能文章(例如这篇文章 - Evaluating ORMs for batch data),这似乎优于 SqlBulkCopy

不幸的是,我的 Google-fu 未能找到这两种批量导入方法之间的最新性能比较。

问题:SqlBulkCopy 仍然比Dapper.NET 快吗?

【问题讨论】:

标签: c# performance dapper sqlbulkcopy dapper-plus


【解决方案1】:

免责声明:我是项目的所有者Dapper Plus

适用于 SQL Server/Azure 的 Dapper Plus 在有足够的实体要保存时在后台使用 SqlBulkCopy,否则它将使用 SQL 派生表。

这篇文章是关于实体框架的,但如果你想了解更多信息,它与 Dapper 的策略相同:Entity Framework How to Bulk Insert in SQL Server

所以,我们的库显然没有优于 SqlBulkCopy,性能相同,但我们的库更易于使用。

该库还支持:

  • 批量更新
  • 批量删除
  • 批量合并

使用 SqlBulkCopy 和临时表技巧。

【讨论】:

  • 为了确保开发人员知道,Dapper Plus 不是免费/开源的。一位开发人员的许可费起价为 799 美元/年。一个承包商在没有意识到这一点的情况下使用 Dapper Plus 构建了一些软件。只要知道,如果你安装它,你最终将需要付出这个代价。在我看来,它的功能非常昂贵。
  • 感谢您的提示,但还不清楚。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-02-21
  • 1970-01-01
  • 2015-01-14
  • 2011-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多