Re: Hierarchical design question

From: Dave Mausner <dmausner_at_brauntech.com>
Date: Mon, 30 May 1994 02:56:53 GMT
Message-ID: <dmausner.4.0015F354_at_brauntech.com>


In article <2s64bi$57e_at_louie.udel.edu> connolly_at_stimpy.eecis.udel.edu (Thomas Connolly) writes:
>I am currently investigating how to migrate a rather large hierarchical
>based application running on a DEC VAX to a relational DBMS. The
>application consists of around 3 million lines of PL1/Fortran code
>going against a Codasyl (NEXUS) database. It is extremely fast and
>complex.
>... Perhaps the biggest concern with this idea is in the area
>of performance - assuming for a moment that we could mimmick the
>existing hierarchical, record-at-a-time architecture - I do not
>have a good feel for how this will perform (I guess I'm scared to
>death that it will choke on the heavy volume of transactions).

codasyl-type applications generally expect that a header or master "record" will be sequentially followed by a set of detail "records". my interpretation of the various record types is to create one relational table for each type, and supply the detail tables with appropriate foreign keys. unfortunately for your application, although the data is now relational, you can no longer slip out the sequential i/o nature of the original and slip in relational "i/o".

at the least, you would wind up joining more data than you originally read, hence more i/o would take place. OTOH, if you rewrote the i/o as separate, coordinated queries, you could retrieve the former record types upon command and perhaps improve upon the original logic.

it is doubtful to me that such a conversion would "choke", but i would not expect a brute-force conversion of vsam or isam data to relational tables to yield perfect efficiency on the first try. you could write a book about the effort it would take to improve the speed of the 1960's approach using relational methods, all other conditions being equal. relational is intended to improve the flexibility of viewing the data, but it is only inherently slow when the relations are poorly designed. need i say that other opinions exist? regards,

--
Dave Mausner, Sr Consultant, Braun Technology Group, Chicago.
Received on Mon May 30 1994 - 04:56:53 CEST

Original text of this message