BYTE.com
RSS feed

Newsletter
Free E-mail Newsletter from BYTE.com
Email Address
First Name
Last Name




 
    
             
BYTE.com > Features > 2004

Oscillating Between Objects and Relational: The Impedance Mismatch

By Dan Shusman

February 15, 2004

(Oscillating Between Objects and Relational: The Impedance Mismatch :  Page 1 of 1 )



Impedance mismatch is a term commonly used to describe the problem of an object-oriented (OO) application housing its data in legacy relational databases (RDBMS). C++ programmers have dealt with it for years; it is now a familiar problem to Java and other OO programmers.

The mismatch arises from the inherent lack of affinity between the object and relational models. Problems associated with the impedance mismatch include class hierarchies binding to relational schemas (mapping object classes to relational tables), id generation; concurrency; and others described below.

Obviously, the impact of these issues is tied very specifically to the OO application and relational schema being blended. But the ramifications are clear in terms of time-to-market; costs of design, development and quality assurance; compromised code maintainability and extensibility; and the sizing and topology of the hardware required to ensure expected response and throughput times.

Given the increasing prevalence of the OO RDBMS impedance mismatch, and its corollary—the mismatch between SQL-based applications and object databases (OODBMS)—it's time to look at ways to resolve the problem.

Object Development Languages

Many long-popular technologies—C++, Microsoft's Visual Basic, Borland's Delphi, Java, and a host of open-source languages—provide an object environment in which to implement business logic and user interfaces. To greater or lesser degrees these OO environments implement encapsulation, polymorphism, and inheritance. The benefits of their proper use in application development and evolution are well known.

Object languages (like all programming languages) need to bind to a data store if persistence is required, and that store is often a database. The three most common technologies for databases are relational, object and post-relational (a.k.a. "transactional multidimensional").

Relational Versus Object Database Models

It's useful to contrast the basic differences of the RDBMS and OODBMS models and the approaches to programming in each.

 Page 1 of 1 


BYTE.com > Features > 2004
Dr. Dobb's Media Center
BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE: Volume 2 - Heuristic Algorithms
The Best of BYTE: Volume 2 - Heuristic Algorithms
In this volume of Best of BYTE, we explore the emergence of some heuristic algorithms. Although we have only scratched the surface of this intriguing subject, we hope we've suggested the potential of the synthesis of heuristics and algorithms.

© 2008 Think Services, Privacy Policy, Terms of Service, United Business Media Limited
Site comments: webmaster@byte.com
Web Sites: BYTE.com, dotnetjunkies.com, Dr. Dobb's Journal, SD Expo, Sys Admin, sqljunkies.com, Unixreview



MarketPlace
IT Service Management that Delivers. Real Value. Real Flexibility. Real Results. Free Demo.
Fast online exception analysis. Capture customer crash data online.
One Stop to Buy All Your Business IT Solutions. Browse Through Dell's Best Deals Online Now!
Find Scalable and Secure Dell� Network Server Solutions at Dell� - Official Site.
Advance Your Business Technology Now with the Thin and Portable Business Solutions at Dell.com Now!
Wanna see your ad here?
 

web2