Re: Object-relational impedence
Date: Mon, 17 Mar 2008 17:05:15 +0000
> On 2008-03-16, S Perryman <q_at_q.com> wrote:
>>For the real-world systems involving "variant records" that I have worked
>>on (100+ different record types, 100+ different property types) your table
>>is merely a global variable from hell (as evidenced by the several telecoms
>>systems that used the same approach in the 1990s and ended up being a
>>lifetime rewrite and rebuild job whenever types and properties came and
> If you build a system around something like that, you are crazy.
How *dare* you criticise the mighty "table-oriented" programming !!?? :-)
> If it is a given that you have to deal with, all you can do is treat it as > messages and parse them to put the information you need into sensible > structures. This is probably true for a much smaller number of variants.
The system was just a nightmare (C, Oracle etc) . A relational *data* base was completely the wrong impl technology for the problem.
And the developers could not be blamed for anything that they wrote (I saw the code) .
Their DB schema was normalised etc as expected (each type had a set of attribute properties, those properties could be sets, sequences, record types, collections of refs to instances of other types etc) .
The performance of the system (meta-type checking, property id retrieval, retrieving messages from real equipment and putting property info into the correct tables etc) was just dire as a result of the operational sequence.
And this was for a system that only represented a manager-side view of a network of a few hundred equipment instances. If this approach had been used for subsequent systems I worked on (the equipment-side view, for a network of *500,000* telephone lines) , the developers would have been shot.
It was such dis-crediting of RDBMS at the time (1991-1995) that led to the rise of OODBMS in the telecoms arena (at that time OODBs only had a foothold in the CAD/CAM arena) . The performance difference was orders of magnitudes.
But as time has shown, the one thing that OODBs have not been good at is the routine application of relational expressions to an object base. OODBs gave us some goodies but not what IMHO is the most fundamental aspect of the Relational model.
So there is a problem.
Some of us need a relational "X" base, where X can be entities with data values only (ie the typical RDBMS) , and/or X can be objects with behaviour.
What is required to get both, and the reasons why we haven't to date, have been (for a few here anyway) discussed as per the thread subject line.
Steven Perryman Received on Mon Mar 17 2008 - 12:05:15 CDT