<?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: When is it a time to upgrade memory ?</title>
	<atom:link href="http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/</link>
	<description>Everything about MySQL Performance</description>
	<lastBuildDate>Sat, 21 Nov 2009 05:23:57 -0800</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: dim</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-356062</link>
		<dc:creator>dim</dc:creator>
		<pubDate>Thu, 18 Sep 2008 07:54:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-356062</guid>
		<description>Peter,

let&#039;s not mix all things together, let&#039;s just speak about RAM.

1. Generally speaking, the same server will never work worse if you add some RAM to it (except you use a buggy OS).

2. Another point - will it really improve your database performance?..

And following questions coming in mind:

 until which size we may consider MySQL cache still being effective? 
1GB? 10GB? 100GB? as well, seeing all notes about cache locking - what
about concurrency? 

 is MySQL cache working *always* better rather OS filesystem cache?
and probably we should compare first the ratio between &#039;logical&#039; reads 
from MySQL vs real &#039;physical&#039; reads processed by OS?


There may be other points (like monitoring a global memory usage under OS, etc.), but let&#039;s cover at these first..

Rgds,
-dim</description>
		<content:encoded><![CDATA[<p>Peter,</p>
<p>let&#8217;s not mix all things together, let&#8217;s just speak about RAM.</p>
<p>1. Generally speaking, the same server will never work worse if you add some RAM to it (except you use a buggy OS).</p>
<p>2. Another point &#8211; will it really improve your database performance?..</p>
<p>And following questions coming in mind:</p>
<p> until which size we may consider MySQL cache still being effective?<br />
1GB? 10GB? 100GB? as well, seeing all notes about cache locking &#8211; what<br />
about concurrency? </p>
<p> is MySQL cache working *always* better rather OS filesystem cache?<br />
and probably we should compare first the ratio between &#8216;logical&#8217; reads<br />
from MySQL vs real &#8216;physical&#8217; reads processed by OS?</p>
<p>There may be other points (like monitoring a global memory usage under OS, etc.), but let&#8217;s cover at these first..</p>
<p>Rgds,<br />
-dim</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: idont</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355983</link>
		<dc:creator>idont</dc:creator>
		<pubDate>Thu, 18 Sep 2008 00:26:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355983</guid>
		<description>@Peter: Thanks for your really good points! :)

I was too much thinking about situations I know:

- startups: not so many servers + not enough time to investigate + not all the needed skills (That&#039;s why we read carefully your blog daily! :) ) =&gt; RAM upgrade is a cheap, fast and efficient solution...

- Fortune 500: external consultant doing dev (like I was) are expensive. My collegues in India were also not charged as low as we think.

BTW, keep on your great work! I learned a lot with your great site (Except one big mistery about MySQL v5.1...  its release date in stable version... ;) )</description>
		<content:encoded><![CDATA[<p>@Peter: Thanks for your really good points! <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I was too much thinking about situations I know:</p>
<p>- startups: not so many servers + not enough time to investigate + not all the needed skills (That&#8217;s why we read carefully your blog daily! <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) =&gt; RAM upgrade is a cheap, fast and efficient solution&#8230;</p>
<p>- Fortune 500: external consultant doing dev (like I was) are expensive. My collegues in India were also not charged as low as we think.</p>
<p>BTW, keep on your great work! I learned a lot with your great site (Except one big mistery about MySQL v5.1&#8230;  its release date in stable version&#8230; <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  )</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355952</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Wed, 17 Sep 2008 21:52:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355952</guid>
		<description>Sheeri,  &quot;buffer full&quot; meant there are little of free pages.   Generally there is little reason for have any significant number of free pages if you have large database and box warmed up.  I was referring to the case when the database was gradually growing and finally just reaches the size it does not fill to buffer pool completely.

The innodb_max_dirty_pages_pct will not affect number of free pages only number of dirty pages.   Even after page is flushed from the buffer pool it just becomes &quot;clean&quot; but not free :)</description>
		<content:encoded><![CDATA[<p>Sheeri,  &#8220;buffer full&#8221; meant there are little of free pages.   Generally there is little reason for have any significant number of free pages if you have large database and box warmed up.  I was referring to the case when the database was gradually growing and finally just reaches the size it does not fill to buffer pool completely.</p>
<p>The innodb_max_dirty_pages_pct will not affect number of free pages only number of dirty pages.   Even after page is flushed from the buffer pool it just becomes &#8220;clean&#8221; but not free <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sheeri</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355932</link>
		<dc:creator>Sheeri</dc:creator>
		<pubDate>Wed, 17 Sep 2008 19:11:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355932</guid>
		<description>Peter -- you said:

&quot;Regarding flushes if there is any considerable disk IO activity Innodb will be very slow to flush dirty pages unless there is checkpointing activity or amount of dirty pages hits 90%&quot;

But you also start out with people saying that their innodb buffer is 90% full.  one of my points was that it may be mostly full of dirty pages, and that can be checked by setting the innodb_max_dirty_pages_pct lower, and seeing if that helps -- ie, setting it to 20% or 50% and seeing if your innodb buffer is still &quot;full&quot;.</description>
		<content:encoded><![CDATA[<p>Peter &#8212; you said:</p>
<p>&#8220;Regarding flushes if there is any considerable disk IO activity Innodb will be very slow to flush dirty pages unless there is checkpointing activity or amount of dirty pages hits 90%&#8221;</p>
<p>But you also start out with people saying that their innodb buffer is 90% full.  one of my points was that it may be mostly full of dirty pages, and that can be checked by setting the innodb_max_dirty_pages_pct lower, and seeing if that helps &#8212; ie, setting it to 20% or 50% and seeing if your innodb buffer is still &#8220;full&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355907</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Wed, 17 Sep 2008 16:20:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355907</guid>
		<description>Sheeri,

Good point which I surely have not mentioned. Upgrading RAM should come together with MySQL settings adjustments to use it well.

Regarding innodb_max_dirty_pages_pct  - in most cases this being high or low depends on how your load is structured and how large your logs are.  If there is working set which is both read and written the value will likely be high because there are little pages which do not need to be modified brought to buffer pool.   Regarding flushes if there is any considerable disk IO activity Innodb will be very slow to flush dirty pages unless there is checkpointing activity or amount of dirty pages hits 90%</description>
		<content:encoded><![CDATA[<p>Sheeri,</p>
<p>Good point which I surely have not mentioned. Upgrading RAM should come together with MySQL settings adjustments to use it well.</p>
<p>Regarding innodb_max_dirty_pages_pct  &#8211; in most cases this being high or low depends on how your load is structured and how large your logs are.  If there is working set which is both read and written the value will likely be high because there are little pages which do not need to be modified brought to buffer pool.   Regarding flushes if there is any considerable disk IO activity Innodb will be very slow to flush dirty pages unless there is checkpointing activity or amount of dirty pages hits 90%</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355905</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Wed, 17 Sep 2008 16:14:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355905</guid>
		<description>idont,

Few things

1) The ratio between labor and parts cost is different in different region of the world.  So there is different sensitivity where.  However it is true unless small database is expected it is often good idea to buy boxes with as much &quot;cheap&quot; memory as they can fit.  At certain memory cheap size it tends to skyrocket.

2) Rental Servers -  even though the memory is cheap many hosting providers would not only charge you effectively cost of memory to upgrade but also will put heavy monthly fees for hosting services with large memory amounts.  This needs to be factored in in the cost. 

3) Upgrade and testing is time and effort too and causes downtime unless there is redundancy in the system which need to be factored in.

4) Many larger applications have many servers so it is not the question of upgrading 1 server but upgrading 10 or 100 which multiplies both hardware cost as well as labor and testing.</description>
		<content:encoded><![CDATA[<p>idont,</p>
<p>Few things</p>
<p>1) The ratio between labor and parts cost is different in different region of the world.  So there is different sensitivity where.  However it is true unless small database is expected it is often good idea to buy boxes with as much &#8220;cheap&#8221; memory as they can fit.  At certain memory cheap size it tends to skyrocket.</p>
<p>2) Rental Servers &#8211;  even though the memory is cheap many hosting providers would not only charge you effectively cost of memory to upgrade but also will put heavy monthly fees for hosting services with large memory amounts.  This needs to be factored in in the cost. </p>
<p>3) Upgrade and testing is time and effort too and causes downtime unless there is redundancy in the system which need to be factored in.</p>
<p>4) Many larger applications have many servers so it is not the question of upgrading 1 server but upgrading 10 or 100 which multiplies both hardware cost as well as labor and testing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: peter</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355904</link>
		<dc:creator>peter</dc:creator>
		<pubDate>Wed, 17 Sep 2008 16:08:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355904</guid>
		<description>Dim,

Trial and Error approach is a whole different angle.  More Memory ? Faster CPUs ? Faster Disks ? Adding The index ? Changing table engine.   For everything you can use &quot;try and see approach&quot; but that may cause a lot of time and money wasted and unneeded downtime caused.</description>
		<content:encoded><![CDATA[<p>Dim,</p>
<p>Trial and Error approach is a whole different angle.  More Memory ? Faster CPUs ? Faster Disks ? Adding The index ? Changing table engine.   For everything you can use &#8220;try and see approach&#8221; but that may cause a lot of time and money wasted and unneeded downtime caused.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sheeri</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355888</link>
		<dc:creator>Sheeri</dc:creator>
		<pubDate>Wed, 17 Sep 2008 14:42:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355888</guid>
		<description>it&#039;s not just the cost of the RAM to keep in mind, you need to turn the machine off and put more RAM in it, and turn it on and hope the RAM is seeded properly, etc.

Plus, if you&#039;re not using memory properly, adding more will only help a little bit.  If you use RAM better, then it&#039;s better whether or not you add more RAM or not.

As for the OP -- I&#039;d also recommend checking out the Innodb_buffer_pool_pages% variables.  innodb_max_dirty_pages_pct is set to 90 by default, meaning that by default up to 90% of your buffer pool might be waiting for a flush to disk -- if you have a lot of Innodb_buffer_pool_pages_dirty, it can be a sign that you need to flush to disk more, especially if there&#039;s not a lot of disk writes.</description>
		<content:encoded><![CDATA[<p>it&#8217;s not just the cost of the RAM to keep in mind, you need to turn the machine off and put more RAM in it, and turn it on and hope the RAM is seeded properly, etc.</p>
<p>Plus, if you&#8217;re not using memory properly, adding more will only help a little bit.  If you use RAM better, then it&#8217;s better whether or not you add more RAM or not.</p>
<p>As for the OP &#8212; I&#8217;d also recommend checking out the Innodb_buffer_pool_pages% variables.  innodb_max_dirty_pages_pct is set to 90 by default, meaning that by default up to 90% of your buffer pool might be waiting for a flush to disk &#8212; if you have a lot of Innodb_buffer_pool_pages_dirty, it can be a sign that you need to flush to disk more, especially if there&#8217;s not a lot of disk writes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: idont</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355869</link>
		<dc:creator>idont</dc:creator>
		<pubDate>Wed, 17 Sep 2008 12:39:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355869</guid>
		<description>Investigating 1 hour cost as much a xGb. So better buying some RAM. :)</description>
		<content:encoded><![CDATA[<p>Investigating 1 hour cost as much a xGb. So better buying some RAM. <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dim</title>
		<link>http://www.mysqlperformanceblog.com/2008/09/16/when-is-it-a-time-to-upgrade-memory/comment-page-1/#comment-355798</link>
		<dc:creator>dim</dc:creator>
		<pubDate>Wed, 17 Sep 2008 07:20:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.mysqlperformanceblog.com/?p=502#comment-355798</guid>
		<description>Honestly, the only true answer may give the only one thing: give more RAM to MySQL and see if it really helps :-)

Rgds,
-dim</description>
		<content:encoded><![CDATA[<p>Honestly, the only true answer may give the only one thing: give more RAM to MySQL and see if it really helps <img src='http://www.mysqlperformanceblog.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Rgds,<br />
-dim</p>
]]></content:encoded>
	</item>
</channel>
</rss>
