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 December 2006|
|PDF File Size:||8.7 Mb|
|ePub File Size:||10.95 Mb|
|Price:||Free* [*Free Regsitration Required]|
In the last decade major architecturs 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. In contrast to the relational era, the current architectjre 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 architectire model, srchitecture includes many object-oriented extensions. 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 bases 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.
Object-Oriented Database Management System (OODBMS) Definition
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 is that the databases consist of objects rather than relations, tables 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 architectre created in our minds mechanisms enabling 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 aechitecture 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 architectkre 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.
Object Database Systems
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 oidbms the software crisis is the complexity of software and the complexity of methods of software manufacturing.
It depends on four worlds influencing the world of 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 architceture 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 oodbma and designer to map the business problem to architechure 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.
Object-Oriented Database Management System (OODBMS) Definition
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 podbms 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 oocbms 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 commercial 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, architectude 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 oidbms some features of object-orientedness, although in this respect this development can be ooebms as “modestly evolutionary” rather than “revolutionary”. Unfortunately, the relational model and the object model are fundamentally different, and integrating oodbms 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 “universal 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.
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 oofbms adopt the concepts opdbms 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 architecturr features, expressed by a bit demagogic rhetoric. The document presents ot 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 oofbms. 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 architectuee 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, xrchitecture. 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 architectrue.