Abstract. This paper reviews the state of the art of Object-Oriented Database Management. Systems (OODBMS). The objective of this paper is to provide the. Some basic questions about OODBMS architecture: Do all OODBMS systems have a common set of underlying principles? (In the same way as relational DBMS. OO+DBMS=OODBMS which clearly shows that it is mixture. of both object .. affect the entire architecture of the database but in OODBMS this.
|Published (Last):||18 July 2005|
|PDF File Size:||20.58 Mb|
|ePub File Size:||6.59 Mb|
|Price:||Free* [*Free Regsitration Required]|
In the last decade major changes have occurred in the database domain, as the result of increased interest to non-traditional database applications such as multimedia, office automation, CAD, CASE, GIS, Web databases, and others.
Object-Oriented Database Management System (OODBMS) Definition
In contrast to the relational era, the current database world is more diverse and showing contradictory tendencies. On the one hand, vendors of popular relational database management systems DBMSsuch as IBM, Informix and Oracle, extend their products with new capabilities, including support for non-traditional data types text, graphics, sound, video, spatial data, etc. The products are called “object-relational”. Substantial effort is devoted to database standards.
The emerging SQL3 standard has roots in the relational model, but includes many object-oriented extensions.
Object-Oriented Database Management System (OODBMS) Definition
A lot of research and development from the industry and academia is devoted to various aspects of object-relational and object-oriented DBMS. The presentation is a short overview of these directions and tendencies. The field of object-oriented databases object oodbmd has emerged as the convergence of several research and development threads, including new tendencies in object-oriented programming languages, software engineering, multimedia, distributed systems, Web, as well as the traditional relational database technologies.
Actually, however, there is a high degree of confusion concerning what “object-oriented” means in general and “object base” in particular. For many people the term “object-oriented” is a kind of a commercial buzzword with a lot of meanings.
Many professionals are trying to assign strong, technical criteria to this buzzword, allowing us to distinguish the “object-oriented” systems from others.
What makes up object-orientation in databases? There are several views. The most popular view architectre that the databases consist of objects rather than relations, architecthre or other data structures. The concept of “object” is a kind of idiom or metaphor that addresses the human psychology and the way humans perceive the real world and think. James Martin wrote [Mart93]: This is of course a nice metaphor to make evidence that millions years of the evolution have created in our minds mechanisms architdcture us to isolate objects in our environment, to name them, and to assign to them some properties and behaviour.
Object-orientedness in computer technologies, from the psychological point of view, is founded on inborn mechanisms of our minds, as the idea of a computer keyboard is based on the anatomic fact that humans have hands and fingers. Why is object-orientedness important for computer technologies? For many years the professionals have pointed out the negative syndrom that is referred to as “software crisis”. The software crisis can be described as the growing cost of software production and maintenance, the problem with “legacy” obsolete software, very big risk of unsuccessful projects, immature methods of software design and construction, lack of reliability, various frustrations of software designers and producers, and so on.
Together with these negative factors and dangers, there is a growing responsibility of the software, its critical role in a mission of many organizations.
The main factor causing the software crisis is the complexity of software and the complexity of methods of software manufacturing. It depends on four worlds influencing the world architecturw software, Fig. Factors of the software complexity. The worlds presented in Fig. The object-orientedness, which follows the natural human psychology, is considered as a new hope to reduce the complexity; in consequence, to reduce the software crisis.
This is supposed to be achieved by reducing the distance between the human perception of the problem business domain, an abstract conceptual model of the problem domain expressed, e.
Minimizing the distance between these three views of designers’ and programmers’ thinking referred to as “conceptual modeling” is considered the major factor reducing the complexity of the analysis, design, construction and maintenance of the software.
Three views in the conceptual modeling of software. Object-oriented models offer notions that enable the analyst and designer to atchitecture the business problem to the abstract conceptual schema better. There are several semi-formal notations and methodologies e. On the other hand, object database systems offer similar notions from the side of data structures, hence the mapping between the conceptual model and data structures is much simpler than in the case of the traditional relational systems.
Object database systems combine the classical capabilities of relational database management systems RDBMSwith new functionalities assumed by the object-orientedness. The traditional capabilities include: The wave of pure object-oriented DBMS, which abandons assumptions of the relational database model, started inwhen D.
Copeland presented a database management system with the data model of Smalltalk. This shift of the database paradigms caused a hot debate between advocates of relational systems, having already a strong position on the market, and proponents of pure object-oriented database management systems OODBMS.
At that time the oodhms model eventually won, but some of its promises have never been accomplished. Codd’s 12 rules of relational systems have notoriously been violated by vendors of commercial systems, which have attached the buzzword “relational” to offered database products, sometimes with little technical justification. Nevertheless, despite a lot of trade-offs and commercial confusion, the relational model has been successful as the conceptual and technical basis of many achitecture relational systems.
This especially concerns SQL-based systems. The current paradigm of researchers and vendors from the relational world is conservative, if one concerns the root idea of relational systems, but innovative concerning particular capabilities that were built into new versions of relational systems.
These include the support for multimedia, Web, temporal and spatial data, data warehouses and others. The extensions concern also some features of object-orientedness, although in this respect this development can be described as “modestly evolutionary” rather than “revolutionary”.
Unfortunately, the relational model and ooebms object model are fundamentally different, and integrating the two is not straightforward.
Current object-relational databases are commonly perceived as eclectic and decadent, with a lot of ad-hoc, random solutions, with no conceptual basis. This vision is of course negated by vendors of these systems, who invented the buzzword qrchitecture server” as the stereotype of “doing everything both with relations and objects, and more”.
Despite the fact that differences between, e. This is the sign showing where the vendors see the real danger for the commercial position of relational DBMS and their successors. Actually, however, it is difficult to discuss which idea will be the winner and if there can ever be a winner.
Few people realize that relational databases store still ca. Hence, there is enough room for the coexistence of both ideas.
Object Database Systems
The rest of the paper presents the key topics related to object-oriented databases that are currently discussed in the database world. Object-oriented database models adopt the concepts of object-oriented programming languages.
Actually, there is no agreement concerning their precise definition. The definitions presented below are most typical [Loom95]. Technical details assumed by designers in particular models, languages and products make concepts with the same name class, type, ADT, etc. Lack of commonly accepted definitions concerning the object model is considered a weakness of object-orientation in databases.
The history of database manifestos started in mid ties, when E. Codd, the father of the relational model, published 12 rules of a true relational system. Current post-relational commercial concepts are going even farther and farther from the ideal.
One strong argument used by the relational camp was that there was no reasonable definition of the object-database concept “you guys don’t even know what you’re talking about”, object-orientation presents “silly exercises in surface syntax”. The object database manifesto has determined basic rules of object database systems, which abandon the relational model. The characteristics of an object DBMS were separated into three groups: The object database manifesto was unacceptable for the conservative wing of the relational camp.
The competitive “The Third Generation Database Systems Manifesto” [Ston90] by Stonebraker et al postulates retaining all practically proven features of relational database systems notably SQL, as an “intergalactic dataspeak” and augmenting them modestly by new features, among them with some object-oriented concepts.
The manifesto is a random extract of primary and quite secondary database features, expressed by a bit demagogic rhetoric. The document presents some naivety of the quite famous authors. The presented arguments are very difficult to accept by the wide community of database professionals. SQL statements sent by clients and one or more clients sending requests to the server. More advanced are the three-tier architecture and multi-tier architecture, where layers tiers of a user interface and a database are separated by one or more layers devoted to business logic.
It shows dependencies between basic functional components of a system. Object Data Management Group ODMG was founded by a group of startup companies who thought that traditional standard-making processes were slow and cumbersome and that they could do better.
They got their first publication ODMG out very quickly, then discovered that making real standards is actually very hard work. They also set expectations far too high, by announcing that all the members were committed to delivering conforming implementations by the end of Few professionals believed them, but of course, it was part of the game.
Till now, there is no evidence that except O2 the standard is fully implemented by other ODMG members. There are also doubts what it means to be “compliant” with the standard, as the compliance criteria remain undefined. Moreover, the standard still presents a moving target, as currently three versions are released and a next version is announced. The standard is far to be complete especially concerning the semantics and functionality of defined languages and contains many bugs and inconsistencies.
This suggests that the standard is too early and immature, but probably, from the point of view of the commercial competition, this is another part of the game. On the other hand, we must realize that the task undertaken by ODMG was obviously difficult. Although probably the standard will not fulfill all expectations, it already plays an important role of integrating research and development efforts devoted to object bases.
Currently, many projects both in industry and academia are going along the lines that were determined by the standard. Even if these projects take a critical position on the standard, it becomes a departure point for various comparisons, improvements and extensions. For this reason the standard is considered very important for future object bases.
This caused some critique of the standard [Rupp99] even by those professionals, who generally support the object-orientation in databases.
Nevertheless the interest to the standard from wide academic and industrial communities creates a big hope that further standard releases will be much improved. They typically provide permanent, immutable object identifiers to guarantee integrity. In comparison to their relational peers, OODBMS are well suited for handling complex, highly interrelated data, particularly in cross-platform and distributed environment.
This is due to the new techniques, such as new caching methods, pointer swizzling, navigation via pointer links instead of performing joins, shifting processing on the client side, and others. The above data could be obsolete, as almost each month the market configuration is changing. There are actually many ways to extend the relational model, however, the one chosen by object-relational database vendors is very relation-centric. A database still consists of a set of tables. A number of object features are provided as an extension to this core relational model multi-row tables, references between rows, inheritance between tables, etc.
At this time, there is no standard for the object-relational model and each vendor has own object extensions. They exclude portability and even a common conceptual and didactic basis.