Performance Measurement Mongo Vs SQL
All the insights are derived from “Performance comparison of the most popular relational and non-relational database management systems”(Author: Kamil Kolonko)
For measurements, workloads are needed, and then these workloads are executed on both of the measured databases.
WorkLoad Definition: Before defining the workloads we need to identify the parameters for the workload.
operationcount — number of executed operations,
readproportion — proportion of read operations (e.g. 0.5 means 50%
of total operations are database value reads), updateproportion — proportion of update operations,
scanproportion — proportion of scan (full collection reads)
operations,
insertproportion — proportion of insert operations, readmodifywriteproportion — proportion of batches of read, update
and insert operations.
Based on the above parameters and combining them in different proportions, workloads(WL) are created:
╔══════════════════╦══════╦══════╦══════╦══════╦══════╦══════╗
║ ║ WL A ║ WL B ║ WL C ║ WL D ║ WL E ║ WL F ║
╠══════════════════╬══════╬══════╬══════╬══════╬══════╬══════╣
║ operationcount ║ 1000 ║ 1000 ║ 1000 ║ 1000 ║ 1000 ║ 1000 ║
║ readproportion ║ 0.5 ║ 0.95 ║ 1 ║ 0.95 ║ 0 ║ 0.5 ║
║ updateproportion ║ 0.5 ║ 0.05 ║ 0 ║ 0 ║ 0 ║ 0 ║
║ scanproportion ║ 0 ║ 0 ║ 0 ║ 0 ║ 0.95 ║ 0 ║
║ insertproportion ║ 0 ║ 0 ║ 0 ║ 0.05 ║ 0.05 ║ 0 ║
║ readmodifywrite ║ 0 ║ 0 ║ 0 ║ 0 ║ 0 ║ 0.5 ║
╚══════════════════╩══════╩══════╩══════╩══════╩══════╩══════╝
Below are the results of the execution
