Use of Exact Online User-Managed Backup & Recovery

Summary

This note takes an empirical view on actual Exact Online user-managed backup use by accountants and entrepreneurs. Based on a sample of over 700 companies user-managed backups are interacted seldom with. Recovery is even more rare with only five registered cases in the last five calendar years.

It seems that users consider the user-managed backups of little value despite prominent placement in the menu.

Exact Online Backups

Exact Online offers end-users the capability to create up to three independent snapshots from the current company and restore it at a later moment. These snapshots are called “backups”. The snapshots are managed by Exact Online.

It is also possible to download them to local storage. Uploading the snapshots from local storage is no longer possible as of July 2018, neither into the original company as well as a new company. This change - together with lack of other cloning features - effectively made cloning impossible, which makes Exact Online unsuitable for enterprise use when ITIL-based separations between test and production environments are to be enforced.

These Exact Online user-managed backups are supplemented by backup & recovery by and under control of Exact Online itself. Please consult your agreement for details on the Backup & Recovery conditions.

This post takes an empirical view on actual Exact Online user-managed backup use by accountants and entrepreneurs.

Setup

A mix of over 700 Dutch Exact Online companies in production use has been studied. All data has been anonymized using the ‘anonymize’ SQL function and truncated to result in unique subscript IDs. The status of these backups has been queried and analyzed using Invantive SQL 17.26.

The following data points were available per backup: division ID, slot number, date of last backup made, size in bytes, software release number within backup and status. Only data of the last backup - if any - is available; historical data was not collected.

Data on the use of the backups for recovery was collected by looking at the status of the backups. Backups that were recovered but not purged list a recovery message in the status field such as ‘Teruglezen: Met success afgehandeld (timestamp)’ (Dutch).

In total 22 Exact Online environments have been studied of which 1 was an accountant.

Facts

Entrepreneurs

For entrepreneurs there were 35 companies in total, leading to an average of 1.6 Exact Online companies per environment.

Nine out of 22 entrepreneurs ever made at least one backup of the Exact Online environment.
The backup’s storage requirements were between 4 and 146 MB on a total of 15 companies with one or more backups.

Backups have an age between 0 and almost 6 years.

On one occasion, a backup with a size of 98 MB was recovered in 2016.

Accountant

From the accountancy environment 694 companies were considered.

The backup storage requirements were between 1 MB and 1.074 MB on a total of 41 companies with one or more backups.

The backup age was between 0 and almost 10 years.

Four backups (11, 14, 23 and 36 MB in size) were recovered over time into four separate companies, with two recovery actions taking place in 2014 and two in 2018.

Discussion

The backup feature of Exact Online was little to not at all used across the sample studied. Also, the actual frequency of creating user-managed backups is very low.

Five backups were recovered back as a company out of 84 known backups.

The low backup update frequency reduces actual resource consumption for user-managed backups, probably reducing the hosting requirements of the Exact Online solution as compared to intensive use of user-managed backups.

Based upon low backup and low recovery use it seems that users either do not know about the existence of the backup feature or find it of little use. Less than half of the entrepreneurs which have been using Exact Online for prolonged periods of time ever triggered a backup. The same holds for accountants.

Note that entrepreneurs typically make more use of the more complex ERP modules, whereas accountants use the relatively simple financial modules for a majority of the companies managed. The financial modules allow a simplified form of user-managed backup & recovery through postings in the memorial ledger.

The prominent position of the backup menu in the top-left menu seems meaningless from user interface design perspective. The actual user perceived value and intensity of use of the backup functionality does not warrant this.

Combined with the lack of cloning functionality, it seems that the user-managed Backup & Recovery functionality of Exact Online could either be removed or significantly improved to trigger more intensified use of Exact Online.

Figures

The following table lists the collected statistics:

Query

The following Invantive SQL statement was used to collect the data:

select owner_id label 'Subscription'
,      count(distinct division) division_cnt label '#Divisions'
,      min(backup_age_months_min) backup_age_months_min label 'Min. Age (mth)'
,      max(backup_age_months_max) backup_age_months_max label 'Max. Age (mth)'
,      sum(number_of_backups) number_of_backups label '#Backups'
,      sum(backup_age_months_sum_for_avg) backup_age_months_sum_for_avg label 'SUM Backup Age (mth)'
,      sum(has_any_backup) number_of_backups label '#Divisions with Backup(s)'
,      min(size_mb_min) size_mb_min label 'Min. Size (MB)'
,      max(size_mb_max) size_mb_max label 'Max. Size (MB)'
from   ( select owner_id
         ,      division
         ,      backup_age_months_min
         ,      backup_age_months_max
         ,      backup_age_months_sum_for_avg
         ,      number_of_backups
         ,      case when number_of_backups = 0 then 0 else 1 end has_any_backup
         ,      size_mb_min
         ,      size_mb_max
         from   ( select owner_id
                  ,      division
                  ,      min(backup_age_months) backup_age_months_min
                  ,      max(backup_age_months) backup_age_months_max
                  ,      sum(backup_age_months) backup_age_months_sum_for_avg
                  ,      min(size_mb) size_mb_min
                  ,      max(size_mb) size_mb_max
                  ,      count(backup_age_months) number_of_backups
                  from   ( select substr(anonymize(DivisionOwnerCompanyNumber), 1, 4) owner_id
                           ,      division
                           ,      round((sysdate - backupcreated)/30) backup_age_months
                           ,      softwarerelease
                           ,      round(sizebytes / 1e6) size_mb
                           ,      case
                                  when backupcreated is not null
                                  then 'Y'
                                  else null
                                  end
                                  slot_filled_flag
                           from   backups
                         )
                  group
                  by     owner_id
                  ,      division
                )
        )
group
by     owner_id