Copyright (C) 2000-2012 |
GNU Info (mysql.info)MySQL BenchmarksThe MySQL Benchmark Suite ------------------------- This should contain a technical description of the MySQL benchmark suite (and `crash-me'), but that description is not written yet. Currently, you can get a good idea of the benchmark by looking at the code and results in the `sql-bench' directory in any MySQL source distributions. This benchmark suite is meant to be a benchmark that will tell any user what things a given SQL implementation performs well or poorly at. Note that this benchmark is single threaded, so it measures the minimum time for the operations. We plan to in the future add a lot of multi-threaded tests to the benchmark suite. For example, (run on the same NT 4.0 machine): *Reading 2000000 rows by index* *Seconds* *Seconds* mysql 367 249 mysql_odbc 464 db2_odbc 1206 informix_odbc 121126 ms-sql_odbc 1634 oracle_odbc 20800 solid_odbc 877 sybase_odbc 17614 *Inserting (350768) rows* *Seconds* *Seconds* mysql 381 206 mysql_odbc 619 db2_odbc 3460 informix_odbc 2692 ms-sql_odbc 4012 oracle_odbc 11291 solid_odbc 1801 sybase_odbc 4802 In the above test MySQL was run with a 8M index cache. We have gather some more benchmark results at `http://www.mysql.com/information/benchmarks.html'. Note that Oracle is not included because they asked to be removed. All Oracle benchmarks have to be passed by Oracle! We believe that makes Oracle benchmarks *VERY* biased because the above benchmarks are supposed to show what a standard installation can do for a single client. To run the benchmark suite, you have to download a MySQL source distribution, install the perl DBI driver, the perl DBD driver for the database you want to test and then do: cd sql-bench perl run-all-tests --server=# where # is one of supported servers. You can get a list of all options and supported servers by doing `run-all-tests --help'. `crash-me' tries to determine what features a database supports and what its capabilities and limitations are by actually running queries. For example, it determines: * What column types are supported * How many indexes are supported * What functions are supported * How big a query can be * How big a `VARCHAR' column can be We can find the result from crash-me on a lot of different databases at `http://www.mysql.com/information/crash-me.php'. automatically generated by info2www version 1.2.2.9 |