This blag was originally posted at http://cafuego.net/2010/05/26/fast-paging-real-world Some time ago I attended the “Optimisation by Design” course from Open Query¹. In it, Arjen teaches how writing better queries and schemas can make your database access much faster (and more reliable). One such way of optimising things is by adding appropriate query hints or flags. These hints [...]
Filed under: Uncategorized by cafuego on Monday, May 31, 2010 | Social tagging: COUNT > drupal > InnoDB > mysql > SQL_CALC_FOUND_ROWS
6 Comments »
So this is about a SELECT COUNT(*) FROM tblname without a WHERE clause. MyISAM has an optimisation for that since it maintains a rowcount for each table. InnoDB and PBXT can’t do that (at least not easily) because of their multi-versioned nature… different transactions may see a different number of rows for the table table! [...]
Filed under: Good practice / Bad practice by arjen on Thursday, May 27, 2010 | Social tagging: COUNT > index scan > InnoDB > mariadb > MyISAM > mysql > pbxt > reporting
4 Comments »
With Paul McCullagh’s PBXT storage engine getting integrated into MariaDB 5.1, it’s never been easier to it out. So we have, on a slave off one of our own production systems which gets lots of inserts from our Zabbix monitoring system. That’s possibly an ideal usage profile, since PBXT is a log based engine (simplistically [...]
Filed under: Software and tools by arjen on Thursday, May 27, 2010 | Social tagging: InnoDB > mariadb > mysql > pbxt > storage engine > XA
1 Comment »
When asking about up-time requirements set down in SLAs (Service Level Agreements) with our clients’ clients, we’d hear anything ranging from hours to the familiar five nines, but these days also simply 100% and otherwise penalties apply. From my perspective, there’s not much difference between five nines and 100%, 99.999% uptime over a year amounts [...]
Filed under: Uncategorized by arjen on Monday, May 24, 2010 | Social tagging: emergency > mariadb > mysql > outage > resilience > SLA > support
1 Comment »
In my time at MySQL AB in the Community Relations possition (2004-2006) I wrote several articles on MySQL’s licensing for the MySQL web site. The core reason for having to explain anything was (and still is) the dual licensing of MySQL, in particular the client library. I left MySQL AB years ago, but people still [...]
Filed under: Uncategorized by arjen on Monday, May 17, 2010 | Social tagging: gpl > licensing > mysql
2 Comments »
This is a Request for Input. Dual MySQL masters with MMM in a single datacentre are in common use, and other setups like DRBD and of course VM/SAN based failover solutions are conceptually straightforward also. Thus, achieving various forms of resilience within a single data-centre is doable and not costly. Doing the same across multiple [...]
Filed under: Software and tools by arjen on Friday, May 14, 2010 | Social tagging: datacentre > DRBD > failover > mariadb > mmm > mysql > replication > resilience > SAN > VM
4 Comments »
At this year’s conference, I was pleasantly surprised with the high level of interest in Open Query’s proactive services for MySQL and MariaDB, and specifically our focus on preventing problems, while explicitly not offering emergency services. I’ll describe what this is about first, and why I reckon it’s interesting. When you think about it, most [...]
Filed under: Conferences by arjen on Thursday, May 6, 2010 | Social tagging: insurance > mariadb > mysql > mysqlconf > open query > support
2 Comments »
A crosstab query is a specific query used to create aggregate reports on two or more fields, it’s a handy way to display summary information. At Open Query we have customers using that trick to display production schedules. The summary table is generated from the database to extract the manufacturing date (mand), unit number (unitn), [...]
Filed under: Uncategorized by guillaume on Thursday, May 6, 2010 | Social tagging: crosstab > mariadb > mysql
2 Comments »