Re: C-ISAM Coding Problem
Posted in 1995
<snip> : All functions are executed successfully except that the : 'dbupdate' takes forever. The more records that are in the file, : the longer the update takes. Using HP's System Monitor (glance), : one sees the disk access and CPU usage climb dramatically during : this wait. : Anyone have some theories or answers as to what might be the : problem and how might I resolve it? Does the file have multiple keys and do any allow duplicates? If yes, are there a lot of records with the same duplicate value? Are you changing the value of one or more of the duplicates when you perform the rewrite? If you answer yes to thes questions, then the rewites should take a "long" time. If you have 200,000 records and one of the keys has a value of either "in the summer" or "in the winter " (14 characters) and your block size is 1024 bytes. You will have about 35 keys per block ((~1000/20) % 66). That means, if half of the records contain one value and half the other, that it takes about 3,333 block to hold the keys. Assuming the read is off of a key other than this one, a rewrite would require about an average of 1666 disk reads. I analysed a situation like this once where the updating of 3000 records required a quarter million disk reads (only 10000 writes). Glen Johnson