We would like to share an update on what we are currently working on in Bacularis. This time, it is the previously announced simple restore feature.
Until now, data restore operations in Bacularis have been performed using the advanced BVFS interface, the Bacula Virtual File System. This approach offers many advantages, including the ability to select a specific file version for restore and display detailed information about files.
For backups containing millions of files and directories, preparing BVFS data may take more time in certain environments and configurations. For this reason, we decided to introduce an alternative restore method based on the traditional restore mechanism available through Bacula bconsole.
Simple restore is a new way of restoring data through the Bacularis restore wizard. It will not replace BVFS restore, but will be available alongside the default BVFS-based method.
Unlike BVFS, the file and directory structure is prepared in system memory, without the need to build and manage a BVFS cache in the database. In certain environments, this may reduce the time required to prepare a restore, especially for backups containing a very large number of files.
The simple restore interface is slightly less complex than the BVFS restore interface and does not offer all the features available through BVFS. The word "simple" refers to the simplified way in which restore data is prepared and selected. The restore process itself still uses the standard Bacula mechanisms.
We hope that introducing simple restore will allow users to choose the method that best matches their needs. BVFS restore will remain the appropriate solution for users who require more detailed information and additional features, while simple restore will provide an alternative for those who prefer lower complexity and more predictable restore preparation for very large backups.
The greatest challenge during the development of simple restore was creating a module for managing bconsole sessions. From the beginning, we designed it not as a solution intended exclusively for data restore operations, but as a general-purpose bconsole module.
For simple restore, the module manages the restore process, but in the future it may also be used by other features that require working with a bconsole session.
Developing this part of the functionality has required considerable effort, but we believe that this architecture will prove valuable in the long term. It allows us not only to implement simple restore, but also to create a foundation for future Bacularis features that use bconsole.
Most of the changes required for this feature have been made internally within Bacularis. From the user’s perspective, the main change will be the ability to choose the operating mode of the restore wizard: BVFS restore or simple Bacula bconsole restore.
We have also prepared API endpoints that support simple restore. This means that users working directly with the API will be able to use the new restore method as well.
Work on simple restore is still in progress, and we are currently approaching the end of the initial development phase. Once this phase is complete, the feature will undergo a range of different tests.
Simple restore is planned for inclusion in the upcoming Bacularis 6.4.0 release.
Below is the main screen of the restore wizard with the new restore options.
