Information about Object Relational Database

Database models
Common models
Hierarchical
Network
Relational
Object-relational
Object
Other models
Associative
Concept-oriented
Multi-dimensional
Star schema
XML database


An object-relational database (ORD) or object-relational database management system (ORDBMS) is a relational database management system that allows developers to integrate the database with their own custom data types and methods. The term object-relational database is sometimes used to describe external software products running over traditional DBMSs to provide similar features; these systems are more correctly referred to as object-relational mapping systems.

Whereas RDBMS or SQL-DBMS products focused on the efficient management of data drawn from a limited set of data types (defined by the relevant language standards), an object-relational DBMS allows software developers to integrate their own types and the methods that apply to them into the DBMS. The goal of ORDBMS technology is to allow developers to raise the level of abstraction at which they view the problem domain.

Comparison to RDBMS

In an RDBMS, it would be fairly common to see SQL statements like this:

CREATE TABLE Customers ( Id CHAR(12) NOT NULL PRIMARY KEY, Surname VARCHAR(32) NOT NULL, FirstName VARCHAR(32) NOT NULL, DOB DATE NOT NULL );

SELECT InitCap(Surname) || ', ' || InitCap(FirstName) FROM Customers WHERE Month(DOB) = Month(getdate()) AND Day(DOB) = Day(getdate())

Most current SQL databases allow the creation of custom functions, which would allow the query to be expressed as:

SELECT Formal(Id) FROM Customers WHERE Birthday(Id) = Today() In an object-relational database, one might see something like this, where the data types and expressions such as BirthDay() are user-defined.

CREATE TABLE Customers ( Id Cust_Id NOT NULL PRIMARY KEY, Name PersonName NOT NULL, DOB DATE NOT NULL );

SELECT Formal( C.Name ) FROM Customers C WHERE BirthDay ( C.DOB ) = TODAY;

Another advantage to the object-relational model is that the database can make use of the relationships between data to easily collect related records. In an address book application, an additional table would be added to the ones above to hold zero or more addresses for each user. Using a traditional RDBMS, collecting information for both the user and their address requires a "join":

SELECT InitCap(C.Surname) || ', ' || InitCap(C.FirstName), A.city FROM Customers C join Addresses A ON A.Cust_Id=C.Id -- the join WHERE A.city="New York"

The same query in an object-relational database is much simpler:

SELECT Formal( C.Name ) FROM Customers C WHERE C.address.city="New York" -- the linkage is 'understood' by the ORDB

The same query Valentina database can do without join-condition specification if a single link exists between tables Customers and Addresses (i.e. there is no ambiguity):

SELECT Formal( C.Name ) FROM Customers C join Addresses A -- implicit join condition WHERE A.city="New York" '''

History

Object-relational database management systems grew out of research that occurred in the early 1990s. That research extended existing relational database concepts by adding object concepts. The idea was to retain a declarative query language based on predicate calculus as a central component of the architecture. Probably the most notable research project was Postgres (UC Berkeley). Two products trace their lineage to that research: Illustra and PostgreSQL.

In the mid-1990s, early commercial products appeared. These included Illustra[1] (Illustra Information Systems, acquired by Informix which was in turn acquired by IBM), Omniscience (Omniscience Corporation, acquired by Oracle Corporation and became the original Oracle Lite), and UniSQL (UniSQL, Inc., acquired by KCOMS). Ukrainian developer Ruslan Zasukhin, founder of Paradigma Software, Inc., developed and shipped the first version of Valentina database in the mid-1990s as a C++ SDK. By the next decade, PostgreSQL had become a commercial viable database and is the basis for several products today which maintain its ORDBMS features.

These products came to be referred to as "object-relational database management systems" or ORDBMSs.[2]

Many of the ideas of early object-relational database efforts have largely been added to SQL:1999. In fact, any product that adheres to the object-oriented aspects of SQL:1999 could be described as an object-relational database management product. For example, IBM's DB2, Oracle database, and Microsoft SQL Server, make claims to support this technology and do so with varying degrees of success.

References and notes

1. ^ Stonebraker, Michael with Moore, Dorothy. Object-Relational DBMSs: The Next Great Wave. Morgan Kaufmann Publishers, 1996. ISBN 1-55860-397-2.
2. ^ There was, at the time, some dispute whether the term was coined by Michael Stonebraker of Illustra or Won Kim of UniSQL.

See also

External links

A database model is a theory or specification describing how a database is structured and used. Several such models have been suggested.

Common models include:
  • Hierarchical model
  • Network model
  • Relational model
  • Entity-relationship

..... Click the link for more information.
In a hierarchical data model, data are organized into a tree-like structure. The structure allows repeating information using parent/child relationships: each parent can have many children but each child only has one parent.
..... Click the link for more information.
The network model is a database model conceived as a flexible way of representing objects and their relationships. Its original inventor was Charles Bachman, and it was developed into a standard specification published in 1969 by the CODASYL Consortium.
..... Click the link for more information.
The relational model for database management is a database model based on predicate logic and set theory. It was first formulated and proposed in 1969 by Edgar Codd with aims that included avoiding, without loss of completeness, the need to write computer programs to
..... Click the link for more information.
'' In an object oriented database, information is represented in the form of objects'' as used in Object-Oriented Programming. When database capabilities are combined with object programming language capabilities, the result is an object database management system (ODBMS).
..... Click the link for more information.
The associative model of data is an alternative data model for database systems. Other data models, such as the relational model and the object data model, are record-based. These models involve encompassing attributes about a thing, such as a car, in a record structure.
..... Click the link for more information.
The concept-oriented data model is a data model based on lattice theory and ordered sets. Another source of inspiration in creating this model is formal concept analysis (FCA).
..... Click the link for more information.
Multidimensional databases are variously (depending on the context) data aggregators which combine data from a multitude of data sources; databases which offer networks, hierarchies, arrays and other data formats difficult to model in SQL; or databases which give a high degree of
..... Click the link for more information.
The star schema (sometimes referenced as star join schema) is the simplest style of data warehouse schema, consisting of a few "fact tables" (possibly only one, justifying the name) referencing any number of "dimension tables".
..... Click the link for more information.
XML-enabled. These map all XML to a traditional database (such as a relational database), accepting XML as input and rendering XML as output.
  • Native XML (NXD) The internal model of such databases depends on XML and uses XML documents as the fundamental unit of storage.
    ..... Click the link for more information.
  • A relational database is a database that conforms to the relational model, and refers to a database's data and schema (the database's structure of how that data is arranged).
    ..... Click the link for more information.
    In programming languages a data type defines a set of values and the allowable operations on those values[1]. For example, in the Java programming language, the "int" type represents the set of 32-bit integers ranging in value from -2,147,483,648 to 2,147,483,647, and
    ..... Click the link for more information.
    Not to be confused with Object role modelling.
    Object-Relational mapping (aka O/RM, ORM, and O/R mapping) is a programming technique for converting data between incompatible type systems in databases and object-oriented programming
    ..... Click the link for more information.
    SQL
    Paradigm: multi-paradigm
    Appeared in: 1974
    Designed by: Donald D. Chamberlin and Raymond F. Boyce
    Developer: IBM
    Latest release: SQL:2003/ 2003
    Typing discipline: static, strong
    Major implementations: Many
    SQL
    ..... Click the link for more information.
    address book or a name and address book (NAB) is a book or a database used for storing entries called contacts. Each contact entry usually consists of a few standard fields (for example: first name, last name, company name, address, telephone number, e-mail address,
    ..... Click the link for more information.
    predicate logic is the generic term for symbolic formal systems like first-order logic, second-order logic, many-sorted logic or infinitary logic. This formal system is distinguished from other systems in that its formulas contain variables which can be quantified.
    ..... Click the link for more information.
    PostgreSQL is an object-relational database management system (ORDBMS). It is released under a BSD-style license and is thus free software. As with many other open-source programs, PostgreSQL is not controlled by any single company, but relies on a global community of developers
    ..... Click the link for more information.
    Paradigma Software

    Private
    Founded Beaverton, Oregon (2004)
    Headquarters Beaverton, Oregon

    Key people Lynn Fredricks; president, Ruslan Zasukhin; vice president
    Industry Computer software
    Website www.paradigmasoft.
    ..... Click the link for more information.
    SQL
    Paradigm: multi-paradigm
    Appeared in: 1974
    Designed by: Donald D. Chamberlin and Raymond F. Boyce
    Developer: IBM
    Latest release: SQL:2003/ 2003
    Typing discipline: static, strong
    Major implementations: Many
    SQL
    ..... Click the link for more information.
    International Business Machines Corporation

    Public (NYSE:  IBM )
    Founded 1889, incorporated 1911
    Headquarters Armonk, New York, USA

    Key people Samuel J.
    ..... Click the link for more information.
    DB2 is one of IBM's lines of relational database management system (or, as IBM now calls it, data server) software products within IBM's broader Information Management Software line.
    ..... Click the link for more information.
    Oracle Database (commonly referred to as Oracle RDBMS or simply as Oracle), a relational database management system (RDBMS) software product released by Oracle Corporation, has become a major feature of database computing.
    ..... Click the link for more information.
    Microsoft SQL Server is a relational database management system (RDBMS) produced by Microsoft. Its primary query language is Transact-SQL, an implementation of the ANSI/ISO standard Structured Query Language (SQL) used by both Microsoft and Sybase.
    ..... Click the link for more information.
    database is a structured collection of records or data that is stored in a computer system so that a computer program or person using a query language can consult it to answer queries. The records retrieved in answer to queries are information that can be used to make decisions.
    ..... Click the link for more information.
    The following Database Management Systems (DBMSs) have at least some object-relational features. They vary widely in their completeness and the approaches taken. The following tables compare general and technical information for a number of object-relational database management systems.
    ..... Click the link for more information.
    '' In an object oriented database, information is represented in the form of objects'' as used in Object-Oriented Programming. When database capabilities are combined with object programming language capabilities, the result is an object database management system (ODBMS).
    ..... Click the link for more information.
    Not to be confused with Object role modelling.
    Object-Relational mapping (aka O/RM, ORM, and O/R mapping) is a programming technique for converting data between incompatible type systems in databases and object-oriented programming
    ..... Click the link for more information.
    The relational model for database management is a database model based on predicate logic and set theory. It was first formulated and proposed in 1969 by Edgar Codd with aims that included avoiding, without loss of completeness, the need to write computer programs to
    ..... Click the link for more information.
    SQL
    Paradigm: multi-paradigm
    Appeared in: 1974
    Designed by: Donald D. Chamberlin and Raymond F. Boyce
    Developer: IBM
    Latest release: SQL:2003/ 2003
    Typing discipline: static, strong
    Major implementations: Many
    SQL
    ..... Click the link for more information.
    The object-relational impedance mismatch is a set of conceptual and technical difficulties which are often encountered when a relational database management system is being used by a program written in an object-oriented programming language or style; particularly when objects
    ..... Click the link for more information.


    This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
    Herod_Archelaus


    page counter