Posted by Vadim |
As you see MySQL is doing great in InnoDB performance improvements, so we decided to concentrate more on additional InnoDB features, which will make difference.
Beside ideas I put before http://www.mysqlperformanceblog.com/2009/03/30/my-hot-list-for-next-innodb-features/ (and one of them – moving InnoDB tables between servers are currently under development), we have few mores:
- Stick some InnoDB tables / indexes in buffer pool, or set priority for InnoDB tables. That means tables with bigger priority will be have more chances to stay in buffer pool then tables with lower priority. Link to blueprint https://blueprints.launchpad.net/percona-patches/+spec/lru-priority-patch
- Separate LRU list into several lists, and in this way it will allow us to emulate several buffer pool, with features to keep different tables in different buffer pools and also to decrease contention on buffer pool. Link https://blueprints.launchpad.net/percona-patches/+spec/multiple-lru-patch
- We are looking to include Waffle Grid into XtraDB releases with some additional features like caching buffer pool on SSD.
If ideas are interesting for you and you want to support them, contact us
Posted by Ryan Lowe |
With the growing adoption of Google’s User Statistics Patch**, the need for supporting scripts has become clear. To that end, we’ve created check-unused-keys, a Perl script to provide a nicer interface than directly querying the INFORMATION_SCHEMA database.
[read more...]
Posted by peter |
I have not got a chance to have a standard session on Velocity Conference this year, However I’m hosting the BOF. Bring your flash, IO Performance, and general performance stories and questions if you have any.
I also plan to attend the conference afternoon on Monday and mid day on Tuesday.
Posted by peter |
I will co-present in webinar on Performance Challenges and Solutions for IO Bound Workloads in MySQL. My part of the presentation will be speaking about why switching from CPU bound workload to IO bound is such an important event, how to prepare to it as well as how to keep your application performance good as the data growths.
The Brian’s portion of webinar will focus on the Schooner offering as example of flash based appliance – one of solutions I mention in my presentation.
It should be interesting whenever you’re interested in Schooner appliance offerings, flash or scaling MySQL in General.
You can follow this url to register.
Posted by
peter @ 8:18 pm ::
tuning ::
Posted by Ryan Lowe |
Today marks the official launch of Percona.tv. We’ll be uploading technical screencasts, conference video, and anything else cool we can think up. If you’ve got ideas or requests, let us know and we’ll do our best to accommodate!
Posted by Maciej Dobrzanski |
It is a known fact that ext3 is not the most efficient file system out there and for example file removals can be painfully slow and cause a lot of random I/O. However, as it turns out, it can sometimes have a much more severe impact on the MySQL performance that it would seem. When or why?
[read more...]
Posted by
Maciej Dobrzanski @ 10:55 am ::
problems ::
Posted by Vadim |
With new updates of FusionIO drivers I was able to test it on our Dell R900 with Ubuntu 8.10 without pain of compiling drives myself and downgrading to older kernel, so I was decided to test it in strict_sync mode.
As I understand FusionIO in default mode, like Intel SSD, is “lying” to application, and fsync() is not real, it still commit only to internal memory, not to final media. And FusionIO has “strict_sync” mode to guarantee fsync is trustworthy.
So let’s benchmark it – as usually I do tpcc-mysql benchmark on 100W (9GB data) with 3GB buffer_pool in O_DIRECT access.
The raw number are here
and graph is
.
Results are in TPM (Transactions Per Minute), more is better, and graph shows how result is changing in time ( axis X ).
It is too obvious from graph to comment it…
I actually did not test if you really loose transactions in case of power outage in default mode, this is something to check.
Posted by Baron Schwartz |
When I'm looking at a server, I often want to see the /etc/my.cnf file nicely formatted, and with comments stripped. This Perl one-liner will pretty-print the file:
CODE:
-
perl -ne 'm/^([^#][^\s=]+)\s*(=.*|)/ && printf("%-35s%s\n", $1, $2)' /etc/my.cnf
-
[client]
-
port = 3306
-
socket = /var/run/mysqld/mysqld.sock
-
[mysqld_safe]
-
socket = /var/run/mysqld/mysqld.sock
-
nice = 0
-
[mysqld]
-
user = mysql
-
pid-file = /var/run/mysqld/mysqld.pid
-
socket = /var/run/mysqld/mysqld.sock
-
port = 3306
-
....
Posted by
Baron Schwartz @ 7:17 am ::
tips ::
Posted by Vadim |
Playing with TokuDB updates I noticed in SHOW PROCESSLIST unsual for MySQL State.
CODE:
-
mysql> show processlist;
-
+----+------+-----------+--------+---------+------+---------------------------+-----------------------------+
-
| Id | User | Host | db | Command | Time | State | Info |
-
+----+------+-----------+--------+---------+------+---------------------------+-----------------------------+
-
| 3 | root | localhost | sbtest | Query | 30 | Updated about 764000 rows | update sbtest set email=zip |
-
...
-
mysql> show processlist;
-
+----+------+-----------+--------+---------+------+----------------------------+-----------------------------+
-
| Id | User | Host | db | Command | Time | State | Info |
-
+----+------+-----------+--------+---------+------+----------------------------+-----------------------------+
-
| 3 | root | localhost | sbtest | Query | 79 | Updated about 1900000 rows | update sbtest set email=zip |
-
...
(Do not look in stupid UPDATE query, it's just for testing
)
So looking in SHOW PROCESSLIST you can see progress of query execution.
I would want to see it in standard MySQL and InnoDB more than all these triggers and stored routines! Probably will implement this in XtraDB.
Posted by Aleksandr Kuzminsky |
Dear community,
We are pleased to announce the build16 of MySQL server® with Percona patches.
Since the build13 there was a couple of customer specific releases, which explains cutover in numbering and a pause between the builds. Also we prepared build for both 5.0.77 and 5.0.82 versions.
Since that time new patches were added:
- profiling_slow.patch
This patch adds information from SHOW PROFILE to query information in slow.log output.
profiling_server. This variable ( ON / OFF ) enables profiling of all queries (in all connections).
profiling_use_getrusage. This variable ( ON / OFF ) enables usage of getrusage function in profiling.
Be careful, enabling profiling_server may cause performance degradation, especially with profiling_use_getrusage.
- innodb_extra_rseg.patch
innodb_extra_rsegments. The number of extra user rollback segments created when new db is created.
New information_schema table innodb_rseg shows information about all rollback segments
- innodb_thread_concurrency_timer_based.patch
This patch provides the configuration variable backport from MySQL 5.4.
Fixed bugs:
You can download binaries (RPMS x86_64) and sources with patches here
http://www.percona.com/mysql/5.0.77-b16/
http://www.percona.com/mysql/5.0.82-b16/
The Percona patches live on Launchpad : https://launchpad.net/percona-patches and you can report bug to Launchpad bug system:
https://launchpad.net/percona-patches/+filebug. The documentation is available on our Wiki
For general questions use our Pecona-discussions group, and for development question Percona-dev group.
For support, commercial and sponsorship inquiries contact Percona
Posted by
Aleksandr Kuzminsky @ 3:34 pm ::
release ::