Re: Super-fast Hardware for INFORMIX/XENIX
Posted in 1993
->From: satish@terminus.ericsson.se (Satish Popat)
->Subject: Super-fast Hardware for INFORMIX/XENIX
->Date: 3 Mar 93 11:20:30 GMT
->Reply-To: satish@terminus.ericsson.se (Satish Popat)
->Organization: Camtec Electronics (Ericsson), Leciester, England
->
->I wonder if any INFORMIX/UNIX/Hardware expert out there can help me choose an
->optimised hardware configuration to get the best out of INFORMIX
->standard-engine.
->
->I have a PC application utilising SCO-XENIX and INFORMIX-SQL/ESQL-C 2.1.3. The
->application is quite dependent on the database and the performance of the
->system is directly linked in with the speed of the database access. Hence,
->what I am looking for is information on how INFORMIX accesses the database so
->I can choose disk controller/drive which can support the way INFORMIX works.
->
->Some information on the databse itself. The total size of the databse is
->approximately 40MB, the largest table being 10MB. The row size vary from 40
->bytes to 800 bytes. The update/inserts to the tables can occur from screen
->forms and ESQL/C applications. There are regular deletes of rows from tables.
->The updates/inserts/deletes frequently affect the same rows in the database.
->
->The configuration I have been recommended is a 66Mhz 486DX with 128k RAM Cache
->and 16Mb SIMMS Memory. For the disk I can choose either 340Mb SCSI hard drive
->with a fast access speed or twin 210Mb IDE disk with a built-in cache. I
->understand that its the performance of the disk that will the difference to
->the overall speed of the system, I need to decide whether to go fro SCSI drive
->with a faster access to the database or the IDE which has a built-in cache
->(which can presumably store recently affected rows and hence the next reference
-> to the same rows do not require another disk access). I guess the ideal
->solution is to go for a fast access SCSI with a built-in cache but the
->hardware supplier tells me that you can not buy this.
->
->Any information appreciated.
->
->--
->Satish Popat
->Ericsson, England, Tel +44 533 537534
->
Working on the assumption that you can separate the files (tables) in your
database, I would strongly suggest going with the two 210Mb drives, rather
than the single 340Mb drive. Where you have repeated access to table A,
table B, table A, table B, etc., place table A on one drive, table B on the
other. (Technique given below.) By reducing head contention on your disk(s),
you reduce head seek time, by far the largest part of 40 to 800 byte data
transfers. Disk caching obviously helps, but only does part of the job.
To change the placement of your database files:
1. After creating your database, use:
SELECT tabname, dirpath FROM systablesto determine the file names used to contain your various tables. When
dirpath contains only the filename (no path), then Informix uses DBPATH to
find the files for the table. When dirpath contains a complete pathname,
Informix uses that to locate the files.
2. Copy your choice of files from the name.dbs directory into some prepared
directory on the other disk drive. Copy both the name.dat and name.idx
files for the selected tables. Also copy the name.lok file, if your system
uses such files.
3. For each moved table, use:
UPDATE systables SET dirpath = "new path info"
WHERE tabname = "moved table"to tell Informix the location of the moved table.
In version 2.10.0x of ISQL, you can still update the system tables. This
is prevented in later versions; I'm not sure just when the lockout starts.
Regards,
Alan
+------------------------------+---------------------------------------+
| R. Alan Popiel | Internet: alan@den.mmc.com |
| Martin Marietta, LSC | ( Please note: My opinions do not ) |
| P.O. Box 179, M/S 5422 | ( represent official Martin policy. ) |
| Denver, Colorado 80201-0179 | Voice: 303-977-9998 |
+------------------------------+---------------------------------------+