On Mon, 2006-08-07 at 14:51, Ron Johnson wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Scott Marlowe wrote: > > On Mon, 2006-08-07 at 13:51, Ron Johnson wrote: > >> -----BEGIN PGP SIGNED MESSAGE----- > >> Hash: SHA1 > >> > >> Jeff Davis wrote: > >>> On Mon, 2006-07-31 at 09:53 -0500, Ron Johnson wrote: > > > >>> pg_dump just produces output. You could pretty easily stripe that output > >>> across multiple devices just by using some scripts. Just make sure to > >>> write a script that can reconstruct the data again when you need to > >>> restore. > >> But doesn't that mean that pg_dump must dump to disk? > >> > >> With a *big* database, that's a whole lot of extra kit (not just > >> spindles) to buy. > > > > I'm certain you can backup direct to tape, as I've done it in the past > > with postgresql. This was in the day of 4 gig 4 mm tape drives... > > Sure. That's why tar is named *Tape* ARchive. > > Going along with the example of the 4GB 4mm tape drive, and to > simplify, we are *not* using compression (neither on the drive or > s/w gzip or bzip): > > Say we have a 7GB database. Is there a way to way to use 2 tape > drives... Argh, I guess not, since the Unix pipe mentality presumes > that the mode of operation will be: > $ pg_dump /some/database | tar cvfz /dev/st0/db.tgz > > What would be darned useful (but only, I think, with heavy usage of > tablespaces) is: > $ pg_tapedump /some/database /dev/st0,/dev/st1,/dev/st2,/dev/st3 Oh, I see where you were headed. I've found a bit here and there googling about for multiplex and tar, and found an IO:Multiplex module for perl. I don't see why someone couldn't make use of it to create some kind of system where you'd do: pg_dump dbname | perl mulitiplexscript device1,device2,device3,devicen No need for postgresql to support it directly. Restoring would likewise just be a reverse operation.