日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

sqlite3数据库的性能问题报告

發(fā)布時間:2025/3/20 数据库 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sqlite3数据库的性能问题报告 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

使用jdbc測了一下sqlite3的插入數(shù)據(jù)的效率,使用整體事務(wù)與不使用整體事務(wù),差別非常明顯。 cpu: 1G, 內(nèi)存:512MB
使用整體事務(wù):1000000條記錄,需要93秒鐘。
使用逐個插入提交事務(wù):1秒鐘只能處理20條記錄。
啟動程序時把java堆最

使用jdbc測了一下sqlite3的插入數(shù)據(jù)的效率,使用整體事務(wù)與不使用整體事務(wù),差別非常明顯。 cpu: 1G, 內(nèi)存:512MB
使用整體事務(wù):1000000條記錄,需要93秒鐘。
使用逐個插入提交事務(wù):1秒鐘只能處理20條記錄。
啟動程序時把java堆最大空間設(shè)大一些,不然可能出現(xiàn)內(nèi)存不夠的異常。
java -Xmx256M TestConn
測試后的結(jié)果顯示如下:

以下是測試代碼: import java.sql.*;public class TestConn {void test(){Connection conn = null;Statement stmt = null;ResultSet rset = null;System.out.println(new java.util.Date());try {Class.forName("SQLite.JDBCDriver");conn = DriverManager.getConnection("jdbc:sqlite:/f:/test.db", //jdbc:oracle:thin:@hex:1521:ORCL"", "");conn.setAutoCommit(false);stmt = conn.createStatement();stmt.executeUpdate("create table hehe(id number, name varchar(32))");System.out.println("建表hehe成功!");for (int i=0; i<1000000; i++){stmt.executeUpdate("INSERT INTO hehe VALUES("+i+", '我愛中國"+i+"')");}conn.commit();System.out.println("不建索引查詢:");System.out.println(new java.util.Date());rset = stmt.executeQuery("SELECT id, name FROM hehe where id > 499999 and name ='我愛中國500001'");if (rset.next()){System.out.println(rset.getInt("id"));System.out.println(rset.getString("name"));}if (rset!=null){ rset.close(); rset = null; }System.out.println(new java.util.Date());System.out.println("建索引:");System.out.println(new java.util.Date());stmt.executeUpdate("CREATE INDEX hehe_idx on hehe(id)");stmt.executeUpdate("CREATE INDEX hehe_idx2 on hehe(name)");conn.commit();System.out.println(new java.util.Date());System.out.println("建索引后的查詢:");System.out.println(new java.util.Date());rset = stmt.executeQuery("SELECT id, name FROM hehe where id > 499999 and name = '我愛中國500001'");if (rset.next()){System.out.println(rset.getInt("id"));System.out.println(rset.getString("name"));}System.out.println(new java.util.Date());stmt.executeUpdate("drop table hehe");System.out.println("刪除表hehe成功!");conn.commit();System.out.println(new java.util.Date());} catch(ClassNotFoundException cnfe) {System.out.println("Can't find class for driver: "+cnfe.getMessage());System.exit(-1);} catch (SQLException e){System.out.println(e.getMessage());System.exit(-1);} finally {try {if (rset!=null) rset.close();stmt.close();conn.close();} catch (SQLException e) {}}}public static void main(String[] args) {TestConn conn = new TestConn();conn.test();} }

轉(zhuǎn)載于:https://www.cnblogs.com/elect-fans/archive/2012/08/09/2630612.html

總結(jié)

以上是生活随笔為你收集整理的sqlite3数据库的性能问题报告的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。