June 18, 2013

Post: InnoDB Full-text Search in MySQL 5.6 (part 1)

… FTS over the same data sets, and then finally in the third installment, we’ll look at query performance. In the event that a…_text | +———————-+———-+———-+———-+ | test.dir_test_innodb | optimize | status | OK | +———————-+———-+———-+———-+ 1 row in set (4.60 sec) mysql> select * from information_schema.innodb_ft… the other I_S tables, I do find that the number of rows in I_S.innodb_ft_index_table is changing…

Post: Using GROUP BY WITH ROLLUP for Reporting Performance Optimization

in set (21.12 sec) mysql> select count(*) cnt from dt where slack like “a%”; +———+ | cnt | +———+ | 2352996 | +———+ 1 row in set… sense to me and I find it quite inconvenient whenever it…performance penalty. This approach is however still faster than running 2 queries completing in

Post: ORDER BY ... LIMIT Performance Optimization

… may be scanned to find 10 rows. So index on …you have application which can perform search on many different …; Using index | +—-+————-+——-+——+—————+——+———+————-+——+———————————+ 2 rows in set (0.00 sec) In this case there is …

Post: Eventual Consistency in MySQL

… enforcement of foreign keys incurs a significant performance overhead.1,2 MySQL allows us to set FOREIGN_KEY_CHECKS=0 to disable… NULL; | +————————————————————————————————————————————————————————+ 1 row in set (0.00 sec) It can be a dizzying exercise to write SQL queries that in turn output valid….ID | +————-+ | 42 | +————-+ 1 row in set (0.00 sec) That shows that the quality control query can find orphans.  Because we have a…

Post: Goal driven performance optimization

in given example. For goal driven performance optimization it is important there is enough instrumentation and production performance logging in…have to go and find what queries exactly are …| +——+———-+—————–+——————+ 24 rows in set (2.37 sec) As you can see in this…

Post: Using flow control functions for performance monitoring queries

… Optimizer. One way I find IF statement very useful is computing multiple aggregates over different set of rows in the single query sweep. Here is how I like to use it for web site performance analyzes… better set performance goals for high percentage portion such as – 95% or 99% and see what fraction of requests matches this goal. In

Post: How to find MySQL queries worth optimizing ?

…digest report it is easy to find slow queries or queries which …in this case there is no database access happening at all – you would be wrong. The index lookup is being perform… 2 rows in set (0.00 sec) In this case we have 2 rows analyzed for each row set

Post: MySQL Full Text Search in Action

… using value 2 because it is able to find A6 but still fails to find data with 1 character keyword, say Mazda… general terms as in you may have your application specific stop words such as “com” or “html”. In general performance should be the… for performance reasons, but it is normally good enough to keep it very short. Plus as in new versions you can set the…

Post: Color code your performance numbers

performance_log_100601 where page_type=’search’; +———–+————+———+ | green_pct | yellow_pct | red_pct | +———–+————+———+ | 99.6701 | 0.3006 | 0.0293 | +———–+————+———+ 1 row in set (24.87 sec) These are great numbers to look after. In this case we can say system has “two nines” in

Post: Extending Index for Innodb tables can hurt performance in a surprising way

… 1 row in set (0.00 sec) MySQL Optimizer considers using both (a) and (a,b) indexes and infinds a=100. This looks like an optimizer glitch in this case because it estimates it will scan 2247 rows in