IAMirror - Mirror Backup
This enables ImgArchive to use cloud backup solutions for of off-site backups. Mirror Backup IAMirror is used by ImgArchive to manage these offsite backups. IAMirror is an application (iambak.exe) that runs side by side with iaarc.exe, However there is a master slave relationship between the two applications. The Master being iaarc.exe and the producer of information. The slave is IAMirror consumes this information. The application IAMirror uses this information to manage the transfer of the mirror data to the remote file system. The mirror data consists of the same information that the local backup contains such as the images file, metadata and validation files etc.
When images are imported into ImgArchive Iaarc.exe will generate a journal file that contains the details of all the files needed to be transferred to the mirrored site. Iambak.exe will read this file and update it as the files are transferred. Iambak.exe will by default copy the files to the mirror site then transfer them back as a verification step to guaranty the files have been copied over without corruption. Once all the files have completed being transferred the Journal file will show a list of completed file transfers at this point a summary file will be generated detailing the result of the mirroring process. At this point Iambak.exe will look for any new Journal files that need servicing otherwise will exit.
The Mirror Journal
This file contains all the information required to transfer all the files necessary to make the mirror up to-date with the master or derived repositories depending on the activity i.e. an image import will use the master repository and an image edit will use derived repository.
When image(s) are imported or copied, rather than files and directories copied directly to the drive as with a locally attached backup hard drive, they are noted in the Mirror Journal that they need to be copied. These files will then be copied at a later date when the Mirror Journal is processed by IAMirror.
Virtual File System (VFS)
This is used by the mirror to create a local version of the remote mirror but only storing the file information and checksums for each file in the mirror and not its contents.
The VFS contains all the information required to validate that the remote mirror is complete and consistent with the files and directories it is mirroring. It does this by comparing the checksums of the remote mirror file with the ones contained in the VFS.
This can be done in two ways: the first is that if the machine that contains the remote mirror can run a checksum generator. If it can a checksum generator can generate the requested checksums on the file to be validated and transfer the checksums back to the VFS for comparison. If the checksums match then the file is valid. The second method is to copy the files to be validated back to the local disk generate the required checksums locally and compare the ones in the VFS. The local copy can then be deleted. Unfortunately this will take longer.
Remote transfer plug-in
IAMirror need to transfer files and create folders on the remote drive to create and maintain the remote mirror. In order to support and number of cloud backup solutions these functions may be changed by using different Remote Transfer Plug-in (RTP) depending on cloud backup solution requirement.