天天看點

.NET 百萬級 大資料插入、更新 ,支援多種資料庫

大資料操作ORM性能瓶頸在實體轉換上面,并且不能使用正常的Sql去實作

當列越多轉換越慢,SqlSugar将轉換性能做到極緻,并且采用資料庫最佳API

操作資料庫達到極限性能

BulkCopy 性能遠強于現有市場的 ORM架構,比 EFCore Efcore.Bulkextension 快30%

BulkUpdate 吊打現有所有架構 是 EFCore Efcore.Bulkextension 2-3倍之快

  

資料庫

API

支援自增

SqlSever

全支援

MySql

連接配接字元串要加AllowLoadLocalInfile=true

PgSql

否   

Oracle

BulkCopy

插入方案SqlSugar VS EFCore  EFCore.BulkExtensions

10萬條資料 30列 ,可以看出EFCore.BulkExtensions在第一插入性能非常慢,正常情況下大資料插入也就比第一次

.NET 百萬級 大資料插入、更新 ,支援多種資料庫

在更新方面SqlSugar也利用了bulkCopy方式進行更新,這一方面.NET  除了EFCore.BulkExtensions

并沒有發現有相關的産品(收費除外), 在更新操作方案 SqlSugar基本上是獨一無二的

EFCore.BulkExtensions 缺點 隻支援 SqlServer 并且性能不如SqlSugar

1.比如Sqlite ... 還不支援怎麼辦?

答:Sqlite普通插入加上事務就已經是市場上優秀水準了 (後續争取在技術上有突破支援SQLITE)

2.什麼情況用db.Fastest

答: db.Fastest主要是用于大資料插入、更新處理,如果1000條以下就沒有必要使用了,畢竟支援的API沒有普通插入豐富,

在小資料插入上也并沒有太多優勢,db.Fastest性能主要強大1000以上的資料處理 

老版本可以這麼用,性能不如db.Fastest

https://github.com/donet5/SqlSugar   sqlsugar已經持續更新7年之久,也越來越完善 ,如果說EF或者其它ORM不更新了,那麼多一個開源就是多一個選擇,

謝謝支援 ,随着大資料庫時代的到來,使用者對資料處理也要求越來越高,一款海量資料的讀、寫、更新的架構必不可少