In the old days, all the way back to Exchange 4.0, each Exchange database store contained hundreds of users, and mailbox sizes were typically measured in megabytes. Back then, database-store space was at a premium, and to save room, messages sent to multiple users in the same mailbox store were only stored once. Hence the name “single-instance storage.”
If you moved or exported mailboxes (outside of certain processes, such as the built-in move mailbox process) that held single-instance stored messages, the messages were lost and the system had to re-save the message multiple times, taking up much more space. Additionally, single-instance storage enhanced the delivery of messages sent to large distribution lists because the message itself was stored only once, and many users deleted the message over time.
Fast forward to today. Now, each Exchange server might have 50 mailbox databases, and mailbox sizes are measured in gigabytes. You might have only 20 to 50 users per database, and as you spread user mailboxes over more database stores, the chances of the same message being sent to users in the same database are reduced. As a result, Exchange 2007 doesn't use single-instance storage for messages. Attachments (which are typically larger than the messages themselves) are still warehoused using single-instance storage.
Today, single-instance storage isn't a big deal, and more emphasis is being made about better I/O performance, bigger mailboxes, and less mailboxes per store.