Chris, The NAS is a Network Appliance 920c. I understand that an individual file while be "intact" during a snap, (not sure I believe it, but that's what I'm told). The NAS may be able to monitor the state of an individual file and not "snap" it if it is on an "open" state or has a pending write, or some such, but as the NAS has no knowledge of groups of files that need to exist in a known state, (it deals on the file level), it cannot guarantee a consistent state across a group of files. (The database will be on the NAS and will be NFS mounted filesystem to a Linux Redhat 3 running the application.) ----- Original Message ----- From: "Chris Travers" <chris@xxxxxxxxxxxxxxxxxxxxxxxx> To: "N/A" <srichardjanet@xxxxxxxxxxx> Cc: <pgsql-admin@xxxxxxxxxxxxxx> Sent: Saturday, July 30, 2005 1:44 PM Subject: Re: [ADMIN] Question on placing database on a network attached storage device > N/A wrote: > > > Hi, > > > > 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. > > Wherever possible, I think that local storage is almost always best as > it is a less complex system (hence less can go wrong). However, you > will probably get better answers if you tell us what sort of NAS you are > looking at using, how it will connect to your system, etc. > > > > > 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. > > > > How internally consistant is this snap? I.e. if the file is changed > while the snap is being taken, what happens? This behavior may be > product-dependnant and has serious ramifications for your data. > > > 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). > > Personally I think that there are better approaches than NAS for this, > but again I am unwilling to say "never use it." > > > > > 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? > > Best Wishes, > Chris Travers > Metatron Technology Consulting >