Grandfather-father-son Backup

Happy World Backup Day!. To celebrate we’re doing a quick article to discuss a topic important to backups the Grandfather-father-son backup.

The grandfather-father-son backup is a way to structure our backups so we maximize our ability to recover from data loss while still not spending a huge amount of money.

As a side note, Grandfather-father-son is the standard name for this type of backup. We’re not sure if there’s a good reason that it’s gendered and think it could just as easily be called Grandparent-parent-child. We’re going to stick with the standard name because we don’t think we’re powerful enough to change it (yet).

The grandfather-father-son backup consists of three types of backups.

The first is the grandfather backup. A grandfather backup consists of a full backup of our data that will be used to recover from a full site loss like a theft or fires, floods, and other natural disasters. This backup absolutely must be kept offsite and it should ideally be kept on a different set of media than the normal backups. We have better protection by doing both.

Grandfather backups are generated on the 1st day of the month or the first Saturday of the month. We might have processes that occur on the 1st of the month that we want to capture in this backup so it might be best to run it on the second. To keep our example simple let’s use the 1st of the month.

Grandfather backups are done on the 1st

The next type of backup is a father backup. This is a full backup that’s done once a week. Traditionally it’s done on Sundays to get ready for the new working week but again it can be scheduled based on application usage patterns as long as it’s being done once a week.

Father backups are done on Sundays

The last type of backup is a son backup. This is done on any day where we don’t create a Grandfather or Father Backup. We have the option of doing a differential backup, where everything is backed up from the previous full backup, or an incremental backup, where everything is backed up from the previous backup. Incremental backups take up less space and are quicker to create but differentials are faster to restore and take up more space.

Son backups are done every other day

If you want to know more make sure you check out Scott Keck-Warren’s article in the March 2022 issue of PHP Architect. On sale now at their website and of course, we’ve put a link in the comments.