Exchange Backup and Restore API Evaluation Criteria

Topic Last Modified: 2008-04-14

The ESE backup and restore system supports backup and restore of entire storage groups, as well as individual databases within the storage groups. Because each storage group uses a single set of log files covering all of the databases in the storage group, restore and recovery operations should be done over the entire storage group.

Important

Microsoft Exchange Server 2007 Service Pack 1 (SP1) disables remote streaming backup and restore by default. To enable remote streaming backup and restore, set the Windows registry key HKLM\System\CCS\Services\MSExchangeIS\ParametersSystem\Enable Remote Streaming Backup to 1. When that registry key does not exist, or is set to 0, remote streaming backup and restore is disabled.

Caveats

The backup API is based on storage groups. Currently, only one backup per storage group is allowed at one time. There may be backups of different storage groups occurring at the same time, but only one database in a storage groups may be backed up at a time.

Functional Criteria

Criteria Exchange Backup and Restore API

Application Domain

Applications use this API to back up and restore Exchange storage groups and databases.

Major Objects

The Exchange Backup and Restore API is a non-dual dynamic-link library (DLL), and exposes a single interface with no objects.

Data access model

Applications that use this API iteratively read and write the Exchange store data in fixed-length in-memory buffers.

Threading Models

To speed the backup and restore operation, it is possible to open multiple storage groups by using multiple threads. Only one database in a storage group can be backed up at a time. Multiple threads are therefore only useful when you are backing up multiple storage groups.

Application Architectures

Backup and Restore applications that use the Backup and Restore API to back up Exchange 2003 storage groups typically consist of a background service that performs the backup, a scheduling service, and a Windows GUI application console that controls and configures the backup and restore system.

Remote Usage

Applications that use the Backup and Restore API should run only on a computer that is running Exchange 2003 or Exchange 2007 that also manages the Exchange storage groups that are being accessed. Remote backups and restores using the streaming API are disabled by default in Exchange 2007.

Transactions

No.

Management Capabilities

Applications that use the Exchange Backup and Restore API can take advantage of the Windows Events and performance counters provided by Exchange.

Availability

The Exchange Backup and Restore API is available on Exchange 2000 Server, Exchange 2003, and Exchange 2007.

Development Criteria

Criteria Exchange Backup and Restore API

Languages and Tools

The Exchange Backup and Restore API is a non-dual dynamic-link library (DLL). For this reason, C/C++ must be used to access the backup and restore functions. Use the Microsoft Windows LoadLibrary function to load the DLL.

Managed Implementation

Microsoft does not support the use of the Exchange Backup and Restore API in a managed-code environment.

Scriptable

No.

Test/Debug Tools

No special tools are required to debug applications that use the Exchange Backup and Restore API.

Expert Availability

Finding developers who have previously programmed applications by using the Exchange Backup and Restore API might be difficult. Because of the nature of the Backup and Restore API, programmers with experience creating high-reliability software are preferred.

Available Information

Documentation for the Exchange Backup and Restore API is provided in the Exchange 2000 Server and Exchange Server 2003 SDKs. To browse or download the Exchange 2000 Server or Exchange Server 2003 SDK, see the Exchange Server Developer Center on MSDN.

Developer / Deployment Licensing

Refer to your Exchange and MSDN subscription licensing agreements to determine whether additional licenses are required for the Exchange 2003 servers that store the data backed up and restored by custom applications that use the Exchange Backup and Restore API.

Security Criteria

Criteria Exchange Backup and Restore API

Design-Time Permissions

Applications that use the ESE backup and restore API must run under the security context of a user that has backup and restore privileges on both the source and destination computers.

Setup Permissions

No special permissions are required to install applications that use the Exchange Backup and Restore API. Because the applications must run on the computer running Exchange, the account under which the application is installed must have sufficient permission to install software on that computer.

Run-Time Permissions

Applications that use the ESE backup and restore API must run under the security context of a user that has backup and restore privileges on both the source and destination computers.

Built-in Security Features

None.

Security Monitoring Features

There are no built-in security monitoring features.

Deployment Criteria

Criteria Exchange Backup and Restore API

Server Platform Requirements

The Exchange Backup and Restore API is available with Exchange 2000 Server, Exchange 2003 and Exchange 2007.

Client Platform Requirements

There are no special client requirements beyond the Exchange Backup and Restore API core requirements.

Deployment Methods

Exchange Backup and Restore API applications can be installed on server computers by using standard software distribution technologies.

Deployment Notes

None.