meteor-mysql icon indicating copy to clipboard operation
meteor-mysql copied to clipboard

Performance comparison

Open sebakerckhof opened this issue 10 years ago • 1 comments

Hello,

First of all, thanks for this promising piece of work.

Are there any performance comparisons made between the mysql live select and the mongo oplog tailing performance? Let's take a simple scenario where I don't have any joins in mysql or embedded documents in mongodb, is anything known about the performance characteristics between the two?

Kind regards, Seba

sebakerckhof avatar Apr 22 '15 12:04 sebakerckhof

Sorry for taking so long, I was hoping to get this project working on the same code as pg-live-select because it has a load test already but I'm not sure if I'm going to actually do this as yet.

There used to be a benchmark for comparing inserts in MySQL and Mongo but I never migrated it to the new version. It's still available on the old branch and just now I have made some adjustments to get it working (barely) on the new version in the benchmark_update branch.

To access this, run the test suite locally and click on the benchmark button in the bottom right.

meteor test-packages --settings=test/settings/local.json ./

I noted that the benchmark barely works because I could only get it to run if I clicked the button before the normal tinytest cases are complete. After all the regression tests finish, the benchmark hangs for reasons I do not know.

The benchmark of adding 1000 rows to a MySQL table vs 1000 documents to a mongo collection shows MySQL as much faster. The following images shows 2 runs of each test. The mongo-direct cases are using the thinksoftware:mongo-direct package. Higher is better, the y-axis is the number of inserts per-second.

I'm not certain of the utility of this test case though. The high performance may be due to the client-side being much simpler since it's read-only where client-side minimongo collections have much more bulk.

screenshot from 2015-05-04 19 09 21-crop

numtel avatar May 05 '15 02:05 numtel