程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle數據插入的性能優化的描述

Oracle數據插入的性能優化的描述

編輯:Oracle數據庫基礎

以下的文章主要介紹的是Oracle數據插入的性能優化理解的具體操作方法,如果你是Oracle數據插入的性能優化實際應用方面的新手,你就可以通過以下的文章對Oracle數據插入的性能優化 是如何正確使用的方法有一個更好的了解,以下就是文章的詳細內容的介紹。

在學習Oracle中,我們使用SQL和ODBC鏈接進行數據插入,單獨插入少量數據時,沒有問題。但是在插入大量數據時,就會出現異常,內存溢出錯誤。

如何解決在進行大量Oracle數據插入時,Java程序能夠有效快速的進行數據處理。這就是數據庫中性能優化的問題。

為什麼要進行性能優化。

首先,在大量數據處理中 一般常規的方式會造成程序處理效率和時間低下。達不到產品上線要求。

其次,沒有性能優化在產品維護時也會出現很多錯誤,帶來麻煩。

如何進行性能優化。

一般軟件都會進行大量數據測試,對性能做個整體評估,然後找出最好的方法來編寫需要的代碼。

同時再次進行測試達到最佳的性能點。

對於Oracle數據插入的性能優化我們采用如下方法進行

先采用常規方式編寫代碼,如在放入數據時就直接使用list接口方法進行。

插入數據中不進行批處理使用。

發現,在插入10萬數據中 內存溢出,而且數據庫使用時間非常長。

於是,我們先采用數據庫批處理命令 采用每1000條數據再進行一次提交

使用addBAEACH 方法,和excutbeach 方法來處理

代碼為

  1. ps.addBatch();  
  2. if(i!=0&&i%10000==0) {  
  3. ps.executeBatch();  
  4. con.commit();  
  5. ps.clearBatch();  
  6. }  

同時也使用預編譯語句進行插入。

但是在仍然不能解決虛擬機內存溢出問題

於是我們使用

  1. String[] fileList = new File(uploadDir).list();  
  2. ArrayList<String[]> array = new ArrayList<String[]>();  
  3. array.clear();  

來解決讀取文件後如何放入數據庫中再使用SQL語句進行插入。

經過反復測試。最後找到最優點。在插入100萬數據情況下 每次1萬條數據提交。性能最優。

以上的相關內容就是對Oracle數據插入的性能優化理解的介紹,望你能有所收獲。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved