I'm putting together a mission critical application which will use a Postgresql database, and I am trying to decide if I should place my Postgresql database on a network attached storage appliance or on local disks.
If I place the database on the NAS, it will get "backed up" by the NAS device's "snap" type of images. That means the NAS will make a copy of the delta, or difference, between the current version of the files on it, and the version from the last time the "snap" was done. The "snap" images will be dumped to tape at some interval of time.
I'm concerned about using a "snap" of an open and active database to restore the database if the need arises. Now, postgresql is pretty good about keeping checkpoints and recovering, but I'm still concerned about data integrity, (who knows what state any internal pointers are in when the "snap is taken), and as my application will need to archive groups of files that have to be kept together in order for the data in those files to be meaningful, (a group of files could be in the process of being archived to the database, the NAS takes a "snap" when only some of the files have been written in the database, and then the rest of the files are written in the database). There is also the question of speed, Network attached storage vs. local disks, (network speed is pretty good 100 Meg and will be going to 1 Gig in the future).
I suppose I could place the database on the NAS, shutdown the database when a backup of the database is desired, have Postgresql create the database re-creation script, let the NAS take it's "snap", and then bring the database back up.
Any suggestions, experiences, or observations?
pgsql-admin by date
|Next:||From: Chris Travers||Date: 2005-07-30 20:44:00|
|Subject: Re: Question on placing database on a network attached storage|
|Previous:||From: Lee Wu||Date: 2005-07-29 20:48:51|
|Subject: Re: rows in explain|