My GSoC with PostgreSQL: even faster and safer backup restoration in WAL-G
This summer I participated in Google Summer of Code 2020 at PostgreSQL Global Development Group. During these 3 months, I was working on performance and safety features for WAL-G utility. I went through this summer journey together with my mentors Georgy Rylov and Andrey Borodin . In this post, I will mainly focus on the work done during the program. WAL-G is a tool written in Go for backing up and restoring PostgreSQL clusters (most recently MySQL, MongoDB, and FoundationDB too). It supports Amazon S3 storages (and S3 compatible analogs, like Yandex Object Storage), as well as Google Cloud Storage, Azure Storage, Swift Object Storage, and the file system. In its core functionality, WAL-G is a successor of WAL-E but written in Go. WAL-G works much faster than WAL-E and also has some new cool features, one of them is delta-backups. Delta-backup, whenever possible, stores only pages, changed since the previous backup. When a full recovery is neede...