Nothing Special   »   [go: up one dir, main page]

RDBMS

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

RELATIONAL DATABASE MANAGEMENT SYSTEM Edgar F. Codd at IBM invented the relational database in 1970. Referred to as RDBMS, the relational model extended two previous database systems, the hierarchical and the network models. After Codds development, prototype RDBMS were developed at IBM and UC-Berkeley, and several vendors were offering relational database products shortly thereafter.

Page 1 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

The relational model is based on the structure of a database. A database is simply a collection of one or more relations or tables with columns and rows. The use of set theory allows for data to be structured in a series of tables that has both columns and rows. Each column corresponds to an attribute of that relation, while each row corresponds to a record that contains data values for an entity. The main elements of RDBMS are based on Ted Codds 13 rules for a relational system, the concept of relational integrity, and normalization. The three fundamentals of a relational database are that all information must be held in the form of a table, where all data are described using data values. The second fundamental is that each value found in the table columns does not repeat. The final fundamental is the use of Standard Query Language (SQL). Benefits of RDBMS are that the system is simple, flexible, and productive. Because the tables are simple, data is easier to understand and communicate with others. RDBMS are flexible because users do not have to use predefined keys to input information. Also, RDBMS are more productive because SQL is easier to learn. This allows users to spend more time inputting instead of learning. More importantly, RDBMSs biggest advantage is the ease with which users can create and access data and extend it if needed. After the original database is created, new data categories can be added without the existing application being changed. There are limitations to the relational database management system. First, relational databases do not have enough storage area to handle data such as images, digital and audio/video. The system was originally created to handle the integration of media, traditional fielded data, and templates. Another limitation of the relational database is its inadequacy to operate with languages outside of SQL. After its original development, languages such as C++ and JavaScript were formed. However, relational databases do not work efficiently with these languages. A third limitation is the requirement that information must be in tables where relationships between entities are defined by values. Today, the relational model is the dominant data model as well as the foundation for the leading DBMS products, which include IBMs DB2 family, Informix, Oracle, Sybase, Microsofts Access and SQL Server, as well as FoxBase and Paradox. RDBMS represent close to a multibillion-dollar industry alone.

Codd's 12 rules Codd's 12 rules are a set of thirteen rules (numbered zero to twelve) proposed by Edgar F. Codd, a pioneer of the relational model for databases, designed to define what is required from a database management system in order for it to be considered relational, i.e., an RDBMS. They are sometimes jokingly referred to as "Codd's Twelve Commandments".

Page 2 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

Codd produced these rules as part of a personal campaign to prevent his vision of the relational database being diluted, as database vendors scrambled in the early 1980s to repackage existing products with a relational veneer. Rule 12 was particularly designed to counter such a positioning. In fact, the rules are so strict that all popular so-called "relational" DBMSs fail on many of the criteria. Rule 0: The system must qualify as relational, as a database, and as a management system. For a system to qualify as a relational database management system (RDBMS), that system must use its relational facilities (exclusively) to manage the database. Rule 1: The information rule: All information in the database is to be represented in one and only one way, namely by values in column positions within rows of tables. Rule 2: The guaranteed access rule: All data must be accessible. This rule is essentially a restatement of the fundamental requirement for primary keys. It says that every individual scalar value in the database must be logically addressable by specifying the name of the containing table, the name of the containing column and the primary key value of the containing row. Rule 3: Systematic treatment of null values: The DBMS must allow each field to remain null (or empty). Specifically, it must support a representation of "missing information and inapplicable information" that is systematic, distinct from all regular values (for example, "distinct from zero or any other number", in the case of numeric values), and independent of data type. It is also implied that such representations must be manipulated by the DBMS in a systematic way. Rule 4: Active online catalog based on the relational model: The system must support an online, inline, relational catalog that is accessible to authorized users by means of their regular query language. That is, users must be able to access the database's structure (catalog) using the same query language that they use to access the database's data. Rule 5: The comprehensive data sublanguage rule: The system must support at least one relational language that Has a linear syntax

Page 3 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

Can be used both interactively and within application programs, Supports data definition operations (including view definitions), data manipulation operations (update as well as retrieval), security and integrity constraints, and transaction management operations (begin, commit, and rollback). Rule 6: The view updating rule: All views that are theoretically updatable must be updatable by the system. Rule 7: High-level insert, update, and delete: The system must support set-at-a-time insert, update, and delete operators. This means that data can be retrieved from a relational database in sets constructed of data from multiple rows and/or multiple tables. This rule states that insert, update, and delete operations should be supported for any retrievable set rather than just for a single row in a single table. Rule 8: Physical data independence: Changes to the physical level (how the data is stored, whether in arrays or linked lists etc.) must not require a change to an application based on the structure. Rule 9: Logical data independence: Changes to the logical level (tables, columns, rows, and so on) must not require a change to an application based on the structure. Logical data independence is more difficult to achieve than physical data independence. Rule 10: Integrity independence: Integrity constraints must be specified separately from application programs and stored in the catalog. It must be possible to change such constraints as and when appropriate without unnecessarily affecting existing applications.

Rule 11: Distribution independence:

Page 4 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

The distribution of portions of the database to various locations should be invisible to users of the database. Existing applications should continue to operate successfully : when a distributed version of the DBMS is first introduced; and when existing distributed data are redistributed around the system. Rule 12: The nonsubversion rule: If the system provides a low-level (record-at-a-time) interface, then that interface cannot be used to subvert the system, for example, bypassing a relational security or integrity constraint. Object-Oriented Database Management System To combat the limitations of RDBMS and meet the challenge of the increasing rise of the Internet and the Web, programmers developed object-oriented databases in the 1980s. The main objective of ObjectOriented Database Management Systems, commonly known as OODBMS, is to provide consistent, data independent, secure, controlled and extensible data management services to support the object-oriented model. They were created to handle big and complex data that relational databases could not. There are important characteristics involved with object-oriented databases. The most important characteristic is the joining of object-oriented programming with database technology, which provides an integrated application development system. Object-oriented programming results in 4 main characteristics: inheritances, data encapsulation, object identity, and polymorphism. Inheritance allows one to develop solutions to complex problems incrementally by defining new objects in terms of previously defined objects. Data encapsulation or simply encapsulation allows the hiding of the internal state of the objects. Encapsulated objects are those objects that can only be assessed by their methods instead of their internal states. There are three types of encapsulated objects users and developers should recognize. The first is full encapsulation, in which all the operations on objects are done through message sending and method execution. The second is write encapsulation, which is where the internal state of the object is visible only for reading operations. The third is partial encapsulation, which involves allowing direct access for reading and writing for only a part of the internal state. Object identity allows objects of the database to be independent of each other. Polymorphism and dynamic binding allow one to define operations for one object and then to share the specification of the operation with other objects. This allows users and/or programmers to compose objects to provide solutions without having to write code that is specific to each object.

Page 5 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

The language important to OODBMS is data definition and manipulation language (DDML). The use of this language allows persistent data to be created, updated, deleted, or retrieved. An OODBMS needs a computational versus a relational language because it can be used to avoid impedance mismatch. DDML allows users to define a database, including creating, altering, and dropping tables and establishing constraints. DDMLs are used to maintain and query a database, including updating, inserting, modifying, and querying data. The OODBMS has many advantages and benefits. First, object-oriented is a more natural way of thinking. Second, the defined operations of these types of systems are not dependent on the particular database application running at a given moment. Third, the data types of object-oriented databases can be extended to support complex data such as images, digital and audio/video, along with other multi-media operations. Different benefits of OODBMS are its reusability, stability, and reliability. Another benefit of OODBMS is that relationships are represented explicitly, often supporting both navigational and associative access to information. This translates to improvement in data access performance versus the relational model. Another important benefit is that users are allowed to define their own methods of access to data and how it will be represented or manipulated. The most significant benefit of the OODBMS is that these databases have extended into areas not known by the RDBMS. Medicine, multimedia, and high-energy physics are just a few of the new industries relying on object-oriented databases. Object-oriented database technology is a marriage of object-oriented programming and database technologies. Figure 1 illustrates how these programming and database concepts have come together to provide what we now call object-oriented databases.

Page 6 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

Perhaps the most significant characteristic of object-oriented database technology is that it combines objectoriented programming with database technology to provide an integrated application development system. There are many advantages to including the definition of operations with the definition of data. First, the defined operations apply ubiquitously and are not dependent on the particular database application running at the moment. Second, the data types can be extended to support complex data such as multi-media by defining new object classes that have operations to support the new kinds of information. Other strengths of object-oriented modeling are well known. For example, inheritance allows one to develop solutions to complex problems incrementally by defining new objects in terms of previously defined objects. Polymorphism and dynamic binding allow one to define operations for one object and then to share the specification of the operation with other objects. These objects can further extend this operation to provide behaviors that are unique to those objects. Dynamic binding determines at runtime which of these operations is actually executed, depending on the class of the object requested to perform the operation. Polymorphism and dynamic binding are powerful object-oriented features that allow one to compose objects to provide solutions without having to write code that is specific to each object. All of these capabilities come together synergistically to provide significant productivity advantages to database application developers.

Page 7 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

A significant difference between object-oriented databases and relational databases is that object-oriented databases represent relationships explicitly, supporting both navigational and associative access to information. As the complexity of interrelationships between information within the database increases, so do the advantages of representing relationships explicitly. Another benefit of using explicit relationships is the improvement in data access performance over relational value-based relationships. A unique characteristic of objects is that they have an identity that is independent of the state of the object. For example, if one has a car object and we remodel the car and change its appearance, the engine, the transmission, and the tires so that it looks entirely different, it would still be recognized as the same object we had originally. Within an object-oriented database, one can always ask the question, is this the same object I had previously?, assuming one remembers the objects identity. Object-identity allows objects to be related as well as shared within a distributed computing network. All of these advantages point to the application of object-oriented databases to information management problems that are characterized by the need to manage:

a large number of different data types,

a large number of relationships between the objects, and

objects with complex behaviors.

Application areas where this kind of complexity exists includes engineering, manufacturing, simulations, office automation and large information systems.

Object-Relational Database Object-Relational database (ORDBMS) is the third type of database common today. ORDBMS are systems that attempt to extend relational database systems with the functionality necessary to support a broader class of applications and, in many ways, provide a bridge between the relational and object-oriented paradigms. ORDBMS was created to handle new types of data such as audio, video, and image files that relational databases were not equipped to handle. In addition, its development was the result of increased usage of object-oriented programming languages, and a large mismatch between these and the DBMS software. One advantage of ORDBMS is that it allows organizations to continue using their existing systems, without having to make major changes. A second advantage is that it allows users and programmers to start using object-oriented systems in parallel.

Page 8 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

There are challenges in implementing an ORDBMS. The first is storage and access methods. The second is query processing, and the third is query optimization. Since the development of RDBMS, OODBMS, and ORDBMS, many vendors have extended their systems with the ability to store new data types such as images and texts, and with the ability to ask more complex queries. One rising technique is enterprise resource planning and management resource planning, which add another layer of application-oriented features on top of a DBMS. Included applications come from Baan, Oracle, SAP, and Siebel. These programs each identify a set of common tasks encountered by a large number of organizations and provide a general application layer to carry out these tasks. More importantly, DBMS have advanced into the Internet and Web Age. Stored data is widely being accessed through a Web browser. Today, queries are being generated through Web-accessible forms and answers are being formatted using a mark-up language such as HTML. In addition, many vendors and distributors are adding features to their DBMS aimed at making it better equipped for Internet usage. In summary, relational and object-oriented database systems each have certain strengths as well as certain weaknesses. In general, the weakness of one type of system tends to be strength of the other. What is the difference between odbms rdbms and ordbms? The differences between the three approaches Table 1: A Comparison of Database Management Systems Criteria RDBMS ODBMS ORDBMS Defining standard SQL2 ODMG-2.0 SQL3 (in process) Support for object-oriented features Does not support. It is difficult to map program object to the database Supports extensively Limited support; mostly to new data types Usage Easy to use OK for programmers; some SQL access for end users Easy to use except for some extensions Support for complex relationships Does not support abstract datatypes Supports a wide variety of datatypes and data with complex inter-relationships Supports Abstract datatypes and complex relationships Performance Very good performance Relatively less performance Expected to perform very well Product maturity Relatively old and so very mature This concept is few years old and so relatively mature Still in development stage so immature. The use of SQL Extensive supports SQL OQL is similar to SQL, but with additional features like Complex objects and object-oriented features. SQL3 is being developed with OO features incorporated in it Advantages Its dependence on SQL, relatively simple query optimization hence good performance It can handle all types of complex applications, reusability of code, less coding Ability to query complex applications and ability to handle large and complex applications Disadvantages Inability to handle complex

Page 9 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

applications Low performance due to complex query optimization, inability to support large-scale systems Low performance in web applications Support from vendors It is considered to be highly successful so the market size is very large but many vendors are moving towards ORDBMS Presently lacking vendor support due to vast size of RDBMS market All major RDBMS vendors are after this so has very good future. RDBMS = Relational Database Management System. This is the traditional relational database.

ORDBMS = Object-Relational Database Management System. This is an RDBMS that also supports storing user-defined objects (types) in the database. So you might declare a type "POINT" that has x and y components, and then create a table with a column of type POINT. The type may also support "methods" (functions) like "distance_from_origin". Information about what fundamental ORDBMSes features are implemented natively. Type CUBRID Oracle OpenLink Virtuoso PostgreSQL Yes Yes Yes Yes Method Yes Yes Yes Yes Type inheritance Yes Yes Yes Yes Table inheritance Yes Yes Yes Yes

Information about what data types are implemented natively. Array Yes Yes Yes Yes List Yes Yes Yes Yes Set Yes Yes Yes Yes Multiset Yes Yes Yes Yes Object reference Yes Yes Yes Yes

CUBRID Oracle OpenLink Virtuoso PostgreSQL

Page 10 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

The operating systems the RDBMSes can run on. Mac OS X Yes No No No Linux BSD UNIX AmigaOS Symbian z/OS 1

ADABAS Adaptive Server Enterprise Advantage Database Server Altibase Apache Derby 2 CUBRID DB2 5 EffiProz Firebird HSQLDB 2 H2 2 FileMaker Informix Ingres InterBase Linter SQL RDBMS 6 LucidDB MaxDB Microsoft Access Microsoft Visual Foxpro Microsoft SQL Server MonetDB MySQL Omnis Studio OpenBase SQL Oracle 4 Oracle Rdb 3 OpenEdge OpenLink Virtuoso Pervasive PSQL

Yes Yes Yes

No Yes Yes Yes

4th Dimension Yes No

Windows Yes Yes No

No No No No

No No No No

No Yes No No

Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes

No Yes No No No Yes Yes Yes Yes Yes Yes Yes Yes No No No No No Yes Yes Yes Yes Yes No No Yes Yes (OEM only) No Yes Yes Yes

Yes Yes Yes Yes No Yes Yes Yes No Yes Yes Yes Yes Yes Yes No No No Yes Yes Yes Yes Yes No Yes Yes Yes

No Yes No No No Yes Yes Yes No Yes Yes No Yes No No No No No No Yes No Yes No No No Yes No

Yes Yes No Yes No Yes Yes Yes No Yes Yes Yes (Solaris) Yes No Yes No No No Yes Yes No Yes Yes No Yes Yes No

No No No No No No No No No No No No No No No No No No No Yes No No No No No No No

No No No No No No No No No No No No No No No No No No No Yes No No No No No No No

No Yes No Yes No Maybe Yes Maybe No Yes Partial No No No Maybe No No No No Maybe No No Yes No Yes No

Polyhedra DBMS PostgreSQL Postgres Plus Standard Server Postgres Plus Advanced Server R:Base

Yes Yes Yes Yes

Yes Yes Yes Yes

No Yes Yes Yes

Yes Yes Yes Yes

No Yes Yes Yes

No No No No

No No No No

Yes

No

No

No

No

No

No

No

Page 11 of 12

INTRODUCTION TO RDBMS, OODBMS AND ORDBMS

Mac OS X RDM Embedded RDM Server ScimoreDB SmallSQL 2 SQL Anywhere SQLBase SQLite Superbase Teradata Valentina Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes No Yes No No Yes

Linux

BSD

UNIX

AmigaOS

Symbian

z/OS 1

Yes Yes No Yes Yes Yes Yes No Yes Yes

Yes Yes No Yes No No Yes No No No

Yes Yes No Yes Yes No Yes No Yes No

No No No No No No Yes Yes No No

No No No No No No Yes No No No

No No No Yes No No Maybe No No No

Page 12 of 12

You might also like