ON RELATIONAL TECHNOLOGY AND DATABASE PRACTICE
with Fabian Pascal

 

 

 

From: PC

To: Editor

 

Saw your latest and once again I think you have hit one of the many protruding nails on the head.  Understanding one's data is so central and so crucial and yet so often ignored.

 

All this talk (not from you, I note) of silver bullets. Nothing new and I wonder if the paying customers and the big-ticket so-called technology strategy companies will ever wise up. Edward de Bono wrote of 'porridge words' that distract thought from the matter at hand. When used sparingly, they can facilitate new lines of thought but when, as they are in this field, they are used so casually and often they blur the real issues. All this technicalese of XML etcetera has this effect on me.

 

During one of the few times an employer allowed me to help people with logical design, I was having difficulty because the customer's IT staff knew very little English and had perhaps even less database background. I hit on the idea of explaining tables as relations and relations as sentences - sentences that must have the same 'size and shape'. Their faces seemed to light up and when they agreed that they had overloaded some of their tables, I was very pleased with myself.  I felt vindicated a few weeks later when I read an article about predicates and propositions, which put these thoughts much more precisely than I could, that Hugh Darwen had written in the now defunct DBPD magazine. Of course, the changes created new problems because the database product, like so many others, gave precious few ways to map the logical design to the physical one. But I regarded these as preferable problems since the staff was much more interested in the more concrete physical optimization techniques.

 

Without any disrespect to Dr. Codd (who I once met but was too awe-struck to ask any questions of), I have often thought that the language used by everybody in the field, with words such as "tables", nearly always brings connotations of physical arrangements to the mind of anybody who has done traditional programming. This seems unfortunate to me. Especially after I read Mr. McGoveran's proposals for results that might embody more than one table. (I wonder if these might not be part of the key for much better physical integration of databases with their visualization for users, not to mention smarter engines.)

 

I came across a site the other day, http://www.mcjones.org, where a bunch of the System R people reminisced about its development on the occasion of, I think, the 25th anniversary of one of Codd's early papers. Presumably Mr. Date was absent from this gathering so that he could write his own most interesting history, which I remember reading five or six years ago. Anyway, I was struck again by how often their design decisions were either determined or distorted by physical considerations. And now, when many of the obstacles have been overcome courtesy of Moore's and other laws, some of those clever people seem regretful.

 

Also, please let me submit an historical, non-technical 'nit' to Mr. Date - I remember him writing that Codd did not coin the database term 'normalization of relations' as a result of R.M. Nixon's foreign policy excursion with China. But I also remember reading what I recall was an original interview with Dr. Codd in the DBMS magazine where he stated that this was the case. It's not really important, perhaps I'm just sensitive to it because I live in a country that established relations with modern China a year earlier!

 

 

Fabian Pascal Responds: Using complicated or pompous language in the absence of substance is an old trick to impress the uninformed. The blame for lack of fundamental knowledge and the “server bullet" approach is on the culture of this society. It is anti-intellectual and counts on lack of adequate education to push all sorts of silver bullets.

 

Explaining the relational model is not Codd's forte, but his contribution is major enough that he should be forgiven for that (although it would have helped the model had he been better at it). To his credit, however, he introduced the term relation and tuple precisely in order to distinguish them from the physical file and record concepts used in the industry. I am not sure that he used the term table, but I believe that the simplicity of and universal familiarity with tables is too useful to give up, so I am prefixing the term with an R, or use relational tables, to express that they are a special kind of tables, and purely logical in character [Ed. Note: Date and Darwen introduced the more precise term relvar (relation variable) in recognition of the fact that relations change over time and, therefore, are variables. In this context, R-tables would be snapshots of relvars at given points in time.)

 

 

Posted: 09/13/02

 

 

 

[ABOUT] [QUOTES] [LINKS]