90 likes | 256 Views
Databases : Object-Oriented DB. 2007, Fall Pusan National University Ki-Joune Li. Object-Oriented DB. Weak Points of Relational DB Lack of Expressive Power Non 1NF Impedance Mismatch Mismatches between DB and Host Languages Demands for complicated DB in late 1980s
E N D
Databases : Object-Oriented DB 2007, Fall Pusan National University Ki-Joune Li
Object-Oriented DB • Weak Points of Relational DB • Lack of Expressive Power • Non 1NF • Impedance Mismatch • Mismatches between DB and Host Languages • Demands for complicated DB in late 1980s • CAD, GIS, VLSI DB, Multimedia • Need more expressive power • Relational Data Model • Good since it is simple • Bad since it lacks of expressive power
Relational Model: Lack of Expressive Power • Example • Description of Road Network by Relational Data Model • How to compute the shortest path from two points • Navigation by Point number: extremely expensive • Why this problem? : Lack of Expressive Power
Relational Model: 1NF • 1NF: Only Atomic Value in a field • Example Neither very natural,Nor efficient
Relational Model: 1NF • Non-1NF: Any Type for a field • Set, List, Table • NO MORE Relational Algebra • No Selection, No Join etc.. • User-Defined Type • Example OK
Relational Model: Impedance Mismatch • Separation between Data and Program • Data: Relational Algebra: Declarative Approach • Program: Procedural Language like Java and C Totally different approaches • Impedance Mismatch • Difficult to develop Program Mismatch DB
Persistent Object • Objects in OOPL like Java, Smalltalk, and C++ • Persistency: • The states of objects remain after the termination of program • OOPL: Not persistent • If Persistent DB and OO DB • Persistent Object • NO MORE Impedance Mismatch • Functions for DB in language itself • OOPL + DB • Persistent Type • Example • Persistent Smalltalk • Persistent C++ • Persistent Java
Stored Procedure in OODB • Example: Polygon • Data • Methods (Operations) • Intersect, • Contain, • Etc.. Persistent Object Program Program Stored Procedure Data DB Polygon Data Intersect Contain Etc..
Some Important Aspects of OODB • Object Identifier • User-Defined Type • Version Control