Questions persist about the user value of universal databases

Several have forged so-called universal database managers by blending the object and relational models. As with any big change, agencies should approach this Swiss army knife-like tool with caution. Everyone remembers that databases didn't just snap into client-server or intranet environments without a lot of planning, testing and late nights. Although the advantages of universal databases sound compelling, questions persist as to their value for most information users.

Several have forged so-called universal database managers by blending the object and
relational models. As with any big change, agencies should approach this Swiss army
knife-like tool with caution.


Everyone remembers that databases didn't just snap into client-server or intranet
environments without a lot of planning, testing and late nights. Although the advantages
of universal databases sound compelling, questions persist as to their value for most
information users.


The striking thing about universal databases is that they mix object and relational
data on a single resource server.


In the relational model, data exists as two-dimensional tables and nothing but tables.
But object-oriented databases can form complex groupings of data or binary information.
The application logic, known as methods, exists with and controls access to the data.


Objects let database architects model complex structures and binary information such as
multimedia or repository data. Object databases support the OO concepts of inheritance,
encapsulation and polymorphism, which means you can reuse the data structures and
behaviors.


So far, however, OODBMSes have been relegated to special-purpose applications.
Developers view the products now available as rather high-risk, so most client-server and
intranet and Internet applications still stick pretty closely to the leading RDBMSes from
Oracle Corp., Sybase Inc. and Informix Software Inc. of Menlo Park, Calif.


Support for the object model varies among universal database vendors. So far, no one
vendor supports all the pure OO features such as encapsulation, inheritance, pointer
navigation and tight integration with OO tools and languages such as C++.


None provide easy storage for persistent objects--although you can use middleware to
store persistent objects in conventional RDBMSes. The fact is, even if data is presented
as objects, the underlying structure remains tables and columns.


Object purists point out that universal databases must decompose objects into
relational tables for storage, then translate them back into objects to present to the
application. This multiple translation degrades performance. However, muscle-bound servers
can relieve such performance problems.


Various vendors refer to universal databases as universal servers or object-relational
databases. What they mean is that their relational database servers' capabilities have
been extended to store and manage objects or other data types within the same engine.


Informix-Universal Server, IBM Corp.'s DB2 Universal Database and Oracle's Oracle8 are
all universal databases. Sybase puts in layers of middleware to make relational data
appear as objects.


Oracle8 is the king of the hill in universal databases. However, Oracle is releasing
only bits and pieces of the promised universality in successive releases.


The reason for this is Oracle's concurrent development of the Network Computing
Architecture, based on the Common Object Request Broker Architecture (CORBA).


NCA uses extensible components known as cartridges, built by Oracle partners. Oracle
itself makes the components at the middleware and engine layers. Users are promised
"object views" of data across the Oracle universal database as well as existing
relational-only Oracle databases.


Oracle8 supports a client-object cache with object navigation via references, where the
object type translator links the database object to a programming language such as C.


Oracle8 supports objects in the type system as well as collection and reference types.
Methods and object types are explicitly associated. But Oracle8 does not yet support
abstract data types, although it does support scalar user-defined functions and
user-defined index structures with multiple attributes and parallel execution.


An optimizer can link cost and statistical information to these user-defined functions.
Binary large objects, or BLOBs, can be stored inside or outside the Oracle8 database, and
developers can create user-defined functions and stored procedures using PL/SQL or C++.


DB2 Universal Database, scheduled for delivery in the next several months, is probably
the most underrated of the universal databases so far.


This is an amalgam of IBM's DB2 Common Server and DB2 Parallel Edition. It has new
features such as file links to manage data external to the engine.


A DataJoiner middleware layer provides heterogeneous access to different data types.
The idea is to let DataJoiner use the DB2 Universal Database object-relational extensions.


IBM is working on an object layer component known as Client Object Support, which will
give a single logical view of data, cache manager and OO languages, while keeping
transaction consistency.


Client Object Support most likely will be DB2's route into distributed objects under
CORBA and Microsoft Corp.'s Distributed Component Object Model.


DB2 Universal Database can deal with opaque abstract data types and Object Linking and
Embedding objects. User-defined functions written in C++, C, Microsoft Visual Basic or
Java support overloading and parallel execution.


A special-purpose indexing mechanism works for all data types. Future plans call for
user-defined index structures. The rules-based optimizer now in DB2 is going through a
change for DB2 Universal Database to let developers add rules. Large objects can be stored
inside the database or through linked external files.


Informix-Universal Server resulted from grafting Illustra Information Technologies
Inc.'s object capabilities onto the Informix relational database engine. Although this was
a tough job, Informix-Universal Server is now available for 10 platforms.


It combines OnLine 7.2, the DataBlade application programming interface from the
Illustra Server and Structured Query Language 3 extensions. The Informix product supports
extensible systems of distinct types, opaque abstract data types, row types and collection
types. And it allows single inheritance via named row types.


User-defined functions include overloading and parallel execution of functions on
symmetric multiprocessing platforms. An extensible indexing system allows user-defined
index structures, and an extensible optimizer makes it possible to integrate new index
structures and custom access methods.


Developers can store large objects inside the database as pointers to external files.
The extensible language support lets them create user-defined functions and stored
procedures written in SQL, C or Java.


The DataBlades, from several third-party developers, are simply extensions that
represent an application domain integrated with the core Informix server through a
call-level interface. DataBlades make up the predefined extension capability of
Informix-Universal Server.


Developers can deal with the different data types in Informix's NewEra development
environment. Data Director, a new client engine, integrates with third-party development
tools for complex connections between the data-aware controls and the Universal Server
data.


Sybase lags behind the other three companies, but it has begun to define a strategy for
extensible data management through its Adaptive Server Architecture. This emphasizes
component-based application development and Web-enabled and distributed technology such as
Java, ActiveX and CORBA.


Toward the end of this year, Sybase is looking to provide most of its object support
through middleware layers. That middleware includes the Jaguar Component Transaction
Server, which will access relational and object data through front-end development tools
such as Sybase's PowerBuilder.


At the engine level, Sybase is merging the OmniConnect distributed query services into
the database engine, known as Adaptive Server. The idea is for all Sybase servers
eventually to implement common language processors, security services, messaging and
replication servers, administrative services and a component integration layer.


Sounds great. But it's too early to tell how well these products will work in common
environments. Most are in late beta versions or early release. And most applications have
yet to exert object-relational powers on a large scale.


It's pretty certain these new products can be layered onto most federal database
environments, but when should that happen?


Chances are if you're using an RDBMS, it integrates well with the current crop of
development tools.


No one can say the same yet for OO database systems.


It's going to take time for the tool vendors to get around to optimizing their products
for universal databases, and before they do, there will be a certain amount of risk in
using these products' object extensions.


Applications that will benefit the most from universal servers are those that store
complex data, such as repositories.


David S. Linthicum is a client-server expert with more than 15 years' experience.


X
This website uses cookies to enhance user experience and to analyze performance and traffic on our website. We also share information about your use of our site with our social media, advertising and analytics partners. Learn More / Do Not Sell My Personal Information
Accept Cookies
X
Cookie Preferences Cookie List

Do Not Sell My Personal Information

When you visit our website, we store cookies on your browser to collect information. The information collected might relate to you, your preferences or your device, and is mostly used to make the site work as you expect it to and to provide a more personalized web experience. However, you can choose not to allow certain types of cookies, which may impact your experience of the site and the services we are able to offer. Click on the different category headings to find out more and change our default settings according to your preference. You cannot opt-out of our First Party Strictly Necessary Cookies as they are deployed in order to ensure the proper functioning of our website (such as prompting the cookie banner and remembering your settings, to log into your account, to redirect you when you log out, etc.). For more information about the First and Third Party Cookies used please follow this link.

Allow All Cookies

Manage Consent Preferences

Strictly Necessary Cookies - Always Active

We do not allow you to opt-out of our certain cookies, as they are necessary to ensure the proper functioning of our website (such as prompting our cookie banner and remembering your privacy choices) and/or to monitor site performance. These cookies are not used in a way that constitutes a “sale” of your data under the CCPA. You can set your browser to block or alert you about these cookies, but some parts of the site will not work as intended if you do so. You can usually find these settings in the Options or Preferences menu of your browser. Visit www.allaboutcookies.org to learn more.

Sale of Personal Data, Targeting & Social Media Cookies

Under the California Consumer Privacy Act, you have the right to opt-out of the sale of your personal information to third parties. These cookies collect information for analytics and to personalize your experience with targeted ads. You may exercise your right to opt out of the sale of personal information by using this toggle switch. If you opt out we will not be able to offer you personalised ads and will not hand over your personal information to any third parties. Additionally, you may contact our legal department for further clarification about your rights as a California consumer by using this Exercise My Rights link

If you have enabled privacy controls on your browser (such as a plugin), we have to take that as a valid request to opt-out. Therefore we would not be able to track your activity through the web. This may affect our ability to personalize ads according to your preferences.

Targeting cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They do not store directly personal information, but are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.

Social media cookies are set by a range of social media services that we have added to the site to enable you to share our content with your friends and networks. They are capable of tracking your browser across other sites and building up a profile of your interests. This may impact the content and messages you see on other websites you visit. If you do not allow these cookies you may not be able to use or see these sharing tools.

If you want to opt out of all of our lead reports and lists, please submit a privacy request at our Do Not Sell page.

Save Settings
Cookie Preferences Cookie List

Cookie List

A cookie is a small piece of data (text file) that a website – when visited by a user – asks your browser to store on your device in order to remember information about you, such as your language preference or login information. Those cookies are set by us and called first-party cookies. We also use third-party cookies – which are cookies from a domain different than the domain of the website you are visiting – for our advertising and marketing efforts. More specifically, we use cookies and other tracking technologies for the following purposes:

Strictly Necessary Cookies

We do not allow you to opt-out of our certain cookies, as they are necessary to ensure the proper functioning of our website (such as prompting our cookie banner and remembering your privacy choices) and/or to monitor site performance. These cookies are not used in a way that constitutes a “sale” of your data under the CCPA. You can set your browser to block or alert you about these cookies, but some parts of the site will not work as intended if you do so. You can usually find these settings in the Options or Preferences menu of your browser. Visit www.allaboutcookies.org to learn more.

Functional Cookies

We do not allow you to opt-out of our certain cookies, as they are necessary to ensure the proper functioning of our website (such as prompting our cookie banner and remembering your privacy choices) and/or to monitor site performance. These cookies are not used in a way that constitutes a “sale” of your data under the CCPA. You can set your browser to block or alert you about these cookies, but some parts of the site will not work as intended if you do so. You can usually find these settings in the Options or Preferences menu of your browser. Visit www.allaboutcookies.org to learn more.

Performance Cookies

We do not allow you to opt-out of our certain cookies, as they are necessary to ensure the proper functioning of our website (such as prompting our cookie banner and remembering your privacy choices) and/or to monitor site performance. These cookies are not used in a way that constitutes a “sale” of your data under the CCPA. You can set your browser to block or alert you about these cookies, but some parts of the site will not work as intended if you do so. You can usually find these settings in the Options or Preferences menu of your browser. Visit www.allaboutcookies.org to learn more.

Sale of Personal Data

We also use cookies to personalize your experience on our websites, including by determining the most relevant content and advertisements to show you, and to monitor site traffic and performance, so that we may improve our websites and your experience. You may opt out of our use of such cookies (and the associated “sale” of your Personal Information) by using this toggle switch. You will still see some advertising, regardless of your selection. Because we do not track you across different devices, browsers and GEMG properties, your selection will take effect only on this browser, this device and this website.

Social Media Cookies

We also use cookies to personalize your experience on our websites, including by determining the most relevant content and advertisements to show you, and to monitor site traffic and performance, so that we may improve our websites and your experience. You may opt out of our use of such cookies (and the associated “sale” of your Personal Information) by using this toggle switch. You will still see some advertising, regardless of your selection. Because we do not track you across different devices, browsers and GEMG properties, your selection will take effect only on this browser, this device and this website.

Targeting Cookies

We also use cookies to personalize your experience on our websites, including by determining the most relevant content and advertisements to show you, and to monitor site traffic and performance, so that we may improve our websites and your experience. You may opt out of our use of such cookies (and the associated “sale” of your Personal Information) by using this toggle switch. You will still see some advertising, regardless of your selection. Because we do not track you across different devices, browsers and GEMG properties, your selection will take effect only on this browser, this device and this website.