This is a discussion on Re: OT: Somewhat.... KSAM equivilent on the 9000 - Hewlett Packard ; Paul asks: > I'm still straddling between the 3000 and 9000 worlds, and I am still > not fully embracing UNIX because I'm convinced it is a cruel joke. > > I am loving Eloquence on the 9000 because it ...
> I'm still straddling between the 3000 and 9000 worlds, and I am still
> not fully embracing UNIX because I'm convinced it is a cruel joke.
> I am loving Eloquence on the 9000 because it gives me that warm fuzzy
> feeling of home with Image on the 3000, but I am trying to figure out
> what is the equivalent of a KSAM file on UNIX?
> Are KSAM files truly not needed?
> I'm trying to setup a quick cross reference file for simple data (five
> data items), but 10s of thousands of records. Sure I can setup a flat
> file, but serial reads of that seem like it would be costly.
We asked ourselves the same question several years ago when we first began
migrating QueryCalc to the 9000. We made heavy use of KSAM files on the
HP3000, and for a while I thought our goose might be cooked without KSAM.
But then I began to analyze the KSAM files that we and our customers were
generating. A file 15,000 records in length was a real outlier. Most of the files
were only a few hundred to a couple of thousand records in length, so I began
test serial reads on files that size in UNIX. Let me say that I was pleased to
find that data extraction was at least as fast (if not significantly faster) than
doing indexed KSAM retrievals on the HP3000.
For files of a very small number of records, a b-tree-, KSAM-like index actually
slows you down. Where the index pays for itself in spades is when it's applied
to files containing millions of records. But for intermediate file sizes,it's a bit of
Ultimately, we just went with serial reads. We were still able to get subsecond
response times, and in the end, that's all that matters.
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *