1 / 25

The Object-Oriented Database System Manifesto

The Object-Oriented Database System Manifesto. by Engin Deveci. Three Points Characterize. Lack of a common data model Lack of formal foundations Strong experimental activity. Must Satisfy Three Criteria. Should be a DBMS Should be an object oriented system

cillian
Download Presentation

The Object-Oriented Database System Manifesto

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Object-Oriented Database System Manifesto by Engin Deveci

  2. Three Points Characterize • Lack of a common data model • Lack of formal foundations • Strong experimental activity

  3. Must Satisfy Three Criteria • Should be a DBMS • Should be an object oriented system • Should be consistent with object oriented languages

  4. Main Features and Characteristics of OODBMS • Mandatory Features • Optional Features • Open Features

  5. Mandatory Features • Features for general databases • Features for object oriented databases

  6. Features for General Databases • Persistence • Secondary storage management • Concurrency • Recovery • Ad-Hoc query facility

  7. Overriding combined with late binding Extensibility Computational completeness Features for Object Oriented Databases • Complex objects • Object identity • Encapsulation • Types and classes • Inheritance

  8. Thou shalt support complex objects Complex Objects • Simple objects • Integer, characters, byte string, boolean, float, vs. • Complex objects • Tuples, sets, bags, lists, arrays

  9. Thou shalt support complex objects Complex Objects Cont’d • Object constructers must be orthogonal • Appropriate operators must be provided

  10. Thou shalt support object identity Object Identity • Object sharing • Object updates

  11. Thou shalt encapsulate thine objects Encapsulation • Interface and implementation • Modularity

  12. Thou shalt support types and classes Types and Classes • Supporting the notion of class • Supporting the notion of type

  13. Thine classes or types shalt inherit from their ancestors Class or Type Hierarchies • Substitution inheritance • Inclusion inheritance • Constraint inheritance • Specialization inheritance

  14. Thou shalt not bind prematurely Late Binding • Overriding • Overloading • Late binding

  15. Thou shalt be computationally complete Computational Completeness • SQL is not computationally complete • Reasonable connection to existing programming languages

  16. Thou shalt be extensible Extensibility • System defined types • User defined types • No distinction in usage • Distinction in low level support

  17. Thou shalt remember thy data Persistence • Data survival • Should be orthogonal • Should be implicit

  18. Thou shalt manage very large databases Secondary Storage Management • Index management • Data management • Data clustering • Data buffering • Access path selection • Query optimization

  19. Thou shalt accept concurrent users Concurrency • Same level of service • Harmonious coexistence • Atomicity of a sequence of operations • Controlled sharing • Serializability of operations

  20. Thou shalt recover from hardware and software failures Recovery • Back to coherant state of data • Processor failures • Disk failures

  21. Thou shalt have a simple way of querying data Ad Hoc Query Facility • Should be high level • Should be efficient • Should be application independent

  22. No Consensus • View definition and derived data • Database administration utilities • Integrity constraints • Schema evolution facility

  23. Optional Features • Multiple inheritance • Type checking and type inferencing • Distribution • Design transactions • Versions

  24. Open Features • Programming paradigm • Representation system • Type system • Uniformity

  25. Conclusion • Thou shalt question the golden rules Q&A

More Related