views:

190

answers:

4

Hi, Is there any formal performance and stress test reports of open source database, specially sqlite,MySQL an PgSQL?

I want to use sqlite in server for its simple structure and easy embeddable capability. But I can not find any pros and cons (by Googling and Yahoo!ing) regarding performance of these database software.

Please suggest.

+1  A: 

I found this article. It has a disclaimer at the top about the age of the information. However, it may be some help to you.

Here is another article that seems a little more recent and up2date.

Seems from reading these that SQLite is quite adequate in terms of performance.

northpole
Hi, Thanks a lot for those links. But as said those are very old versions (SQLite 2.7.6, PostgreSQL 7.1.3, and MySQL 3.23.41). After that all of these have evolved and improved significantly. So, I was looking for comparatively recent test results.
fireball003
A: 

Benchmark is not the most important in database choice.

I think SQLite and MySQL are quicker than Progres or Firebird but if you need some specific features like CTEs, only few database have even if it is SQL Standard

Hugues Van Landeghem
+1  A: 

Sysbench is a great utility for benchmarking mysql and I believe has plugins or the capability to test PostgreSQL. Keep in mind that you're not going to get a simple number that says "DBMS A is faster than DBMS B" -- at best you can hope to get an idea of what kind of scaling you'll get for a particular type of workload that is hopefully similar to whatever workload you'll end up throwing at your system.

Regardless of performance, if you really know what you are doing with RDBMS software and need an open source solution, you'll probably want to go with PostgreSQL -- otherwise, stick with MySQL.

A: 

Benchmarking is hard. And expensive. And in the installations most of them are done, SQLite won't even be tested, because it's designed for completely different workloads and simply doesn't deal with the situation. (For example, any real benchmark will have clients running on different machines from the server, which SQLite AFAIK doesn't really do - whereas it does do very well in the case where you have a single client locally).

You can always look at something like spec, for example http://www.spec.org/jAppServer2004/results/jAppServer2004.html that shows both pg and mysql at least. But beware that the hardware platforms are different (and that these tests are also not from today).

But the bottom line is that if you want to compare performance for your application, the only really relevant benchmark you can run is your own application in a testing environment.

Magnus Hagander