From: GA
To:
Editor
I've been
reading the articles posted by Mssrs. Pascal and Date with great interest and
relish. I am one of those "whose heart is in the right place", but
whose grasp is still in development. I have a single, if not simplistic,
question:
You
constantly remind us that the relational model is a logical model having no
connection to any physical model (so I infer). You also indicate how no
commercial product fully implements the relational model.
Therefore,
how do we make use of the relational model when dealing with the physical
constructs of a commercial database program (Oracle, Access, DB2, etc.)?
From:
Fabian Pascal
To: GA
Here's an
extract from my reply to a critic, forthcoming at DMDirect:
“A common
criticism of the relational model is that it is not practical because it “does
not address” physical implementation, while in reality this is a huge practical
advantage.
Codd's Rule
8, Physical Data Independence: Interactive applications and application
programs should not have to be modified whenever changes in internal storage
structures and access methods are made to the database.
Note that how
products should achieve this is not specified, and no specific physical
implementations are imposed, or prohibited. The relational model is nothing but
logic applied to databases, and logic has nothing to say about physical
implementation. Moreover, as I explained in my article, this is a major
relational advantage, because it leaves implementers free to do whatever they
darn please at the physical level to maximize performance, as long as they
do not expose it to users in applications. It follows that any performance
problem encountered in practice cannot possibly be due to the relational model,
or to the relational nature of a DBMS. It is a product implementation issue
by definition.
Posted 01/03/03
[ABOUT]
[QUOTES]
[LINKS]