In 1985, Codd published a series of articles in ComputerWorld. The articles outline the basic requirements of a relational system. He also provided a scorecard to measure the relational compliance of a DBMS.
No existing RDBMS is even close to full compliance. Oracle would rate about 60% compliance. Others are lower except Ingres and FirstSQL which rate about 65% compliance. Interestingly enough, Xbase products rate 0% in compliance with the relational model.
The relational model is an integrated whole. Missing support for a given feature weakens the effectiveness of supported features. In terms of the potential power and capability of the relational model, all DBMSs rate below 50%.
Unfortunately, it is the users who suffer from this embarrassingly inadequate support of the relational model. For all of its mathematical elegance, the relational model is really about practical solutions for real world problems. Inadequate support robs users of these benefits. On the other hand, even weak relational support is orders of magnitude better than any other choice for a database model.
Illustrative of this is the physical model implemented by all RDBMSs. They use a simple mapping of logical tables to physical structures. Indexing and hashing schemes are used for access to table data and for certain constraint processing. This severely limits performance and has allowed non-relational systems, such as OODBMSs (Object-Oriented Database Mangagement Systems), to show better performance on specialized applications, like CAD, though this advantage is partially caused by improper programming involving relational systems.
In addition, most RDBMS engines are ad-hoc implementations, ignoring relational principles. This greatly inhibits their ability to extend relational compliance and provide the implicit benefits and performance to their users. Like to Xbase systems they are trapped by ad-hoc implementations. Wayne Ratliffe (the Godfather of dBASE) said,
"Well, it's really a judgment call, and I think a lot of experience comes into it. It's a little bit like building a shack. Say you want to build a skyscraper, but you started out building a shack and you just keep trying to add onto it. After a while you have this severe structural problem ... So there is a fallacy to the build-upon-a-simple-structure approach. Sometimes you get up to three stories and you have to do some major structural changes, and I just accept that." (DBMS Magazine, 12/88).
Do the users of these systems accept that? Fabian Pascal calls it skyscrapers built on shack foundations. Of course it's worse for Xbase vendors because their database model is ad-hoc. But, RDBMS vendors do have a problem with their foundation - the implementation of their engine. They will have to radically revamp it to get past the third floor.
The FirstSQL engine implementation and builtin hooks provide the a solid foundation for continued relational improvement, closer compliance with relational. It is the goal of FFE to bring FirstSQL past the 90th percentile of relational compliance. The ultimate goal is 100% fidelity. FFE is the vendor most likely to reach (or even move towards) this goal and the only vendor dedicated to it.
The advantages of a fully relational system are wide-ranging and real:
Return to Contents Page: Relational Databases, Do Users Benefit? Return to Issues Page