Macrium Reflect Changed Block Tracker
Macrium Reflect Changed Block Tracker (MRCBT) is a feature of Macrium Reflect. It reduces the amount of time it takes to perform incremental and differential images by monitoring the changes to an NTFS formatted volume in real-time.
This is especially relevant when a file system contains very large files, such as virtual hard disk (VHD) files, where speed improvements are significant and can reduce the Incremental image time from hours to minutes or even seconds.
Through discussions with our customers and after careful consideration, we decided to remove the functionality from MRCBT that allowed it to detect whether a volume had been mounted outside the current Windows session (i.e. USB flash drives and dual-boot systems) and instead, focus solely on optimizing MRCBT to reduce incremental backups times in the current Windows session. This decision enables us to provide one of the most robust Changed Block Tracking solutions available to date.
Traditionally, Macrium Reflect has detected changes to the file system by comparing the NTFS Master File Table (MFT) on the source volume, with the MFT of the most recent image in the backup set. While this is method is one of the quickest solutions available, we do not consider it an optimal solution when used in a continuous incremental scenario, especially if multi-GB files are present in the file system.
With our Changed Block Tracker driver enabled, the first incremental/differential image taken since Windows was restarted will be performed using the traditional method. This ensures that any changes to the NTFS file system that may have occurred outside of the current Windows session are recorded into the image file. From this point on, any incremental/differential images that are taken, within the current Windows session, will use our Changed Block Tracker technology.
We have created a new Changed Block Tracker (CBT) driver that automatically upgrades the previous version when you install version 7.2 with the CBT feature, now is faster and more resilient.
Our original implementation of real-time block changes erred on the side of caution by resetting the tracking index whenever a volume was mounted. This meant that after Windows reboot an image was required to be created on a volume without using CBT before the benefit of CBT was available.
We have improved on this by reliably detecting whether NTFS volumes have been mounted without the CBT driver in the kernel stack. This applies to all Operating Systems that can mount NTFS volumes, including Linux. The operation of CBT has also been vastly improved by tracking changes in RAM rather than by flushing to disk. This also has a fail-safe method to reset the CBT index should a power failure or other problem occur. We’re confident that this implementation is class leading and robust.
Macrium CBT Driver Tools
Macrium CBT Driver Tools is a small Windows utility to install and monitor the Macrium CBT driver. Macrium CBT Driver Tools provides the user with a visual representation of the changed blocks and the various performance metrics reported by the kernel mode driver. Macrium Driver Tools can be found here: C:\Program Files\Macrium\Reflect\MrCBTTools.exe
Selecting a drive shows performance metrics and tracked block information for the chosen drive. The darker shades indicate a higher percentage of changed blocks. Clicking on one of the shaded blocks will cause Macrium Driver Tools to display a list of files that are currently using the clusters within the block.
Note: The red blocks indicate the physical location of the MRCBT tracking file on the volume. This view will be reset when a Macrium Reflect backup of the volume is started.
You can read more about Macrium CBT here.