本次實驗是在筆者上學期期末一次課程實習中的一部分,現在整理出來以供參考。
本次數據用的是不同數量級別上的數據分別在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
其中,得到插入的性能曲線函數如下: