【MongoDb】一次關於Oracle和MongoDb的插入和查詢效能測試
阿新 • • 發佈:2019-01-06
本次實驗是在筆者上學期期末一次課程實習中的一部分,現在整理出來以供參考。
本次資料用的是不同數量級別上的資料分別在Oracle和MongoDb中進行實驗的。
其中兩者的表結構一樣,都是如下欄位:
得出如下結論:
沒有索引的情況下
Oracle: 1萬條 耗時:2341ms 10萬條 耗時:22544ms 100萬條 耗時:257766ms 1000萬條: 耗時:5487448ms MongoDb: 1萬條 耗時:1065ms 10萬條 耗時:9221ms 100萬條 耗時:57644ms 1000萬條: 耗時:515884ms
利用 select * from TOMCAT_LOG t where time>to_date('2016/12/14 8:51:10','yyyy/mm/dd hh24:mi:ss') and time<to_date('2016/12/14 8:59:10','yyyy/mm/dd hh24:mi:ss') and rownum<100
查詢資料的對比
Oracle:
1萬條
耗時:727ms
10萬條
耗時:760ms
100萬條
耗時:1076ms
1000萬條:
耗時:4080ms
MongoDb:
1 萬條
耗時:31ms
10萬條
耗時:140ms
100萬條
耗時:972ms
1000萬條:
耗時: 10469ms
有索引的情況下
插入資料的對比
Oracle:
1萬條
耗時:1776ms
10萬條
耗時:14250ms
100萬條
耗時:149029ms
1000萬條:
耗時:1344311ms
MongoDb:
1萬條
耗時:1648ms
10萬條
耗時:5830ms
100萬條
耗時:53405ms
1000萬條:
耗時:521454ms
統計分析資料的對比
Oracle:
1萬條
耗時:691ms
10萬條
耗時:714ms
100萬條
耗時:1122ms
1000萬條:
耗時:4046ms
MongoDb:
1萬條
耗時:47ms
10萬條
耗時:125ms
100萬條
耗時:991ms
1000萬條:
耗時:9930ms
其中,得到插入的效能曲線函式如下: