IOPS
Because I get asked so often about what are the best practices for IOPS. I thought I would summerize from our article:
http://technet.microsoft.com/en-us/library/cc850692.aspx
| Type |
RAID level |
Spindles |
Optimization |
|
TempDB |
[RAID 1+0] - 10% of total database size |
2 IOPS/ GB |
Write optimized |
|
Transaction Logs |
[RAID 1+0] |
2 IOPS/GB |
Write optimized |
|
Search property store (Search database) |
[RAID 1+0] |
2 IOPS/GB |
Read/Write optimized |
|
Content databases |
[RAID 1+0] |
0.75 IOPS / GB |
Read optimized |
For more information, see Physical storage recommendations (Office SharePoint Server) and Planning and Monitoring SQL Server Storage for Office SharePoint Server: Performance Recommendations and Best Practices (white paper).
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.
-
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.
-
Do not overload database servers by using too many databases or data. Use the following guidelines:
-
When using SQL Server mirroring, do not store more than 50 databases on a single physical instance of SQL Server.
-
Limit content databases to 100 GB.
-
Defragment and rebuild indices daily, if you can absorb the downtime required to rebuild.
-
Monitor the database server to make sure that it is responding appropriately and is not overloaded. Key performance counters to monitor include the following:
-
Network Wait Queue: at 0 or 1 for good performance
-
Average Disk Queue Length (latency): less than 5 ms
-
Memory used: less than 70%
-
Free disk space: more than 25%