中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

.NET多種數據庫大數據批量插入分析

發布時間:2021-11-22 16:11:56 來源:億速云 閱讀:202 作者:iii 欄目:開發技術

本篇內容介紹了“.NET多種數據庫大數據批量插入分析”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

功能介紹 (需要版本5.0.45)

大數據操作ORM性能瓶頸在實體轉換上面,并且不能使用常規的Sql去實現

當列越多轉換越慢,SqlSugar將轉換性能做到極致,并且采用數據庫最佳API

操作數據庫達到極限性能

功能用法

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

BulkUpdate吊打現有所有框架是EFCoreEfcore.Bulkextension 2-3倍之快

//插入 100萬 10秒不到
db.Fastest<RealmAuctionDatum>().BulkCopy(GetList());//性能 比現有任何Bulkcopy都要快30%
 
//更新
db.Fastest<RealmAuctionDatum>().BulkUpdate(GetList());//更新 吊打所有框架N倍,30列100萬8秒更新完
db.Fastest<RealmAuctionDatum>().BulkUpdate(GetList(),new string[]{"id"},new string[]{"name","time"})//無主鍵用法
 
//表設置別名
db.Fastest<RealmAuctionDatum>().AS("tableName").BulkCopy(GetList())

數據庫支持

數據庫API支持自增
SqlSever全支持

MySql

連接字符串要加AllowLoadLocalInfile=true

全支持
PgSql全支持
OracleBulkCopy

性能測試

插入方案SqlSugar VS EFCoreEFCore.BulkExtensions

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

.NET多種數據庫大數據批量插入分析

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

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

EFCore.BulkExtensions缺點只支持 SqlServer并且性能不如SqlSugar

使用疑問

  • 比如Sqlite ... 還不支持怎么辦?

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

db.Insertable(insertObj).ExecuteReturnIdentity();//普通插入并不慢 ,列不多情況1秒可以插入1萬

  • 什么情況用db.Fastest

答: db.Fastest主要是用于大數據插入、更新處理,如果1000條以下就沒有必要使用了,畢竟支持的API沒有普通插入豐富,在小數據插入上也并沒有太多優勢,db.Fastest性能主要強大1000以上的數據處理

老版本

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

//(3)、blukCopy插入
//只適合1萬以上超大數據插入或者上面數據插入慢情況,小數據插入性能不行,不是所有庫都支持
  
db.Insertable(List<實體>).UseSqlServer().ExecuteBulkCopy()
  
db.Insertable(List<實體>).UseMySql().ExecuteBulkCopy()//高版本Mysql.data驅動,連接字符串要加AllowLoadLocalInfile=true
  
db.Insertable(List<實體>).UseOracle().ExecuteBulkCopy()//5.0.3.8-Preview

“.NET多種數據庫大數據批量插入分析”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

昆明市| 专栏| 台东县| 彭泽县| 台州市| 郎溪县| 墨竹工卡县| 垦利县| 射阳县| 黄骅市| 邯郸市| 阿克陶县| 夹江县| 南城县| 都兰县| 鄂托克前旗| 若羌县| 克什克腾旗| 昌黎县| 东乡县| 曲阜市| 九龙城区| 赞皇县| 虎林市| 胶南市| 桃江县| 阜南县| 聊城市| 阿巴嘎旗| 仙居县| 盐池县| 蓬莱市| 广昌县| 博客| 施秉县| 乳山市| 塘沽区| 嵩明县| 平邑县| 中江县| 迁西县|