Object-oriented Database Management Systems (ODBMS or OODBMS)offer persistent storage for object data, often with directbindings to object-oriented programming languages. They distinguishthemselves from relational databases (RDBMS)in the following key points:
- Complex objects can be stored without segmentation:
- RDBMS require data to be normalized to avoidredundancies. This means that the values belonging toone logical unit (the object) are often spread over several databaserelations. To access the whole object or itsinterrelationships with other objects severaljoins may be necessary. But joins are one of the most costlyoperation in the relational model and thus traversalsof object structures consisting of thousands of objects become tooslow for applications like e.g. CAD. Also, storing an objectwithout segmenting it eases clustering of the database.
- User definable abstract data types(the classes):
- RDBMS only allow to model and store data, the logicfor handling this data remains wholly in theapplications using the database (this is not exactlytrue for active databases, though). ODBMS on theother hand allow to incorporate the behavioral aspects of the datainto the database itself which can ease consistency maintenanceand behavior updates, and allows additional transaction models.
- Object identity is inherent in the data model:
- RDBMS often introduce artificial keys into thedatabase model to ensure different entities are representedas different even though all 'natural' values are the same (e.g. twopoints at (1,1) in a collection of geometric figures). Theuniqueness and the referential integrity of these artificialkeys have to be ensured explicitly by the database or theapplications, which costs time. In ODBMS object identity is aninherent concept of the language.
- No impedance mismatch between programming language andDBMS:
- The relational query language SQL differs from normalprogramming language in some respects andtherefore makes coupling difficult. For example relational databaseshandle collections of data as sets whereas most programminglanguages can handle only single data items. Also, SQL is notturing-complete, which requires any calculation of a transitive closure(e.g. all ancestors of a person) to be done in theprogramming language.
These differences also allow ODBMS to choose more efficientstrategies in other areas: Transactionmechanism can take advantage of the enhanced knowledge about thesemantics of operations on the data: E.g. two"increment a by n" operations are associative and cantherefore be exchanged when serializing operations; two "Reada, Write a" operations can't. Also versioning andconfiguration management are simpler if objects remain unsegmented.Beginning in the mid 90ties the developers of RDBMS have reacted tosome of these deficiencies and introduced object-oriented conceptsinto their databases leading to so called Object-Relational DBMS(ORDBMS).
A major architectural distinction of ODBMS is between page servers and object servers. In a pageserver architecture the database server handles all data withthe minimum granularity of a (memory) page. The individualobjects are retrieved from these pages only on the client side. Inan object server architecture the database client and servercommunicate on the basis of individual objects. This has majorconsequences on how and where transaction management, recoveryand method execution are implemented. In principle, page serversshould be more efficient for direct object access whereas objectservers should excel if queries can be split between client-and server-side.
Sub Directory
Conferences
FAQs, Help, and Tutorials
Modelling
Products
Projects and Research
Relate Directory
Databases / XML
Programming / Databases
Alias Directory
Informix
Java
Smalltalk
Site
Cetus
Link collection with FAQs, newsgroups, books, and conferences.
Ultima-S: Problems and Decisions
Advantages of a client-server O(R)DBMS versus a mainframe database are shown.
Whatever Happened to Object-Oriented Databases?
Comparison of state and future prospect of object-oriented and relational databases. [PDF file with IEEE Computer version available from same site.]
ODBMS Articles and Products
Articles on object-oriented database systems architecture and technology, product comparison and selection as well as a small FAQ.
Object Data Management Group (ODMG)
Industry association for a common OO data standard. Extracts of ODMG 3.0 as well as some explaining articles are online. Note: Standard is partially superseded by JDO.
Web Search
Object database - Wikipedia, the free encyclopedia
URL : en.wikipedia.org/wiki/Object_database
... object-oriented databases are designed to work well with object-oriented ... Introduction to Object-Oriented Databases. The MIT Press, 1990. ISBN 0-262-11124-1 ...[2008/10/29]
Object-Oriented Databases
URL : www.pmg.lcs.mit.edu/~euisuk/query/oodb.html
Great Object Oriented Links by Hebbel Consulting, Inc. The Database Archive ... A list of Object-Oriented Database Books. OO Bibliography. ...[1996/07/10]
Cetus Links: 16604 Links on Objects and Components / Object-Oriented ...
URL : www.cetus-links.org/oo_data_bases.html
Browsing Object-Oriented Databases over the Web (Carlos A. Varela et al. ... annotated bibliography on object oriented databases (Frank Stajano) Bibliography ...[2007/04/22]
Object Oriented Databases
URL : linuxfinances.info/info/oodbms.html
3. Object Oriented Databases. Object Oriented databases may be characterized ... between flat-file, relational, object-oriented, and tree-structured databases, ...[2008/09/09]
Barry & Associates, Inc
URL : www.odbmsfacts.com
Free, online articles about object-oriented databases along with links to product vendors.[2008/11/30]
Object database articles
URL : service-architecture.com/object-oriented-databases/articles/index.html
Free, online articles that provide a background on object-oriented databases (ODBMSs) ... Object-oriented database management system (OODBMS) definition ...[2008/11/10]
Achieving High Concurrency In Object Oriented Databases
URL : www.facetsodb.com/papers/bretl2006-1.pdf
Today object oriented databases (OODB) are being used in large scale applications in a ... can be used in object oriented databases to achieve high concurrency. ...[2006/04/04]
Next-Generation Object-Oriented Databases
URL : www.artima.com/lejava/articles/javaone_2008_anat_gafni.html
Although object-oriented databases are a topic of curiosity for many developers, ... The way object-oriented databases work, and the way in which they differ from ...[2008/05/10]
Object-Oriented Databases
URL : www.scis.nova.edu/~lloydjam/week09.html
Object-oriented databases provide a unifying paradigm that allows data modeling ... Commercial object-oriented databases started appearing in the late 1980's. ...[2008/11/21]
Object-oriented programming - Wikipedia, the free encyclopedia
URL : en.wikipedia.org/wiki/Object_Oriented
Object-oriented programming (OOP) is a programming paradigm that uses "objects" ... There are also object databases which can be used to replace RDBMSs, but these ...[2008/11/13]
©www.freeaq.net - 2008
POWERED BY FreeBSD 7.0