<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: MyISAM Scalability and  Innodb, Falcon Benchmarks</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/</link>
	<description>Everything about MySQL Performance</description>
	<lastBuildDate>Sat, 07 Nov 2009 18:35:44 -0800</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Using Multiple Key Caches for MyISAM Scalability &#124; MySQL Performance Blog</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-392182</link>
		<dc:creator>Using Multiple Key Caches for MyISAM Scalability &#124; MySQL Performance Blog</dc:creator>
		<pubDate>Wed, 26 Nov 2008 08:19:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-392182</guid>
		<description>[...] have written before - MyISAM Does Not Scale, or it does quite well - two main things stopping you is table locks and global mutex on the [...]</description>
		<content:encoded><![CDATA[<p>[...] have written before &#8211; MyISAM Does Not Scale, or it does quite well &#8211; two main things stopping you is table locks and global mutex on the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gunnar</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-391520</link>
		<dc:creator>Gunnar</dc:creator>
		<pubDate>Tue, 25 Nov 2008 09:16:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-391520</guid>
		<description>@Peter,

Thanks for the good article.

@Rick,
&gt; I wish there would be a fix in 5.1;
&gt; I don’t want to have to wait for 6.x and Maria and Falcon.
I could be wrong but Peters results do not give me the impression that Maria or Falcon will fix this.</description>
		<content:encoded><![CDATA[<p>@Peter,</p>
<p>Thanks for the good article.</p>
<p>@Rick,<br />
&gt; I wish there would be a fix in 5.1;<br />
&gt; I don’t want to have to wait for 6.x and Maria and Falcon.<br />
I could be wrong but Peters results do not give me the impression that Maria or Falcon will fix this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rick</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-360115</link>
		<dc:creator>Rick</dc:creator>
		<pubDate>Mon, 06 Oct 2008 23:15:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-360115</guid>
		<description>I have been hearing a lot of anecdotal evidence that multiple cores are either bad or not good.  Thanks for the detailed analysis of one case.  Here are the three main causes of poor performance in multiple cores:

 * Query Cache has locking problems.  What was the setting for Query Cache?  If it was even turned on and not used, then there were a locks there.  (Granted, perhaps only 1 per SELECT.)

 * Key_buffer has locking problems, as you clearly note.

 * InnoDB has malloc problems -- the MySQL version is less efficient than plain &#039;ole malloc when you have multiple cores.

I wish there would be a fix in 5.1; I don&#039;t want to have to wait for 6.x and Maria and Falcon.</description>
		<content:encoded><![CDATA[<p>I have been hearing a lot of anecdotal evidence that multiple cores are either bad or not good.  Thanks for the detailed analysis of one case.  Here are the three main causes of poor performance in multiple cores:</p>
<p> * Query Cache has locking problems.  What was the setting for Query Cache?  If it was even turned on and not used, then there were a locks there.  (Granted, perhaps only 1 per SELECT.)</p>
<p> * Key_buffer has locking problems, as you clearly note.</p>
<p> * InnoDB has malloc problems &#8212; the MySQL version is less efficient than plain &#8216;ole malloc when you have multiple cores.</p>
<p>I wish there would be a fix in 5.1; I don&#8217;t want to have to wait for 6.x and Maria and Falcon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Beware of MyISAM Key Cache mutex contention &#124; MySQL Performance Blog</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-344186</link>
		<dc:creator>Beware of MyISAM Key Cache mutex contention &#124; MySQL Performance Blog</dc:creator>
		<pubDate>Wed, 13 Aug 2008 04:11:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-344186</guid>
		<description>[...] thousands of context switches per second with far less work done than one would hope. As we already discussed MyISAM key cache has serious mutex contention issue as there is global mutex which is held for the [...]</description>
		<content:encoded><![CDATA[<p>[...] thousands of context switches per second with far less work done than one would hope. As we already discussed MyISAM key cache has serious mutex contention issue as there is global mutex which is held for the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Morten Olsen</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-233065</link>
		<dc:creator>Morten Olsen</dc:creator>
		<pubDate>Wed, 23 Jan 2008 10:11:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-233065</guid>
		<description>Hi Peter,

Thanks for the information. I&#039;m not sure I fully understand the sentence:

&quot;As Monty explained us in MySQL 4.1 the change to key cache locking was done so disk IO is not done while lock is held, while lock is still held when key block is copied to processing thread local storage on Key Read Request.&quot;

Does that mean that the contention doesn&#039;t happen when the index is read from disk to the buffer, but rather each time some thread try to read from the buffer? Put another way, does the amount of contention relate more to the status variable Key_read_requests rather than Key_reads?

Bests, Morten</description>
		<content:encoded><![CDATA[<p>Hi Peter,</p>
<p>Thanks for the information. I&#8217;m not sure I fully understand the sentence:</p>
<p>&#8220;As Monty explained us in MySQL 4.1 the change to key cache locking was done so disk IO is not done while lock is held, while lock is still held when key block is copied to processing thread local storage on Key Read Request.&#8221;</p>
<p>Does that mean that the contention doesn&#8217;t happen when the index is read from disk to the buffer, but rather each time some thread try to read from the buffer? Put another way, does the amount of contention relate more to the status variable Key_read_requests rather than Key_reads?</p>
<p>Bests, Morten</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-179120</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Sat, 20 Oct 2007 00:01:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-179120</guid>
		<description>Dear Steven,

May I ask how you would re-write that same query into two queries, a temp table, and a join?

I&#039;d like to see the example.

Michael</description>
		<content:encoded><![CDATA[<p>Dear Steven,</p>
<p>May I ask how you would re-write that same query into two queries, a temp table, and a join?</p>
<p>I&#8217;d like to see the example.</p>
<p>Michael</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steven Roussey</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-177739</link>
		<dc:creator>Steven Roussey</dc:creator>
		<pubDate>Tue, 16 Oct 2007 20:11:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-177739</guid>
		<description>OK, though I would be interested to see if you find any differences if you had your tests run with &quot;LIMIT 18&quot; instead of &quot;LIMIT 1206,18&quot;. I find that a high index into a limit plus a join kills all my caches. But then again, I may have blobs on all the tables involved... !</description>
		<content:encoded><![CDATA[<p>OK, though I would be interested to see if you find any differences if you had your tests run with &#8220;LIMIT 18&#8243; instead of &#8220;LIMIT 1206,18&#8243;. I find that a high index into a limit plus a join kills all my caches. But then again, I may have blobs on all the tables involved&#8230; !</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-177730</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Tue, 16 Oct 2007 19:55:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-177730</guid>
		<description>Steven,

The question in this case not the query optimization - we simply took query (a bit obfuscating) from users application and checked how well different storage engines can run it.

But note in this case there is no blobs so both Innodb and MyISAM will need to read full rows.  Innodb has advantage doing join via primary key but this is other story.</description>
		<content:encoded><![CDATA[<p>Steven,</p>
<p>The question in this case not the query optimization &#8211; we simply took query (a bit obfuscating) from users application and checked how well different storage engines can run it.</p>
<p>But note in this case there is no blobs so both Innodb and MyISAM will need to read full rows.  Innodb has advantage doing join via primary key but this is other story.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steven Roussey</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-177613</link>
		<dc:creator>Steven Roussey</dc:creator>
		<pubDate>Mon, 15 Oct 2007 21:55:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-177613</guid>
		<description>Monty, not Money! Heh... oops.</description>
		<content:encoded><![CDATA[<p>Monty, not Money! Heh&#8230; oops.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steven Roussey</title>
		<link>http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/comment-page-1/#comment-177612</link>
		<dc:creator>Steven Roussey</dc:creator>
		<pubDate>Mon, 15 Oct 2007 21:54:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2007/10/12/myisam-scalability-and-innodb-falcon-benchmarks/#comment-177612</guid>
		<description>Unlike InnoDb, MyISAM loads up the entire row because it may need &#039;name&#039;. This is a problem when you have that &#039;LIMIT 1206,18&#039;. That first number is too high. You will see far greater performance when you break it into two queries -- create a temp table then join. All that (unused) data will ruin the caches. I had a discussion about this with Money back in the 4.0 days. It is just not important enough since they don&#039;t expect people to use high limits like that. And there is the temp table workaround. Might be able to use subselects to avoid the huge data load as well. In my case there were big blobs that got loaded up though they weren&#039;t needed.</description>
		<content:encoded><![CDATA[<p>Unlike InnoDb, MyISAM loads up the entire row because it may need &#8216;name&#8217;. This is a problem when you have that &#8216;LIMIT 1206,18&#8242;. That first number is too high. You will see far greater performance when you break it into two queries &#8212; create a temp table then join. All that (unused) data will ruin the caches. I had a discussion about this with Money back in the 4.0 days. It is just not important enough since they don&#8217;t expect people to use high limits like that. And there is the temp table workaround. Might be able to use subselects to avoid the huge data load as well. In my case there were big blobs that got loaded up though they weren&#8217;t needed.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
