by Peter Zaitsev | Sep 12, 2007 | Insight for Developers
Quite frequently I run into question like this “I’m using SQL_NO_CACHE but my query is still much faster second time I run it, why is that ? The answer to this question is simple – because SQL_NO_CACHE only bypasses query cache but it has no change...
by Peter Zaitsev | Sep 12, 2007 | Insight for DBAs
Monty Taylor posted interesting investigation of the fact read_buffer_size variable affects connection speed. This is not something you would expect right ? me too. Not only global user data is expected to be cached on startup but even if it is not why would you do...
by Peter Zaitsev | Sep 10, 2007 | Percona Events
As one of my last posts about issues with hosting provider got great response and We got a lot of good advice and offers I decided to ask for advice another problem we have as we’re growing our company – organizing good phone communications. Our goals are...
by Vadim Tkachenko | Sep 7, 2007 | Percona Events
Returning to my post about memory consumption with Stored Function at this moment I want to annul that post. Trying to repeat described behavoir I cannot repeat that again and probably there was something wrong with the whole box, not MySQL. I apologize if it was...
by Peter Zaitsev | Sep 5, 2007 | Insight for Developers
MySQL Has API to run Multiple Queries at once. This feature was designed mainly with saving network round trip in mind and got a little traction due to associated security risks and not significant gains in most cases. What would make MySQL Multiple Queries API more...
by Peter Zaitsev | Sep 3, 2007 | Percona Events
HighLoad.RU is the conference focused on Building High Performance Systems and has speakers from most of top Russian Internet companies. It is taking place in Moscow, Russia 24-25 of September and you should know a bit of Russian to attend 🙂 The conference has some...
by Peter Zaitsev | Sep 2, 2007 | Percona Events
We have yet another opening at MySQL Performance Blog. We’re looking for Intern position (with limited compensation) to work on project of MySQL Performance research and analysis, developing and running benchmarks under our guidance, writing WhitePapers and...
by Peter Zaitsev | Aug 31, 2007 | Percona Events
During last one and a half year we had pretty good track record with MySQL Performance Blog – there were times when site was slow (especially when backup was running) but I do not remember significant downtime, until today we went down for few hours. All this...
by Peter Zaitsev | Aug 31, 2007 | Percona Events
As you may already have seen announcement by Baron we’re working on major rewrite of High Performance MySQL book – the most famous book about MySQL Performance on the market… which is getting old though. We’ve been slowly working on the book...
by Maciej Dobrzanski | Aug 29, 2007 | Insight for DBAs
Vadim asked me yesterday to update Microslow patch for 5.1.21, because the previous one I wrote for 5.1.20 failed to apply correctly on the new MySQL release. Imagine the expression on my face after I unpacked the sources and found out that MySQL incorporated the...
by Alexey Kovyrin | Aug 28, 2007 | Benchmarks, Insight for Developers
When we optimize clients’ SQL queries I pretty often see a queries with SQL_CALC_FOUND_ROWS option used. Many people think, that it is faster to use this option than run two separate queries: one – to get a result set, another – to count total number...
by Vadim Tkachenko | Aug 28, 2007 | Benchmarks, Insight for DBAs
I believe we wrote about this before, but this topic popups again and again. Today I’ve read opinion that if we have clause WHERE has_something=1 we should have index on column has_something (the column has two values 0 and 1). In reality the right answer is not...
by Vadim Tkachenko | Aug 28, 2007 | Benchmarks, Insight for DBAs
About year ago Peter wrote about redundant indexes and mentioned sometimes it is good to leave two indexes, even one is first part of another. I’m speaking about BTREE indexes, for example, KEY (A), and KEY (A,B). From SQL point of view KEY(A) is not needed, as...
by Vadim Tkachenko | Aug 26, 2007 | Insight for DBAs
UPDATE : Post is not actual anymore Not so long time ago I had task to update string column in table with 10mil+ rows, and, as the manipulation was non-trivial, I decided this task is good to try Stored Function. Function written – go ahead. Since 5 min I got...
by Peter Zaitsev | Aug 18, 2007 | Benchmarks, Insight for DBAs
I took the same table as I used for MySQL Group by Performance Tests to see how much MySQL can sort 1.000.000 rows, or rather return top 10 rows from sorted result set which is the most typical way sorting is used in practice. I tested full table scan of the table...
by Peter Zaitsev | Aug 17, 2007 | Insight for Developers
Jan has a good article about finding the row matching some value in the group: This is one illustration of group by limitations in SQL language which is not offset by any MySQL specific extensions,yet As you can see if you want to get one row from the group which is...
by Peter Zaitsev | Aug 16, 2007 | Benchmarks, Insight for DBAs
As you might know while running GROUP BY and some other kinds of queries MySQL needs to create temporary tables, which can be created in memory, using MEMORY storage engine or can be created on disk as MYISAM tables. Which one will be used depends on the allowed...
by Peter Zaitsev | Aug 16, 2007 | Percona Events
I noticed today if you go to Yahoo.com and type MySQL to Search field it gives you suggestions for MySQL, which are: * loading javascript arrays with mysql data * mysql performance blog * mysql download * mysql administrator download * mysql front download It may not...
by Peter Zaitsev | Aug 15, 2007 | Percona Events
Sheeri just posted a great post putting a different view on recent MySQL Community Announcements. This however raises very interesting point what MySQL Community really needs ? I think the problem is there are no single set of needs for Community which can be...
by Peter Zaitsev | Aug 12, 2007 | Insight for DBAs
I start to see applications being built utilizing VIEWs functionality which appeared in MySQL 5.0 and quite frequently VIEWs are used to help in writing the queries – to keep queries simple without really thinking how it affects server performance. Even worse...