数据库新秀 postgresql vs mongo 性能PK
前几天看了一篇文章 作者是 码农的第一特征就是相信实验,故postgresql走起 上一篇文章<> 我们做了一个mongo的实验 >>插入1亿条记录,约耗时1个小时 >>无索引查询一条记录耗时为55.7秒 >>有索引查询一条记录耗时小于1秒 1.去官网下载psotgresql :https://www.postgresql.org/ 下载最新版本11.1 windows安装,step by step 2.客户端,我选了pgadmin:https://www.pgadmin.org/ ? 下载最新版本v3.6 windows安装,step by step 3.创建新的数据库www ?4.创建新表 /* String sql = "CREATE TABLE PERSON " + "(ID INT PRIMARY KEY NOT NULL," + " NAME TEXT NOT NULL," + " AGE INT NOT NULL," + " ADDRESS CHAR(50)," + " SALARY REAL)"; stmt.executeUpdate(sql);*/5.插入1亿条记录 java client 依赖包 java程序 public void postgresqlOneByOneInsert() { try { long start=System.currentTimeMillis(); Class.forName("org.postgresql.Driver"); Connection connection = DriverManager.getConnection("jdbc:postgresql://127.0.0.1:5432/www","postgres","root"); PreparedStatement stmt = connection.prepareStatement("INSERT INTO PERSON(ID,NAME,AGE,ADDRESS,SALARY) values(?,?,?);");
/ String sql = "CREATE TABLE PERSON " + / ResultSet rs = stmt.executeQuery( "SELECT FROM STUDENT;" );
然后是漫长的时间等待插入完成。 ? ?>>插入性能:1亿条记录导入时间耗时:36599195 毫秒~10个小时 >>无索引时读取性能:SELECT * FROM PERSON where name='mkyong90000000';? ?9 secs 574 msec ? ?>>有索引时读取性能:create index name_ind on PERSON(NAME); //创建索引耗时5 min 9 secs.?SELECT * FROM PERSON where name='mkyong90000000'; //61ms 小结:
插入性能:mongo的效率为postgresql的10倍 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |