Re: Q: Mirroring - what is the better way
Posted in 1998
Pablo Sanchez wrote: > > On Nov 17, 7:35am, Peter Tashkoff wrote: > > Subject: Re: Q: Mirroring - what is the better way > > > > The writes in Informix are performed asynchously in parallel. > What makes you think that the device driver isn't doing the > same? The SCSI bus can handle multiple requests and have > many requests outstanding: command tag queuing. > I find it extremely hard to believe that Informix (or any > other vendor s/w) could match the h/w vendor's *own* > engineers. Furthermore you add an additional layer of > software at the *user* level so you end up with less > performance. But hey, if that's okay with you, go for it. > I'm consistently amazed how many people swallow the "Informix > Line" with no question: > > o what? support needs to dial in to fix my db? ahm, > okay, I'll buy support. > o what? informix knows the hardware better than > HP/Sun/SGI's engineer's? oh, okay... On this last actually they often do (rumor has it that the HP IO system is much better thanks to Informix engineers). Rumor aside, Hardware mirroring tends to be fastest on raw read/write tests and most hardware mirror systems include the same optimizations that Informix mirroring does. OS/software mirroring tends to be slightly slower than Informix mirroring on all of the benchmarks that I have seen but not enough to affect a decision. There are several OS mirror systems that DO NOT include the read/write optimizations that Informix uses and update both disks in lockstep rather than asynchronously, eliminating the possibility of reading from one side while writing to the other. Most can split reads, but not all (Ultrix could not). However, only Informix mirroring can be taken advantage of by the PDQPRIORITY and Informix optimizer. If Informix knows that there is a mirror extra threads will be launched and more parallelism is used. Art S. Kagel I have done some testing on a database with and without mirroring. The tests were performed on the following system: DEC Alpha The development machine is an AlphaServer 2000 4/233 which had the following: (2) Alpha 233 MHz CPUs 128MB Memory (1) 2GB root disk (1) 4GB home/tmp disk 72GB of RAID 5 disks (1) DLT tape drive (20GB capacity at least) (1) Ethernet Controller (1) FDDI Controller Database consisted of 80 tables 6 GB is the size of the database The test consisted of running the most frequently used stored procedures that our application runs. We used scripts running the stored procedures. We ran the stored procedures individually and then we added users in increments of 20. We used a warm-up period so the SPs were cached. The results were roughly the same until we got to the 40 user mark at that point the database with mirroring performed 20% better than the same database without mirroring. The continued until the mirrored database was running twice as fast at 80 users as the unmirrored ran at 80 users. I was very suprised to say the least. Robert robert_wines@emsinfo.com