<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Gregory S. MacBeth - &lt;a href="http://www.linkedin.com/in/gregmcb" &gt;&lt;img src="http://www.linkedin.com/img/webpromo/btn_myprofile_160x33.gif" width="160" height="33" border="0" alt="View Gregory MacBeth's profile on LinkedIn"&gt;&lt;/a&gt; : IOPS</title><link>http://blogs.msdn.com/gregmcb/archive/tags/IOPS/default.aspx</link><description>Tags: IOPS</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>IOPS</title><link>http://blogs.msdn.com/gregmcb/archive/2009/06/02/iops.aspx</link><pubDate>Tue, 02 Jun 2009 18:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9685675</guid><dc:creator>gregmcb</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/gregmcb/comments/9685675.aspx</comments><wfw:commentRss>http://blogs.msdn.com/gregmcb/commentrss.aspx?PostID=9685675</wfw:commentRss><description>&lt;P&gt;Because I get asked so often about what are the best practices for IOPS.&amp;nbsp; I thought I would summerize from our article:&lt;/P&gt;
&lt;P&gt;&lt;A class="" title="BP IOPS" href="http://technet.microsoft.com/en-us/library/cc850692.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc850692.aspx"&gt;http://technet.microsoft.com/en-us/library/cc850692.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;
&lt;TABLE class=""&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TH class=""&gt;Type&lt;/TH&gt;
&lt;TH class=""&gt;RAID level&lt;/TH&gt;
&lt;TH class=""&gt;Spindles&lt;/TH&gt;
&lt;TH class=""&gt;Optimization&lt;/TH&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;
&lt;P&gt;TempDB&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;[RAID 1+0] - 10% of total database size&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;2 IOPS/ GB&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;Write optimized&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;
&lt;P&gt;Transaction Logs&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;[RAID 1+0]&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;2 IOPS/GB&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;Write optimized&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;
&lt;P&gt;Search property store (Search database)&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;[RAID 1+0]&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;2 IOPS/GB&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;Read/Write optimized&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class=""&gt;
&lt;P&gt;Content databases&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;[RAID 1+0]&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;0.75 IOPS / GB&lt;/P&gt;&lt;/TD&gt;
&lt;TD class=""&gt;
&lt;P&gt;Read optimized&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;For more information, see &lt;A id=ctl00_MTContentSelector1_mainContentContainer_ctl12 onclick="javascript:Track('ctl00_MTContentSelector1_mainContentContainer_ctl00|ctl00_MTContentSelector1_mainContentContainer_ctl12',this);" href="http://technet.microsoft.com/en-us/library/cc298801.aspx"&gt;&lt;FONT color=#0033cc&gt;Physical storage recommendations (Office SharePoint Server)&lt;/FONT&gt;&lt;/A&gt; and &lt;A id=ctl00_MTContentSelector1_mainContentContainer_ctl13 onclick="javascript:Track('ctl00_MTContentSelector1_mainContentContainer_ctl00|ctl00_MTContentSelector1_mainContentContainer_ctl13',this);" href="http://technet.microsoft.com/en-us/library/cc263261.aspx"&gt;&lt;FONT color=#0033cc&gt;Planning and Monitoring SQL Server Storage for Office SharePoint Server: Performance Recommendations and Best Practices (white paper)&lt;/FONT&gt;&lt;/A&gt;.&lt;/P&gt;
&lt;H1 class=heading&gt;&amp;nbsp;&lt;/H1&gt;
&lt;DIV class=seeAlsoNoToggleSection id=sectionSection4&gt;
&lt;P&gt;A healthy database server has enough headroom for databases and log files, plus enough capacity to keep up with requests. Use the recommendations in the following list to keep database servers performing optimally.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;P&gt;Pre-grow all databases and logs if you can. Be sure to monitor the sizes so that you do not run out of disk space.&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;Do not overload database servers by using too many databases or data. Use the following guidelines:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;P&gt;When using SQL Server mirroring, do not store more than 50 databases on a single physical instance of SQL Server.&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;Limit content databases to 100 GB.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;
&lt;P&gt;Defragment and rebuild indices daily, if you can absorb the downtime required to rebuild.&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;Monitor the database server to make sure that it is responding appropriately and is not overloaded. Key performance counters to monitor include the following:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;P&gt;Network Wait Queue: at 0 or 1 for good performance&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;Average Disk Queue Length (latency): less than 5 ms&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;Memory used: less than 70%&lt;/P&gt;
&lt;LI&gt;
&lt;P&gt;Free disk space: more than 25%&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9685675" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/gregmcb/archive/tags/IOPS/default.aspx">IOPS</category></item></channel></rss>