黑馬訓練營 優化大資料插入

2021-06-20 00:26:07 字數 2201 閱讀 4182

---------------------- asp.net+android+ios開發、.net培訓、期待與您交流! ----------------------

利用普通的方法進行大資料的插入,速度十分的慢。 

如圖可見,25萬8千條資料的插入,按照普通的方案,即便是獨佔connection不斷開,也需要將近20分鐘。而對比bulk僅需要將近4秒鐘,對比差距很大。

而bulk僅僅是開始,我們繼續設法將效率進行提公升!

為了更有效的對比(接下來的提公升可能用上面的資料對比,無法顯示出優勢來),我們將在控制台當中,模擬100萬條資料的插入。

public

static

void bulktodb(datatable dt)  

catch (exception ex)  

finally

}  public

static datatable gettableschema()  

);  

return dt;  

}  static

void main(string args)  

", count * multiply);  

r[2] = string.format("pwd-", count * multiply);  

dt.rows.add(r);  

}  sw.start();  

bulk.bulktodb(dt);  

sw.stop();  

console.writeline(string.format("elapsed time is  milliseconds", sw.elapsedmilliseconds));  

}  console.readline();  

}  耗時圖如下:

接下來,使用錶值引數的效率,會另你大為驚訝的

錶值引數是sql server 2008新特性,簡稱tvps。

public

static

void tablevaluedtodb(datatable dt)  

}  catch (exception ex)  

finally

}  public

static datatable gettableschema()  

);  

return dt;  

}  static

void main(string args)  

", count * multiply);  

r[2] = string.format("pwd-", count * multiply);  

dt.rows.add(r);  

}  sw.start();  

tablevalued.tablevaluedtodb(dt);  

sw.stop();  

console.writeline(string.format("elapsed time is  milliseconds", sw.elapsedmilliseconds));  

}  console.readline();  

}  耗時圖如下:

也就是說,百萬級快5秒,資料上來看,速度提公升將近25%,應該也算是乙個不小的提公升了。

----------------------

asp.net+android+ios開發、

.net培訓、期待與您交流! ----------------------詳細請檢視:

拉勾訓練營 大資料攀登之路

八月份知道有 拉勾大資料訓練營第二期 的訊息就很果斷地加入了,我是自學過一段時間並成功轉行,選擇拉勾的原因主要有 1.想要有乙個完整的大資料知識架構 2.體驗實實在在公司級別的專案流程 3.進大廠的機會 這些拉勾訓練營都能做到!1.1 hadoop 框架核心 從 狹義 的層 來說,hadoop 就是...

黑馬訓練營 方法和引數的介紹

windows phone 7手機開發 net培訓 期待與您交流!1 解釋 函式就是將一堆 進行重用的機制。函式就是一段 這段 可能有輸入的值 引數 可能會有返回值。乙個函式就像乙個專門做這件事的人,我們呼叫它來做一些事情,它可能需要我們提供一些資料給它,它執行完成後可能會有一些執行結果給我們。要求...

黑馬程式設計師訓練營 泛型

一 泛型的概念 泛型在本質上是指引數化型別。引數化型別的重要性在於,它們允許建立這樣的一些類 介面和方法 其所操縱的資料型別被指定為乙個引數。需要注意的是,引數化型別只在編譯期間才有意義,即其存在是為編譯器更嚴格的型別檢查而服務的,因此它確保了型別安全。二 泛型中的相關術語 1 arraylist ...