Home > NoSQL, Oracle, SQL > What’s so sacred about relational anyway?

What’s so sacred about relational anyway?


Simplicity and Naturalness

Dr. Codd personally believed that the chief advantage of the relational model was its simplicity and consequent appeal to users (especially casual users) who have little or no training in programming. He singles out this advantage in the opening sentence of his very first paper on relational theory, A Relational Model of Data for Large Shared Data Banks, faithfully reproduced in the 100th issue of the NoCOUG Journal (down to the misspelling of the city name Phoenix in the References section): Future users of large data banks must be protected from having to know how the data is organized in the machine (the internal representation).” He makes the point very forcefully in a subsequent paper, Normalized Data Base Structure: A Brief Tutorial: “In the choice of logical data structures that a system is to support, there is one consideration of absolutely paramount importance—and that is the convenience of the majority of users. … To make formatted data bases readily accessible to users (especially casual users) who have little or no training in programming we must provide the simplest possible data structures and almost natural language. … What could be a simpler, more universally needed, and more universally understood data structure than a table? Why not permit such users to view all the data in a data base in a tabular way?”

But does the appeal to users (especially casual users) who have little or no training in programming make relational sacred to computer professionals? Should computer professionals like you and me be protected from having to know how the data is organized in the machine? Will we develop high-performance applications if we are ignorant about those little details? If your answers are in the negative, then read on.

Should computer professionals like you and me be protected from having to know how the data is organized in the machine? Will we develop high-performance applications if we are ignorant about those little details?

Computational Elegance

Dividing 3704 by 14 is computationally more elegant than dividing MMMDCCIV by XIV (Roman notation), wouldn’t you agree? (Here’s how the Romans did division). The computational elegance of the relational model is unquestionable. The co-inventor of the SQL Language, Donald Chamberlin, reminisces: Codd gave a seminar and a lot of us went to listen to him. This was as I say a revelation for me because Codd had a bunch of queries that were fairly complicated queries and since I’d been studying CODASYL, I could imagine how those queries would have been represented in CODASYL by programs that were five pages long that would navigate through this labyrinth of pointers and stuff. Codd would sort of write them down as one-liners. These would be queries like, “Find the employees who earn more than their managers.” He just whacked them out and you could sort of read them, and they weren’t complicated at all, and I said, “Wow.” This was kind of a conversion experience for me, that I understood what the relational thing was about after that.” (The 1995 SQL Reunion: People, Projects, and Politics)

But is computational elegance the holy grail of computer professionals? Is it the be-all and end-all of application software development? If your answers are in the negative, then read on.

Pages: 1 2 3 4

Categories: NoSQL, Oracle, SQL
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: