Вы находитесь на странице: 1из 3

Revista Informatica Economică, nr.

4 (44)/2007 83

Comparison of RDBMS, OODBMS and ORDBMS


Gheorghe SABĂU, Bucharest, Romania

The presentation of the similarities and differences between relational modeling of data and
the object oriented modeling of data is of great importance both for data base designers and
for users.
By being well acquainted with the relational model and by noting the similarities and differ-
ences between the two approaches to data modeling, designers will be able to turn into ac-
count and to make use of the already acquired experience as an important basis for under-
standing and learning the methodology of designing object oriented databases.
At the time if designers know the similarities and differences between these two approaches
they have the possibility to convert a relational model into an object oriented model and in-
versely.
In our presentation below we will treat RDBMS, OODBMS and ORDBMS comparatively.

omparing the RDBMS with the STUDENT, with object containing informa-
C OODBMS tion about each student.
1.1. Comparing the RDBMS with the It is to be noted that there is the possibility of
OODBMS as far as data modeling is con- converting the object model into a relational
cerned. mode.
The essential distinction between these two In such a situation each class corresponds to
types of data modeling is represented by the a relation, the attributes of a particular class
encapsulation in the object of both is state will become attributes corresponding to a re-
and behavior with the object oriented model, lation and the same time, each object in-
while with the relational model only the state stance in a class will have a corresponding
is evidenced. tuple in a relation.
As we all know a relational database is made While in a relational database the compo-
up of relations, who are sets of tuples, while nents of a tuple must be primitive types
an object-oriented database is made up of (strings, integer, real, etc.), in an object-
classes, which are sets of classes. oriented database the components of an ob-
Thus, a relational database will contain a re- ject may be complex types (sets, tuples, ob-
lation called STUDENT, with tuples contain- jects, etc.). Table 1 presents a comparison of
ing information about each student, while a the main concepts used in object and rela-
relational database will contain a class called tional modeling of data.
Table 1. Comparing OODBMS and RDBMS as far as data modeling is concerned.
Object oriented model Relational Differences
Model
Object Entity The object specifies behavior too
Class of objects Types of Enti- The class of objects includes the
ties common behavior of objects in that
class
Class hierarchy The data base The class hierarchy includes inheri-
scheme tance, while the scheme includes ex-
ternal keys
Class instance Entity, tuple or The instance may have a more restric-
record tive character
Attribute Attribute There are no differences
Relations Relations There are no differences
They have the meaning of descrip-
tions but with the OODBMS the in-
heritance includes both the state and
the behavior
84 Revista Informatica Economică, nr. 4 (44)/2007

Messages/Interface There are none


Encapsulation There is none
Object identifier (OID) Primary key In the relational model if the primary
key is not identified the system gener-
ates an identifier automatically
Inheritance There is none
1.2. Comparing RDBMS with OODBMS as sidering their objectives and other character-
far as their targeted objectives are concerned. istics as it can be seen in table 2.
The difference between the OODBMS and
RDBMS may be also put into light by con-
Table 2. Comparing OODBMS with RDBMS considering their objectives
OODBMS RDBMS
• Main objectives: data encapsulation and inde- • Main objective: ensuring data independence from
pendence. application programs.
• Independence of classes: classes can be reorgan- • Data independence: Data can be reorganized and
ized without affecting the mode of using them. modified without affecting the mode of using them.
• OODBMS store data and methods. • RDBMS store only data.
• Encapsulation: the data can be used only through • Data partitioning: data can be partitioned depending
their classes’ methods. on the requirements of the users and on the specific
users applications.
• Active objects: the objects active. Requests cause • Passive data: the data are passive. Certain opera-
objects to execute their methods. tions, which are limited, can be automatically brought
into use when the data are used.
• Complexity: the structure of data may be com- • Simplicity: users perceive data as columns,
plex, involving different types of data. rows/tuples and tables.
• Chained data: data can be chained so that the • Separate Tables: each relation/table is separate. The
methods of classes may bring about increased per- Join Operator refers data from separate tables.
formance. Structured data such as BLOBS (binary
large objects) are used for sound, image, video etc.
• Non-redundancy of methods: data and methods • Data non-redundancy: data normalization aims at
non-redundancy is achieved through encapsulation eliminating or reducing data redundancy. It is used in
and inheritance. Inheritance helps to reduce the re- the stage of designing the database and not in the stage
dundancy of methods. of developing the applications.
• Optimizing classes: the data for an object can be • RDBMS performance is related to the level of com-
interrelated and stored together, so that they may plexity of the data structure.
all be accessed by the access mechanism.
• Consistent conceptual model: the models used for • Different conceptual model: the model of data struc-
analysis, designing, programming and accessing ture and data access represented by tables and JOINS
the database are similar. is different from the model of analysis, designing and
The classes of objects directly represent the con- programming.
cepts of applications. The project must be converted in relational and access
tables in accordance with SQL.

2. Comparing the RDBMS with the SQL computationally complete, triggers and
ORDBMS support for language objects – Binary Large
When we compare the RDBMS with the Objects (BLOBs) and Character Large Ob-
ORDBMS the following aspects can be jects (CLOBs) – and recursion.
noted: • A RDBMS is characterized by sim-
• An ORDBMS is a relational DBMS plicity and increased stability as compared to
with SQL3 extensions. an ORDBMS, and this fact confers it the
• SQL3 extensions include: row types, quality of being easily used.
user-defined types and user-defined routines, • Traditional RDBMS use B – tree in-
polymorphism, inheritance, reference types dexes to speed access to scalar data. With the
and object identity, collection types (AR- ability to define complex data types in an
RAYs), new language constructs that make ORDBMS, specialized index structures are
Revista Informatica Economică, nr. 4 (44)/2007 85

required for efficient to data. Some whereas ORDBMSs try to add richer data
ORDBMSs are beginning to support addi- types to a relational DBMS.
tional index types, such as generic B-trees, Conclusions
R-trees (region trees) for fast access to two – From the literature we can draw some con-
and three dimensional data, and the ability to clusions regarding RDBMS and OODBMS:
index on the output of a function. • Relational databases have as their
• A mechanism to plug in any user – objective to ensure data independence. Nor-
defined index structure provides the highest malized data are separated from processing
level of flexibility. and the processing corresponding to satisfy-
• Both DBMSs are characterized by ing informational requirements need not be
simplicity of development owing to the fact totally pre-defined, thus accepting ad-hoc re-
that it provides independence of data from quirements too.
applications good for simple relationships. • Object oriented databases have as
• For RDBMS there is SQL2 standard their main objective encapsulation, being
(ANSI X3H2) and for ORDBMS there is stored together with the data and the meth-
SQL3 standard. ods. They are inseparable. It is said that we
• RDBMS is a mature software prod- have to do with an independence of classes
uct while ORDBMS is an immature product and not with an independence of data.
(extensions are new, thy are still being de- • An OODBMS and not an RDBMS
fined and are relatively unproven. is needed when in the reference applications
• As far as the support for object – we have to do with complex data.
oriented programming is concerned, with the • The object oriented database mar-
RDBMS, programmers spend 25% of coding kets will continue to develop, but they will
time mapping the program object to the data- still (represent) only a fraction of the tradi-
base, and with the ORDBMS, the support for tional databases.
object-oriented programming is limited • It is appreciated that RDMSs hold
mostly to new data types. the largest part of the largest part of the data-
3. Comparing OODBMS with ORDBMS bases. But the prospect is that they will still
When we compared OODBMS with co-exist for a long time future with the
ORDBMS some conclusions can be drawn. OODBS.
• OODBMSs and ORDBMSs both References
support user-defined ADTs, structured types, 1. Atkinson M., Bancilhou F. – Object Oriented
object identity and reference types, and in- Database System Manifest. In Proc. 1st Int. Conf.
heritance; Deductive and Object Oriented Database, Kyoto,
Japan, 1989.
• They both support a query language
2. R.G.G. Cattell – Object Data Management.,
for manipulating collection types; Ed. Addison Wesley, 1994.
• ORDBMSs support an extended 3. Codd E.F. – Is your DBMS really relational?,
form of SQL, and OODBMSs support Computerworld, oct the 14th 1985.
ODL/OQL; 4. Codd E.F. – Does your DBMS run by tech
• ORDBMSs consciously try to add rules?, Computerworld, 21 oct. 1985.
OODBMS features to an RDBMS, and 5. C. J. Date – An Introduction to Database Sys-
OODBMS in their turn have developed query tems. Eight Edition, Pearson Addison-Wesley,
languages based on relational query lan- 2004.
6. Thomas Connolly, Carolyn Begg – Database
guages;
to Design, Implementation and Management.
• Both OODBMSs and ORDBMSs Fourth Edition, Ed. Addison-Wesley, 2005.
provide DBMS functionality such as concur-
rency control and recovery;
• OODBMSs try to add DBMS func-
tionality to a programming language,

Вам также может понравиться