Using HandlerSocket Plugin for MySQL with Perl
In my last post I installed the HandlerSocket plugin into MariaDB and tested it. Like the last post these examples are done with Linux CentOS 5.5. HandlerSocket some with Perl code for the Net::...
View ArticleMaking coroutines fast
Previously, I wrote about using coroutines in RethinkDB. Coroutines are a nice alternative to callbacks because they are easier to program in, and they are a nice alternative to threads because of...
View ArticleSecond draft of the per session row and index stats patch
I’ve taken the part of the tivo patch that includes table and index statistics and broken it out into it’s own patch. This patch includes the ability to do show [session | global ] table_statistics and...
View ArticleRare MyISAM failing to delete MYD file for temporary tables.
I manage a few systems that every hundred million disk temporary table deletions or so one of them will fail. MySQL will delete the MYI file but leave the MYD behind. It’s very strange. There isn’t an...
View ArticleUbuntu Upstart for automatic MySQL start and stop
Here at Recorded Future we use Ubuntu (running on Amazon EC2), but so far we have not explored Ubuntu Upstart that much. During the holidays I made an effort to get acquainted with Upstart and to...
View ArticleSpreading .ibd files across multiple disks; the optimization that isn’t
Inspired by Baron’s earlier post, here is one I hear quite frequently - “If you enable innodb_file_per_table, each table is it’s own .ibd file. You can then relocate the heavy hit tables to a...
View ArticleSpeaking at the MySQL User Conference 2011
New Year is coming! And it brings us a new MySQL User Conference! As always, me and my colleagues will be attending — we have great talks to offer: Monty is giving a keynote State of MariaDB. Just like...
View ArticleI Really Need to Get a Life…
Poul-Henning Kamp, of FreeBSD fame, posted a year-end question (in Danish) on his blog at the IT rag version2.dk: What would be the computer equivalent of Shannon’s ultimate machine? Based on one of...
View ArticleLog Buffer #210, A Carnival of the Vanities for DBAs
Welcome to Log Buffer, the weekly news update of happenings in the database world. Its the holiday season and many DBAs would rather cuddle at home with their family rather than do exciting work and...
View ArticleHating Americans and Cats
Most of the time I think of myself as living in a fairly progressive and enlightened world. I'm fotunate that I work with a set of wonderful people, I can travel all over the world and I'm a member of...
View ArticleNot-so-well-known differences between MyISAM and Innodb MySQL server storage...
There are some very well-known differences between Innodb and MyISAM e.g. Innodb supports transactions, MyISAM does not etc. However, I am goint to list some not-so-well-known differences here for the...
View ArticleMore updates to the Facebook patch
I pushed more changes to the Facebook patch and merged up to MySQL 5.1.52. Hopefully I will begin pushing patches for MySQL 5.5 soon. The changes include:Preserve symlinks for InnoDB datafiles during...
View ArticleUsing MySQL as a NoSQL: a story for exceeding 450000 qps with MariaDB
Following the excellent post of Yoshinori about exceeding 750 000 qps with handler_socket, i was curious to make my own opinion on the state of MySQL and MariaDB regarding simple primary key...
View ArticleUsing HandlerSocket Plugin for MySQL with PHP
In my last two posts I installed the HandlerSocket plugin into MariaDB and showed how to use it with Perl. That’s good, but if you are thinking of using HandlerSocket I’m guessing you have a very...
View ArticleInnoDB locking
How well do you understand InnoDB locking? The documentation is good but would benefit from a few examples. If you want to debug contention for InnoDB then you need to understand record, gap and...
View ArticleHandlerSocket is great, but don't compare it to Memcache just yet.
The HandlerSocket plugin for MySQL currently lacks atomic operations . It is impossible to implement counters (increment/decrement value) or REPLACE functionality with the current implementation. It...
View ArticlePerformance monitoring in MySQL
There are several types of performance monitoring. Some of them are made easier when workload metrics are summarized by database user, table and index. The Google patch added SHOW TABLE_STATISTICS,...
View ArticleHandlerSocket plugin – NoSQL/SQL interactions
HandlerSocket is cool. But, it turns out there are a few issues. Justin Swanhart points out HandlerSocket currently lacks atomic operations . Since HandlerSocket uses different connections for reading...
View ArticleMigrating users and content profiles
For some time now I've been working on a Drupal site that consists mainly of scraped content from a proprietary, ASP based CMS from the late nineties. The Simple HTML Dom Parser, used from within a...
View ArticleMySQL Performance: Analyzing Percona's TPCC-like Workload on MySQL 5.5
Last week Percona team published the benchmark results comparing beta XtraDB and MySQL 5.5 GA performance on their TPCC-like test workload...
View Article