用jdbc實現對大規模資料的快速儲存

2021-08-17 23:10:04 字數 722 閱讀 1036

用jdbc雖然對程式開發效率較低,由於其封裝性較低,其在資料儲存訪問時具有更高的效能,這點上是其他orm框架不能比擬的,因此如果對資料訪問效能要求高,訪問量巨大時直接使用jdbc編寫程式則滿足需求。

訪問大量資料時用update效率還是很低的,建議使用addbatch

例項如下

conn.setautocommit(false);//把自動提交改為手動提交

long start=system.currenttimemillis(); //獲取開始時間

state=conn.preparestatement("insert into student(sno,sname,s***,sage,clno) values(?,'姓名','男',20,311)");

for(int i=0;i<100000;i++)

} state.executebatch();

conn.commit();

long end=system.currenttimemillis(); //獲取結束時間

十萬條插入語句執行時間接近20s

用hibernate插入同樣的資料用時更久

大規模資料作成時的注意點。

有時候測試大規模資料,300萬條。這時有幾點是我們需要注意的。1.對作成的資料,選擇乙個字段設定上特殊的值。通過這個特殊值來判斷表中的資料是這次大規模的測試資料,還是已有資料。同時也方便將來刪除。2.確認資料的有效性。比如,db中有的字段是加密後的字段,程式中會將這個資料解密。如果無法解密則會報錯,...

使用hadoop進行大規模資料的全域性排序

hadoop 某人兒子的乙隻虛擬大象的名字 是乙個複雜到極致,又簡單到極致的東西。說它複雜,是因為乙個hadoop集群往往有幾十台甚至成百上千臺low cost的計算機組成,你執行的每乙個任務都要在這些計算機上做任務的分發,執行中間資料排序以及最後的彙總,期間還包含節點發現,任務的重試,故障節點替換...

使用hadoop進行大規模資料的全域性排序

hadoop 某人兒子的乙隻虛擬大象的名字 是乙個複雜到極致,又簡單到極致的東西。說它複雜,是因為乙個hadoop集群往往有幾十台甚至成百上千臺low cost的計算機組成,你執行的每乙個任務都要在這些計算機上做任務的分發,執行中間資料排序以及最後的彙總,期間還包含節點發現,任務的重試,故障節點替換...