[comp.object] Updates on class taxonomy

vinay@cs.toronto.edu ("Vinay K. Chaudhri") (01/15/91)

Once an object taxonomy has been defined, how often does one need to
change that information ?  Is it reasonable to say that this 
information is equivalent to the schema information in 
relational datbases and thus will be hardly updated ?  

If the updates are required should they be on-line or off-line ?  
How frequent are the updates ?  What are the good examples of such updates ?
Should they be done one at a time or should be permmitted concurrently ?


Your reactions on any of these questions will be highly appreciated.


-- 

---------------------------------------------------------------------------
Vinay K Chaudhri

Email:                                  Mail:

sakkinen@tukki.jyu.fi (Markku Sakkinen) (01/15/91)

In article <91Jan14.165013est.7093@neat.cs.toronto.edu> vinay@cs.toronto.edu ("Vinay K. Chaudhri") writes:
>
>Once an object taxonomy has been defined, how often does one need to
         ^^^^^^^^^^^^^^^ (1)
>change that information ?  Is it reasonable to say that this 
>information is equivalent to the schema information in 
                ^^^^^^^^^^^^^^^^^^^^^^^^ (2)
>relational datbases and thus will be hardly updated ?  
                              ^^^^^^^^^^^^^^^^^^^^^ (3)

By (1), do you mean only the inheritance graph between classes
or the complete class definitions?  If the latter, then you can
well say (2), but that does not necessarily imply (3)!

>If the updates are required should they be on-line or off-line ?  
>How frequent are the updates ?  What are the good examples of such updates ?
>Should they be done one at a time or should be permmitted concurrently ?

Updating the definitions of classes while they have instances
continues to be a hard and important research problem for OO databases.
One not too difficult new paper by Staudt Lerner and Habermann
is in the OOPSLA/ECOOP'90 proceedings: "Beyond Schema Evolution
to Database Evolution".  You can expect to find something in this area
in the proceedings of virtually any recent database-related conference.

Markku Sakkinen
Department of Computer Science and Information Systems
University of Jyvaskyla (a's with umlauts)
Seminaarinkatu 15
SF-40100 Jyvaskyla (umlauts again)
Finland
          SAKKINEN@FINJYU.bitnet (alternative network address)

sakkinen@tukki.jyu.fi (Markku Sakkinen) (01/16/91)

In article <1991Jan15.152723.3862@tukki.jyu.fi> I wrote:
> ...
>One not too difficult new paper by Staudt Lerner and Habermann
>is in the OOPSLA/ECOOP'90 proceedings: "Beyond Schema Evolution
>to Database Evolution".  [...]

Oops!  It should have been "... Database Reorganization".

Markku Sakkinen
Department of Computer Science and Information Systems
University of Jyvaskyla (a's with umlauts)
Seminaarinkatu 15
SF-40100 Jyvaskyla (umlauts again)
Finland
          SAKKINEN@FINJYU.bitnet (alternative network address)

ballou@databs.enet.dec.com (01/16/91)

In article <1991Jan15.152723.3862@tukki.jyu.fi>, sakkinen@tukki.jyu.fi writes:
|> In article <91Jan14.165013est.7093@neat.cs.toronto.edu> vinay@cs.toronto.edu
writes:
|>  [...]
|>
|> >If the updates are required should they be on-line or off-line ?  
|> >How frequent are the updates ?  What are the good examples of such updates
?
|> >Should they be done one at a time or should be permmitted concurrently ?
|> 
|> Updating the definitions of classes while they have instances
|> continues to be a hard and important research problem for OO databases.

Two of the foundation papers in this area are:

      Banerjee, J., W. Kim, H.J. Kim, and H.F. Korth, "Semantics and
      Implementation of Schema Evolution in Object-Oriented Databases,"
      Proceedings of ACM SIGMOD, San Francisco, CA, May 1987.

      Penney, D.J. and J. Stein, "Class modification in the GemStone
      Object-Oriented DBMS," Proceedings of OOPSLA '87, Orlando, FL,
      October 1987.

Nat Ballou
DEC OODB

tma@osc.COM (Tim Atkins) (01/25/91)

In article <91Jan14.165013est.7093@neat.cs.toronto.edu> vinay@cs.toronto.edu ("Vinay K. Chaudhri") writes:
>
>
>Once an object taxonomy has been defined, how often does one need to
>change that information ?  Is it reasonable to say that this 
>information is equivalent to the schema information in 
>relational datbases and thus will be hardly updated ?  
>
IMHO, no it is not like a relational schema in several important ways.
First of all the relational schema is only indirectly representative of
the real world situation being dealt with by applications.  Only indirectly
because it includes no notion of the functional aspects of the problem and
because good relational design requires significant normalization that takes
it even further away from the real world situation.  Relational is a way of 
maximizing access to and security of data.  Second,  relational systems
provide some means of ameliorating the need for change through the use
of views that act somewhat like the data would if it had evolved.  The OO
equivalent is the subclass w/ dynamic binding of message implementations.
While the latter is more powerful, it is by what you wrote a form of schema
change.  In the opposite direction another form of schema change takes place
when further abstraction is employed.   

>If the updates are required should they be on-line or off-line ?  
>How frequent are the updates ?  What are the good examples of such updates ?
>Should they be done one at a time or should be permmitted concurrently ?
>
>
>Your reactions on any of these questions will be highly appreciated.
>
The updates are likely to be extremely frequent in the design and tuning 
periods of a system.  There may be, for some applications, periods where
little or no change is needed.  However, good general purpose classes may
be useful in many applications and may require at least further speciali-
zation as new  applications come online.   The updates should ideally be
satisfiable on a running system.  If this is not the case then OO techno-
logy will not make it in 24 hour environments.  Just supporting all needed
forms of updates is a tough enough problem to occupy the industry for
some time though, particularly in a persistent environment where existing
objects and object identity must be maintained.

- Tim Atkins