One of the biggest problems with conventional backup and restore technology is simple: Backing up and restoring data takes time. The more data you have to restore, the longer the process takes. And the longer you need to restore a damaged or corrupted Exchange Server database, the less likely your users are to be satisfied with the level of service your Exchange servers provide. Accordingly, faster backup systems have been a hot topic ever since Exchange Server 5.5 shipped.

If you have Exchange 5.5, the only way to speed up the backup or restore of one monolithic Information Store (IS) is to use more expensive, faster storage hardware. Exchange 2000 Server introduced the concept of store partitioning; you can break large stores into multiple smaller stores. Because you can back up multiple storage groups (SGs) in parallel and because Exchange 2000 databases are often smaller than their Exchange 5.5 predecessors, restore times have dropped with Exchange 2000.

Another useful innovation in Exchange 2000 is the Ntbackup utility's support for direct-to-disk backups. Third-party backup vendors quickly adopted the new Microsoft APIs, with the happy result that you can back up even large ISs very quickly, as long as you have enough disk space.

Storage vendors didn't rest there, though. EMC, Hewlett-Packard (HP)/Compaq, VERITAS Software, and others all introduced systems that let you (in theory) capture a point-in-time copy of a running Exchange system. The problem, of course, is that Exchange isn't aware that such copies are being made, so it's liable to change the data on disk as it's being copied. The safest way to work around this problem is to dismount the database before making the copy, but that solution defeats the purpose of making a snapshot copy without interrupting normal operations.

Microsoft realized that customers wanted instant backups and restores, but it also knew the technical reasons why hot snapshots of a running Exchange system might not be the best idea. (The Microsoft article "XADM: Hot Split Snapshot Backups of Exchange," http://support.microsoft.com/?kbid=311898 , describes some of the pitfalls of hot backups that don't use the published backup and restore APIs.) The Exchange product team realized that customers weren't going to stop asking for the feature, though, so it began developing a solution that leverages Windows Server 2003's new Volume Shadow Copy Service (VSS).

VSS coordinates applications, the OS, backup applications, and storage hardware to make consistent point-in-time copies. For example, when a backup application calls VSS to request a snapshot copy of an Exchange database, VSS calls Exchange-specific code that prepares the Exchange data for the copy. When the preparation is complete, VSS notifies the original requestor, which can then transfer data to the target volume or device. (This description is a bit of an oversimplification; I'll talk more about VSS's architecture next week.)

The biggest benefit of VSS is that it provides a way to notify applications such as Exchange when some other application requests a point-in-time copy of a dynamic data set. Exchange, Microsoft SQL Server, and other transactional applications can implement support for VSS copies; with VSS-aware backup software, you can take snapshots of these applications at will.

Of course, this flexibility doesn't come without some trade-offs. First, you'll need both Exchange Server 2003 (formerly code-named Titanium) and Windows 2003. Second, you'll need to make sure that your storage hardware and backup software support VSS. Most vendors are working to get VSS support for Windows 2003 in place, but knowing which vendors will have Exchange 2003 support (and when) is difficult. All the major Exchange backup vendors will probably support VSS eventually, but I suggest that you directly contact your preferred vendor to get the lowdown on particular products.

Next week, I'll delve more into the mechanics of VSS, including an explanation of how it solves the multiple-volume problem that's been the bane of many other point-in-time copy solutions.