Tuesday, 6 June 2017

New Hana backup software

Hello, I would like to present a new backup software that we N’Ware Technologies have been developing to support our customer running on Hana.

We made this backup software because existing backup software were missing basic functionality or were complex to use.

linux Bash scripts/windows dos scripts to automate backups are complex to the normal user to manage. It requires specialized knowledge on how to use the command line, sometimes on linux that user might not know, and offer no other functionality than the basic 1 backup per day.

Hana Cockpit provide a graphical interface to schedule backup, but as the previous solution, it only do backup, it does not send emails to notify the the user, it does not clean backup  – it never delete backup that it’s create, a user need to manually delete the backups on the server and if not done the server will crash when there is no space left.

For B1 customer, the SLD Backup service is advertised to do the job, but it only do schema export, which are not reliable for various reason. The RSP can also schedule backup, but again, no mail, no cleanup, 1 backup per day with no retention schedule.

To have a complete backup system, we have made our own backup solution.

This backup software allows to
  • Take one or multiple daily backups
  • Compress the backups and move them to a different server for archival purpose
  • Rotate the backups with a custom configuration allowing the user to decide how many days, weeks, month and years of backups to keep
  • Clean the backup catalog and log backup on the hana server
  • Send status mails after each run and keep a log of all runs.
  • Provide a simple graphical configuration utility running on windows.
SAP HANA Tutorials and Materials

We had some key design goals when we made it.

We want to keep the backup software simple. Having too much functionality in a software makes it harder to understand the backup process, harder to configure and also harder to code and enhance with new functionality.

Many decisions during the development have been done following this goal. For example, backups are not de-duplicated : each daily backup, even if there is only 2% of differences in the data, will be kept completely on disk. This takes more space, but allows recovering a specific daily backup even if other backups were corrupted.

In a similar case, if a backup is promoted to weekly, monthly or yearly, it will simply be copied to the appropriate directory. There is no complex process done to link the yearly backup to point to the data of the daily backup and check which backup can be deleted and which cannot. Instead, we duplicate the archive file and both file will take space on the disk, but will allow a more simple backup rotation process.

Backups are not encrypted, as this is yet another area that is very hard to do properly and make it easy to use while keeping the encryption keys secure.

The backup software try to rely on existing archive format to compress backups, and uses windows share to access the servers to try to keep it simple. If the software become unusable because of hardware, software or other issue, one can manually perform a database restore or continue the same backup procedure manually as this program does.

The software need to be easy to configure. Therefore, all configuration is available through a graphical interface running on windows.

This matters a lot for technicians, partners and customers that are not trained in Linux environment. Linux is usually configured through its command line tools or manual configuration files, and most backup software available for Hana running directly on Linux will require these skills.

By providing a configuration utility on windows, a broader range of people are able to use the software and support it.

The software integrates well with the Hana system as the archive format it uses to archive backups is natively supported on Hana. This allow a technician that want to restore the database to be able to decompress the archive using standard tools already installed and used by Linux users since decades.

It also integrates well with manual backup or other backup scheme already in place on the Hana server as it does not take full control of the server, but simply handles its tasks while allowing the user to take manual backup and archive them if and when it’s needed.

While there are other backup script or tool out there, most of the does not offer a complete solution and it’s to the user to manually delete backups, archive them to keep some of them in case we need to look at older data, user need to manually check that the backup was not done, because no email were sent; there is no status when the backup is done. This tool offer a more complete solution while still being easy to manage. There is still a lot to do on it; interface will be improved, but I think that it still offer a good solution versus those scripts.

If you are interested in the tool for your use you may contact me by replying here or reaching me or one of our people at Nwaretech.com