Re: Generic Modeling

From: Brian Inglis <>
Date: Thu, 03 Jan 2002 10:58:15 -0700
Message-ID: <>

On 2 Jan 2002 18:52:08 -0800, (James) wrote:

>> Writing object database is easy,
>An oodb should be more difficult since it is trying to represent and
>manipulate data in a more generic manner than in rdbs. For example in
>XDb, one can create 10 instances of 10 classes and arrange the
>resulting 100 objects in any imaginable hierarchy/arrangement (by
>simply cutting and pasting). An rdb is not as flexible.
>> the only thing you need to master is recursion.
>Does this bother you?
>> No query parser,
>When the above 100 objects can be arranged as randomly as in an oodb
>(or generic table design), traditional sql does not apply very well
>since it relies on rigid structuring of the data. Object based "sql"
>does exist but it is not a powerful as traditional sql (yet).
>> no optimization
>An oodb can be 10 to a 100 times fasters, especially when dealing with
>complex/variable data. Would you like to benchmark a specific example?
>Last time I couldn't get you to engage, you were very recursive.
>> no concurrency.
>You are correct. Currently none in XDb. Can't say for others.
>> After serializing the whole memory to disc
>> you just claim that you have (yet another) object database!
>This must be very troubling since the concept of representing data as
>objects is unimagineable.
>> Therefore, when you want to search for all broken(?) standard components
>> you write:
>> for( Country a = countries.first(); a!=null; ) {
>> State[] states =a.states;
>> for( State s = states.first(); s!=null; ) {
>> City[] cities = s.cities;
>> // 10 more levels to get to standard equipment
>> }
>> }
>> ..
>If the data fits "neatly" into rectangle tables and the relationships
>are rigid, then the traditional use of an rdb is best. Generic
>modeling or an oodb begins to show advantage as data complexity and
>variabililty increases. The above rigid loops would work well on data
>that have a rigid structure.
>But if the equipment are scattered at various levels of the hierarchy
>and some of the levels are missing and the situation is different for
>each manufacturer the above rigid loops don't provide a generic
>solution. With a generic table design or an oodb approach, it is more
>often possible to write generic solutions.
>If you can implement a generic deep instantiate as in XDb using an
>rdb, I would like to see it. (
>If you can implement a generic deep copy as in XDb using an rdb, I
>would like to see it. (
>If you can implement a generic property rollup as in XDb using an rdb,
>I would like to see it. (
>The traditional use of rdbs is the best solution for most problems,
>but if you try implement the above you may begin to see the need for
>generic modelling/oodb approach.

OODB == old Codasyl network database in sheep's clothing consistency, maintenance and scalability are a bear don't hold your breath for solutions -- RDBs are available

Thanks. Take care, Brian Inglis Calgary, Alberta, Canada

-- 	(Brian dot Inglis at SystematicSw dot ab dot ca)
    fake address		use address above to reply
						spam traps
Received on Thu Jan 03 2002 - 18:58:15 CET

Original text of this message