SIOS DataKeeper uses an intent log (also referred to as a bitmap file) to track changes made to the source, or to target volume during times that the target is unlocked. This log is a persistent record of write requests which have not yet been committed to both servers.
The intent log gives SIOS DataKeeper the ability to survive a source or target system failure or reboot without requiring a full mirror resync after the recovery of the system.
There is a performance overhead associated with the intent log, since each write to the volume must also be reflected in the intent log file. To minimize this impact, it is recommended that the intent logs be stored on a physical disk that is not involved in heavy read or write activity. See Relocation of Intent Log for more information.
DataKeeper Bitmap File Size Calculation
- One bit per block (each block is 64KB)
- One bit represents 64KB of volume space/
Example: For a 640GB volume the bitmap is 1,310,720 bytes
640 × 1073741824 / 65536 / 8
That is 1,310,720 bytes for the bitmap.
By default, this intent log feature is enabled, and the intent log files are stored in a subdirectory called “Bitmaps” under the directory where SIOS DataKeeper was installed.
To create the intent log file in a directory other than the default location, set the BitmapBaseDir registry entry to a directory where SIOS DataKeeper will create the file. See Relocation of Intent Log for more information.
To disable the intent log feature, clear the BitmapBaseDir registry entry (set it to an empty string) on all current and potential mirror endpoint servers. Disabling the intent log requires a reboot on each of these systems in order for this setting to take effect. Keep in mind that if this feature is disabled, a full resync will be performed in the event of a source system failure.
When replicating shared volumes, the intent log files are stored in a subdirectory called “ReplicationBitmaps” on the replicated volume itself. This is necessary to allow switchover to the other shared source servers without resulting in a full resync of the data.
SIOS does not recommend relocating intent logs from their default locations.
When configuring a BitmapBaseDir registry entry, make sure that the folder and drive letter specified exist. If configured with a drive letter that does not exist, DataKeeper will use a number of mechanisms to inform the user that BitmapBaseDir is not configured correctly. These mechanisms include the following:
- The DataKeeper driver (ExtMirr) will log event ID 292 to the System event log every 2 minutes. This event says:
The volume which contains DataKeeper bitmap files has not been registered yet. DataKeeper mirrors will not function until the bitmap volume is present. BitmapBaseDir is set to <setting string>.
- The DataKeeper GUI running on any system connected to the misconfigured system, will display an error message as shown here:
- The DataKeeper Notification Icon on the misconfigured node EMTray will display an error icon and will describe the issue in its Local Configuration Errors dialog box.
- The DKHealthCheck utility will display the error message.
In addition to warning the user with these mechanisms, DataKeeper will create its bitmap files in the default location (the Bitmaps folder in the DataKeeper install folder) if the volume specified by BitmapBaseDir does not get configured within the timeout specified by the WaitForBitmapBaseDirMs registry parameter. This value, specified in milliseconds, defaults to 180000 (i.e. 3 minutes). Mirrors will be operational when bitmaps are stored in the DataKeeper install folder, but performance may be impacted.