In addition to database file access, there are other activities that result in disk I/O. The following table lists these additional activities and their affect on disk I/O.
|
Activity
|
Why it effects disk I/O
|
|---|
|
Zero out deleted database pages
|
If you configure your server to zero out deleted database pages, every time you delete an item from the database, multiple pages are deleted. Exchange will then overwrite the deleted pages with zeros. This feature is only run during an online streaming backup, and causes more physical disk I/O during backup.
|
|
Content indexing
|
Excessive paging occurs as the databases are scanned for index updates. This also results in excessive writes to the content indexing file, generating a spike in disk I/O on the disk that houses the content indexing file.
|
|
SMTP mail transmission
|
Inbound and outbound SMTP traffic is written to disk while transiting the system. If this disk is shared with user database or log files, SMTP mail that is being written to or read from disk will contend with the database and/or log files for I/O.
As SMTP messages are spooled from the queue to the first Exchange database, they are converted from MIME to IMail. This generates additional I/O on the log file and database volumes being used by the database.
|
|
Paging
|
When Exchange requires more memory than is physically available, Windows pages information to the page file located on your hard disk. Excessive paging results in excessive disk I/O, which reduces the performance of your Exchange server. For information about troubleshooting paging and kernel memory depletion issues, see Ruling out Memory-Bound Problems (http://go.microsoft.com/fwlink/?LinkId=62575).
|
|
MTA message handling
|
In Exchange 2000 and Exchange 2003, messages that are received during move mailbox operations, or from Exchange 5.5 servers, X.400-based servers, or across EDK connectors, are written to the transaction log files. This causes disk I/O load to your storage system.
|
|
Number of Items in a Folder
|
As the number of items in the core Exchange 2003 folders increase, the physical disk cost to perform some tasks will also increase for users of Outlook in online mode. Indexes and searches are performed on the client when using Outlook in cached mode. Sorting your Inbox by size for the first time requires the creation of a new index, which will require many disk I/Os. Future sorts of the Inbox by size will be very inexpensive. There is a static number of indexes that you can have, so folks that often sort their folders in many different ways could exceed this limit and cause additional disk I/O.
|
|
Number of Mailboxes
|
In Exchange, database reads can be reduced somewhat by the database cache which is a fixed amount of cache. As you add more mailboxes to an Exchange Server, there are more mailboxes competing for that cache. Every 1000 users added to an Exchange Server over a baseline 1000, will increase the database IOPS by 25 percent.
|
|
Exchange Version
|
When migrating from Exchange 5.5 to Exchange 2000 SP3, you can expect to see a 5 percent increase in database IOPS, all other factors constant.
When migrating from Exchange 5.5 to Exchange 2003 SP1, you can expect to see a 20 percent decrease in database IOPS, all other factors constant.
|
|
Single Instance Storage
|
In Exchange 5.5, there is one database on the server. Mail sent to multiple mailboxes on that server is only stored once, with pointers delivered to each recipient. In Exchange 2000 and Exchange 2003, you can have up to 20 databases, where each database could have one copy of the message should recipients reside on each database. Each additional database adds an additional 2 percent to the database IOPS. How well Exchange utilizes single instance storage depends on the percentage of time messages are sent to recipients on the same database, and the average message size. Larger messages have more benefit with single instance storage.
|
|
BlackBerry
|
In Exchange 2000 and Exchange 2003, users that have BlackBerry devices place additional demands upon the server. In the field, many customers see a two to four fold increase in database disk I/O. For more information, see the RIM whitepaper.
BlackBerry users cause additional overhead that affect the database IOPS of a server. When RIM tested 1000 BlackBerry enabled MMB2 users with BlackBerry Enterprise Server 4, they saw database IOPS increase by a factor of 3.64 over the standard MMB2 user without BlackBerry. This factor could be significantly smaller or larger depending on how BlackBerry devices are used in the environment. The BlackBerry test included: 10 synchronization commands; two memo adds, one modify, one delete; and four task adds. Actual BlackBerry device use will not be this constant, causing a lesser or greater affect on actual IOPS.
For a mail system consisting of 2,000 heavily used mailboxes, of which 500 are BlackBerry enabled, a total of 3820 IOPS is projected on the database volume. The formula to calculate this is:
Estimated BlackBerry IOPS per User for User Type × Number of Users
In this example, 1.0 IOPS × 2,000 mailboxes=2,000 IOPS. If 500 of those users have BlackBerry devices, then those 500 users add 500 mailboxes x 3.64 IOPS=1820 IOPS, or 3820 total IOPS.
Using a conservative ratio of two reads for every write (66% reads to 33% writes), you would plan for 2,546 read I/O and 1,273 write I/O requests per second for your database volume. Every write request is first written to the transaction log file and then written to the database. Approximately 10 percent of the total 3,820 IOPS seen on the database volume will be seen on the transaction log volume (10 percent of 3,820 is 382 IOPS); 1,273 write I/O requests will be written to the database. See the Performance and Scalability guide for in depth strategies for properly calculating your server size.
|