We were discussing the recommendations we issue each quarter
around MySQL and the question of using InnoDB plugin came up. We
usually follow Planet MySQL closely, so we read what the blogs
had to say and it was all good, but we decided to provide our
users some data of our own. We used our own sysbench
tests on to get the information we needed.
A Word About BenchmarksI don't trust most of the benchmarks that
are published online because they really apply to the use case of
whomever is writing the article. They are usually many factors
that can influence them and I find it difficult to apply them
as-is to our environment.
I do trust the benchmarks published online as a reference on how
to create and run our own benchmarks. So this article is based on
this premise. I recommend you to do your own homework to …
I have several side projects when time permits and one is that of benchmarking various MySQL technologies (e.g. MySQL 5.0,5.1,5.4), variants (e.g. MariaDB, Drizzle) and storage engines (e.g. Tokutek, Innodb plugin) and even other products like Tokyo Cabinet which is gaining large implementations.
You have two options with benchmarks, the brute force approach such as Sysbench, TPC, sysbench, Juice Benchmark, iibench, mysqlslap, skyload. I prefer the realistic approach however these are always on client’s private data. What is first needed is better access to public data for benchmarks. I have compiled this list to date and I am seeking additional sources for reference.
[Read more]Inspired by NILFS: A File System to Make SSDs Scream and some customers asked if they should try NILFS on their SSD disks I decided to run quick tests to see how it performs.
Installation on our Ubuntu 8.10 with SSD disk (Intel X25-E, 32GB) was pretty plain and I got partition with NILFS without problem. After that I run script for sysbench fileio:
PLAIN TEXT CODE:
- for size in 256M 16G; do
- for mode in seqwr seqrd rndrd rndwr rndrw; do
- ./sysbench --test=fileio --file-num=1 --file-total-size=$size prepare
- for threads in 1 4 8; do
- echo PARAMS $size $mode $threads> sysbench-size-$size-mode-$mode-threads-$threads …
Sysbench is a open source product that enables you to perform various system benchmarks including databases. Drizzles performs regression testing of every trunk revision with a branched version of sysbench within Drizzle Automation.
A pending branch https://code.launchpad.net/~elambert/sysbench/trunk_drizzle_merge by Eric Lambert now enables side by side testing with MySQL and Drizzle. On a system running MySQL and Drizzle I was able install this sysbench branch with the following commands.
cd bzr bzr branch lp:~elambert/sysbench/trunk_drizzle_merge cd trunk_drizzle_merge/ ./autogen.sh ./configure make sudo make install
Running the default lua tests supplied required me to ensure …
[Read more]If your compiling a product that includes a dependency of MySQL, you can easily get the error
configure: error: mysql_config executable not found
I generally don’t see this problem, because I use MySQL binary tar files, however if you use MySQL packages, such as Ubuntu, you can easily miss the required dependency.
My currently installed MySQL packages on this Ubuntu machine are:
$ sudo dpkg -l | grep mysql ii libdbd-mysql 0.8.2-1-4.1 MySQL database server driver for libdbi ii libdbd-mysql-perl 4.008-1 A Perl5 database interface to the MySQL data ii libmysqlclient15off 5.1.30really5.0.75-0ubuntu10.2 MySQL database client library ii libmysqlclient16 5.1.31-1ubuntu2 MySQL database client library ii libqt4-sql-mysql …[Read more]
As a final followup to my MySQL 5.4 Scalability on 64-way CMT Servers blog, I'm posting MySQL 5.4 Sysbench results on a Sun Fire X4270 platform using the Intel x86 Nehalem chip (2 sockets/8 cores/16 threads). All CPUs were turned on during the runs. The my.cnf was the same as described in the previous blog.
The Sysbench version used was 0.4.12, and the read-only runs were invoked with the following command:
sysbench --max-time=300 --max-requests=0 --test=oltp --oltp-dist-type=special --oltp-table-size=10000000 \ --oltp-read-only=on --num-threads=[NO_THREADS] run
The "oltp-read-only=on" parameter was omitted for the read-write tests. The my.cnf file listed in my previous blog was also used unchanged for these tests.
Here are the results graphically running on Linux.
The read-only results for MySQL 5.4 show a higher …
[Read more]As a followup to my MySQL 5.4 Scalability on 64-way CMT Servers blog, I'm posting MySQL 5.4 Sysbench results on the same platform. The tests were carried out using the same basic approach (i.e. turning off entire cores at a time) - see my previous blog for more details.
The Sysbench version used was 0.4.8, and the read-only runs were invoked with the following command:
sysbench --max-time=300 --max-requests=0 --test=oltp --oltp-dist-type=special --oltp-table-size=10000000 \ --oltp-read-only=on --num-threads=[NO_THREADS] run
The "oltp-read-only=on" parameter was omitted for the read-write tests. The my.cnf file listed in my previous blog was also used unchanged for these tests.
Here is the data presented graphically. Note that the number of vCPUs is the same as the number of active threads up to 64. Active threads beyond …
[Read more]As a final followup to my MySQL 5.4 Scalability on 64-way CMT Servers blog, I'm posting MySQL 5.4 Sysbench results on a Sun Fire X4270 platform using the Intel x86 Nehalem chip (2 sockets/8 cores/16 threads). All CPUs were turned on during the runs. The my.cnf was the same as described in the previous blog.
The Sysbench version used was 0.4.12, and the read-only runs were invoked with the following command:
sysbench --max-time=300 --max-requests=0 --test=oltp --oltp-dist-type=special --oltp-table-size=10000000 \\ --oltp-read-only=on --num-threads=[NO_THREADS] run
The "oltp-read-only=on" parameter was omitted for the read-write tests. The my.cnf file listed in my previous blog was also used unchanged for these tests.
Here are the results graphically running on Linux.
The read-only results for MySQL 5.4 show a higher …
[Read more]As a final followup to my MySQL 5.4 Scalability on 64-way CMT Servers blog, I'm posting MySQL 5.4 Sysbench results on a Sun Fire X4270 platform using the Intel x86 Nehalem chip (2 sockets/8 cores/16 threads). All CPUs were turned on during the runs. The my.cnf was the same as described in the previous blog.
The Sysbench version used was 0.4.12, and the read-only runs were invoked with the following command:
sysbench --max-time=300 --max-requests=0 --test=oltp --oltp-dist-type=special --oltp-table-size=10000000 \\ --oltp-read-only=on --num-threads=[NO_THREADS] run
The "oltp-read-only=on" parameter was omitted for the read-write tests. The my.cnf file listed in my previous blog was also used unchanged for these tests.
Here are the results graphically running on Linux.
The read-only results for MySQL 5.4 show a higher …
[Read more]As a followup to my MySQL 5.4 Scalability on 64-way CMT Servers blog, I'm posting MySQL 5.4 Sysbench results on the same platform. The tests were carried out using the same basic approach (i.e. turning off entire cores at a time) - see my previous blog for more details.
The Sysbench version used was 0.4.8, and the read-only runs were invoked with the following command:
sysbench --max-time=300 --max-requests=0 --test=oltp --oltp-dist-type=special --oltp-table-size=10000000 \\ --oltp-read-only=on --num-threads=[NO_THREADS] run
The "oltp-read-only=on" parameter was omitted for the read-write tests. The my.cnf file listed in my previous blog was also used unchanged for these tests.
Here is the data presented graphically. Note that the number of vCPUs is the same as the number of active threads up to 64. Active threads beyond …
[Read more]