Re: Dbload performance
Posted in 1995
In article <1995Nov23.222255.4190@phzzzt.atww.org> mfaurot@phzzzt.atww.org (Michael Faurot) writes:
>Rob McAllister (rmcall@on-ramp.ior.com) wrote:
>: 1) Don't create indexes until AFTER dbload is finished.
>:
>: 2) Increase the number of rows in a transaction (see -n option for
>: dbload).
>:
>: 3) Better than 2 is to turn off logging all together during the load.
>
>I do exactly the same thing to do a 17M row import from a 1.7G ascii
>flat file. Using nawk to do some very minor conversions, I write my
>output to a named pipe and then have dbload read from that named pipe.
>I've been able to get between 550-600 rows into my database per second.
>The ASCII rows are about 144 bytes each. The platform is a Pyramid
>MIS-4S running Informix v7.01.
On multi-cpu machines, I've had more fun having multiple dbloads reading
multiple named pipes. I wrote a simple program that splits (round-robin)
an input stream into multiple output streams feeding the dbloads.
Many times a single dbload is cpu-bound vs. disk-bound. I did this
on a 16 processor Sequent and was amazed at the increase.
Scott