Dr. Edgar F. "Ted" Codd (1932-2003)Father of the RDBMS and a whole lot moreby Joe Celko Obituaries come with old age both the ones that I write and my own some day. Several years ago, I promised myself that I would try to meet people whom I admire before either of us died. Dr. Edgar Codd was one of my successes in that regard. By the time you read this column, Dr. Codd's death will be old news. Other obit writers will have rehashed the industry story about how Dr. Codd invented the relational model at IBM and how it became SQL. That's funny in a way because Dr. Codd used to gripe about SQL failing to meet his mathematical model, but it's the standard RDBMS language today and for the foreseeable future. While all of this is true and rather important to me (as my entire professional reputation is based on SQL), this summation overlooks many of the good doctor's accomplishments. One Giant Step for SQLDr. Codd started as a mathematician who did original work in self-reproducing automata (how to make a machine that can produce a copy of itself). He worked with multiprogramming and the STRETCH system. Dr. Codd also defined the rules for online analytic processing. Either of those would have been a decent career highlight. But he will always be remembered as the father of the relational database model. In 1969, Dr. Codd was a mathematician at IBM Research at the labs in San Jose, Calif., when he developed the relational model and wrote a paper for the 1970 June issue of the Communications of the ACM. Dr. Codd later defined the basic normal forms and did for data what has been done for programming added a sound mathematical foundation for proving correctness. Many Great Leaps for ProgrammersBefore Dr. Codd's model, logical data access was based on the physical storage of the data. Think about a magnetic tape or punch card; you could actually see each logical record in the physically contiguous storage on the card or tape. We didn't think about separating the logical and physical aspects of data in the old days. We were just moving to the CODASYL (that is, network) database model, which was an improvement but not a radical shift; controlled navigational access to fixed record formats replaced simple sequential access to data in fixed record formats. Suddenly, we could rearrange the data any way we wanted to see it with a few predicates and know that we were preserving the facts. Once you've made the paradigm shift (much as I hate that phrase) to a more abstract model, the whole world changes, and things cascade from that point. Having different physical models and implementations for the data under one logical model implies that I need a nonprocedural language at the logical level to access the data. I want to tell the compiler what I want, and it has to figure how to get it from an underlying physical implementation for me. So, we invented SQL and then spent the next few decades trying to figure out how to write query optimizers. If I have a logical data model, then it follows that I want a single logical model of my whole enterprise: That means no more separate, disjointed file systems with redundant data. So we now have an enterprise view of my data, the rest of the world and all that it implies data integrity, data exchange, and the whole ball of wax. Dr. Codd changed a lot more than databases. Joe Celko [celko@northfacelearning.com] is vice president of RDBMS at North Face Learning in Salt Lake City and author of five books on SQL.
|
Most Popular This Week
IE Weekly Newsletter
Subscribe to the newsletter
|
|
|











