<?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"
	>
<channel>
	<title>Comments on: Are you designing IO bound or CPU bound application ?</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/</link>
	<description>Everything about MySQL Performance</description>
	<pubDate>Mon, 13 Oct 2008 17:18:27 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-29952</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Mon, 15 Jan 2007 10:24:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-29952</guid>
		<description>Breezes, 

Unfortunately there is no stats in MySQL at this point which would show amount/time of  IO waits for particular objects, it may come though in some later MySQL version. 

I usually use our slow query profiling tool and patch to log all queries with their execution times to summ it up and find queries taking most of resources.  Optimizing these usually gives most impact.</description>
		<content:encoded><![CDATA[<p>Breezes, </p>
<p>Unfortunately there is no stats in MySQL at this point which would show amount/time of  IO waits for particular objects, it may come though in some later MySQL version. </p>
<p>I usually use our slow query profiling tool and patch to log all queries with their execution times to summ it up and find queries taking most of resources.  Optimizing these usually gives most impact.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Breezes</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-29781</link>
		<dc:creator>Breezes</dc:creator>
		<pubDate>Mon, 15 Jan 2007 06:39:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-29781</guid>
		<description>Hi, peter. Suppose an application is IO bound, how can I find out which table/index is the main cause?</description>
		<content:encoded><![CDATA[<p>Hi, peter. Suppose an application is IO bound, how can I find out which table/index is the main cause?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25640</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Thu, 28 Dec 2006 12:36:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25640</guid>
		<description>Filip, 

Yes Innodb always clusters data by primary key so once you change storage engine to Innodb you data will become clustered by primary key for good or bad. 

You may also run OPTIMZE TABLE on it after conversion if original data was not in PK order - this will give better layout.</description>
		<content:encoded><![CDATA[<p>Filip, </p>
<p>Yes Innodb always clusters data by primary key so once you change storage engine to Innodb you data will become clustered by primary key for good or bad. </p>
<p>You may also run OPTIMZE TABLE on it after conversion if original data was not in PK order - this will give better layout.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25639</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Thu, 28 Dec 2006 12:35:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25639</guid>
		<description>Regarding Master/Slave question - this is something you have to do manually and it is application dependent.  I should write some more about possible techniques though.</description>
		<content:encoded><![CDATA[<p>Regarding Master/Slave question - this is something you have to do manually and it is application dependent.  I should write some more about possible techniques though.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25638</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Thu, 28 Dec 2006 12:33:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25638</guid>
		<description>James yes Wikipedia is great example and any forum, blog  messaging can benefit from data clustering which Innodb has to offer.</description>
		<content:encoded><![CDATA[<p>James yes Wikipedia is great example and any forum, blog  messaging can benefit from data clustering which Innodb has to offer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25637</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Thu, 28 Dec 2006 12:32:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25637</guid>
		<description>Alexey, Why is that ? 

On the contrary I think Innodb is the storage engine to use for IO bound workload.   IO Bound means large database size and large database size means  very long repair time for MyISAM tables in case of crash.  This if of course if you do not have read only load or you do not care about your data and do not repair tables after crash.</description>
		<content:encoded><![CDATA[<p>Alexey, Why is that ? </p>
<p>On the contrary I think Innodb is the storage engine to use for IO bound workload.   IO Bound means large database size and large database size means  very long repair time for MyISAM tables in case of crash.  This if of course if you do not have read only load or you do not care about your data and do not repair tables after crash.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexey</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25157</link>
		<dc:creator>Alexey</dc:creator>
		<pubDate>Fri, 22 Dec 2006 20:55:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25157</guid>
		<description>Peter,
Don't you think that InnoDB is not suitable for IO bound load by design?</description>
		<content:encoded><![CDATA[<p>Peter,<br />
Don&#8217;t you think that InnoDB is not suitable for IO bound load by design?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Filip</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25132</link>
		<dc:creator>Filip</dc:creator>
		<pubDate>Fri, 22 Dec 2006 14:56:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25132</guid>
		<description>I have one question about data clustering. I tought that in innodb records are clustered when query ALTER TABLE tab1 ENGINE=innodb is executed (in case when multiple primary key is defined)

Do I need execute sometimes this query or records are clustered automaticaly on-the-fly with insert/update statements?</description>
		<content:encoded><![CDATA[<p>I have one question about data clustering. I tought that in innodb records are clustered when query ALTER TABLE tab1 ENGINE=innodb is executed (in case when multiple primary key is defined)</p>
<p>Do I need execute sometimes this query or records are clustered automaticaly on-the-fly with insert/update statements?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Day</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25104</link>
		<dc:creator>James Day</dc:creator>
		<pubDate>Fri, 22 Dec 2006 01:14:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25104</guid>
		<description>A beautiful example of this happened at Wikipedia. The article version history was originally stored in date of edit order. Showing 50 rows of history starting 1000 versions ago would take 1050 seeks. Histories can be 50,000 or more versions long, so it could be 50,000 seeks for one page view. It was changed to have article ID as the first part of the primary key, so it became many revisions per page and adjacent pages for nearby revisions. It became an insignificant load issue and also very easy to cache effectively, significantly cutting the working set size.

Then it was changed to do something better than LIMIT for the selection of older revisions.

This sort of thing is one reason why even a simple message board could benefit from InnoDB with good primary key choice, so all posts in a topic are automatically physically adjacent.</description>
		<content:encoded><![CDATA[<p>A beautiful example of this happened at Wikipedia. The article version history was originally stored in date of edit order. Showing 50 rows of history starting 1000 versions ago would take 1050 seeks. Histories can be 50,000 or more versions long, so it could be 50,000 seeks for one page view. It was changed to have article ID as the first part of the primary key, so it became many revisions per page and adjacent pages for nearby revisions. It became an insignificant load issue and also very easy to cache effectively, significantly cutting the working set size.</p>
<p>Then it was changed to do something better than LIMIT for the selection of older revisions.</p>
<p>This sort of thing is one reason why even a simple message board could benefit from InnoDB with good primary key choice, so all posts in a topic are automatically physically adjacent.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: p</title>
		<link>http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25046</link>
		<dc:creator>p</dc:creator>
		<pubDate>Thu, 21 Dec 2006 04:33:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/2006/12/20/are-you-designing-io-bound-or-cpu-bound-application/#comment-25046</guid>
		<description>hi,


i enjoy reading your site. i read all these articles talking about mysql replication and how you can send writes to the master and reads to the slave. but i never see anything related on how to actually do this. is this something that is handeled by a mysql configuration or does this have to be coded in the application?  please let me know i've been trying to find the answer to this for weeks. 


thanks</description>
		<content:encoded><![CDATA[<p>hi,</p>
<p>i enjoy reading your site. i read all these articles talking about mysql replication and how you can send writes to the master and reads to the slave. but i never see anything related on how to actually do this. is this something that is handeled by a mysql configuration or does this have to be coded in the application?  please let me know i&#8217;ve been trying to find the answer to this for weeks. </p>
<p>thanks</p>
]]></content:encoded>
	</item>
</channel>
</rss>
