Interned @ OmniTI in summer of 2012 M.S. in Computer Science from UMBC B.E. in Computer Science, Panjab University, India Blog: http://penningpence.blogspot.com Twitter: @pallureshu Email: [email protected] 2
(pg_dumpall), selected tables, selected schemas, etc. Option to select specific objects for restore Multiple in-built compression types Ease of use, no extra setup required Disadvantages: Slower than filesystem level backups for larger complete databases Frozen snapshots in time, i.e. no PITR 6
Filesystem restore is faster! Someone dropped a table? - Dump backups are the savior!* *There are exceptions in cases where the table backup is actually older than the state that needs to be restored. 11
External factors Does it even work? Development Database Routine refresh + restore testing Reporting Databases: Overnight restores for reporting databases refreshed daily. Great candidate for daily validation. 12
Ample space • Transfer in parts, can pick up where you left off in case of errors • Speed depends on bandwidth Secure: • Buckets , Users, Policies Communication: • AWS cli / s3cmd • Access keys • PGP encryption 20
backups • internally manages to take consistent base backup without need for start/stop backup commands • Can run multiple pg_basebackups, say, for rebuilding more than one slaves concurrently, although not advisable from performance perspective. • Backups can be made on master as well as standby Disadvantage: • Slower when compared to snapshot file-system technologies • Backups are always of the entire cluster 29
was done that was realized in a short period of time. • For e.g. - Someone updates a table with no where clause, someone drop a table, etc. • May still result in some data loss post recovery, but it depends on the importance of table, other objects. 31
functions, triggers etc. into source control • Can go back to any state • pg_extractor (https://github.com/omniti-labs/pg_extractor) facilitates this by creating files for each database object, followed by integration with git, svn, etc. 32