[comp.databases] Anybody Know anything About Pick Operating System?

nick@aimed.UUCP (Nick Pemberton) (08/18/89)

[I tried this via email; didn't work (bounced) soo now y'all get to
 read it... ]

> Does anybody out there in the land of data bases know anything about
> the Pick operating system and its data base structure?
> 

I could tell you a great deal about PICK - we operate several pick 
machines, and we have a resident prime expert (ross@aimed.UUCP) 

True Pick is essentially an operating system built around a database.
Everything in pick revolves around files (which are vaguely similair to
directories). Files store within them *items*, which are the equivalent
of files on unix. The difference is that the files store items in them
using scatter-storage, or hashing. One must specify the modulo, or number
of buckets, in a file based on how much is likely to go in a file.

Files may have pointers to files within them, and this is is how the system
is built: The Os knows of one file, SYSTEM, which is like the root directory
under unix. All accounts are files pointed to within SYSTEM, and all accounts
then have their own structure beyond that. 

There is no limit to how many items may be in a file, since if a bucket
overflows, another frame (block) is linked to the bucket. System performance
degrades if buckets are allowed to overflow much, because there is only one
hash done, and then the search is linear within a bucket. Rebuilding files
is trivial, and part of the OS.

> We have recently got an HP9000 835S series.  It runs Pick on top of
> HP's Unix (called HP-UX).  We needed pick to be able to run the
> application program we bought, which was originally written for Pick
> in Prime computers.
> 
Be interested to know what that is...

> I am not very much interested in interaction between Unix and Pick,
> but more interested to learn about Pick system and any insight to
> its multivalue field capabilities in its data bases.

Multivalues are actually nothing special - Items, those units that appear
in files, are actually just one big string. They are divided into Attributes,
then into Values, then into subvalues.  This actually works using delimeters.
The OS has a large number of utilities built into for manipulating the string,
placing things between AMs VMs and SVMs.

The only data type on the system is the string. This does carry some overhead,
and makes PICK useless for number crunching, which it was never intended to
be used for.

Feel free to contact me if you need to know more.
--
Nick Pemberton  		 uucp: !{lsuc, uunet!mnetor}!aimed!nick
AIM, Inc			  bus: (416) 429-1085
Toronto, Ontario, Canada         Home: (416) 690-0647