Book Review - Database In Depth by C. J. Date
Category Book Reviews
Over the last week or so, I've been reading C. J. Date's book Database In Depth - Relational Theory for Practitioners (O'Reilly). While it's a well-done title, it's the type of book I have a hard time reading...
Contents:
Introduction; Relations Versus Types; Tuples And Relations; Relation Variables; Relational Algebra; Integrity Constraints; Database Design Theory; What Is The Relational Model?; A Little Bit Of Logic; Suggestions For Further Reading; Index
C. J. Date, along with E. F. Codd (the acknowledged "father" of relational database theory), are probably the two most influential individuals in this field. Much of what we know and practice in today's RDBMS packages all goes back to the work these two have done. Rather than write a textbook style discussion of the finer points of database theory, Date has used this book to update some of his thinking and to consolidate a number of his talks and writings of late. For serious students of relational database concepts, I'd consider this the latest "must read" to keep up with current thinking by one of the masters.
Having said that, I had a hard time slogging through the material. I tend to gravitate to technical reading material that is practical and understandable. Debates over finer points of arcane minutia will cause me to zone out quickly. Unfortunately, I felt that way through a lot of this book. There is a lot of solid technical material here, and it's definitely geared towards serious readers. Date doesn't have a lot of kind words to say about how database vendors have implemented the relational model, nor does he feel SQL is a good thing. I, on the other hand, figure the packages are what they are, and you had better learn to use them to create the systems needed by your customers. That's probably why I'm a developer and not a system architect. Reading a number of pages on why Date and Codd disagree on whether nulls are valid or allowed doesn't do much for me. They're there, you need to understand them, and then you need to move on. Another hard part for me was the heavy emphasis on mathematical proofs and such. Since I don't have that type of background, I'm quickly lost...
Even though I wasn't completely enamored with the book, I still think it is a good title. For the right reader, this will be material that they will benefit from. For the average person who got training on Oracle or DB2 and understand basic relational database theory, this may be a bit more difficult to get through...
Over the last week or so, I've been reading C. J. Date's book Database In Depth - Relational Theory for Practitioners (O'Reilly). While it's a well-done title, it's the type of book I have a hard time reading...
Contents:
Introduction; Relations Versus Types; Tuples And Relations; Relation Variables; Relational Algebra; Integrity Constraints; Database Design Theory; What Is The Relational Model?; A Little Bit Of Logic; Suggestions For Further Reading; Index
C. J. Date, along with E. F. Codd (the acknowledged "father" of relational database theory), are probably the two most influential individuals in this field. Much of what we know and practice in today's RDBMS packages all goes back to the work these two have done. Rather than write a textbook style discussion of the finer points of database theory, Date has used this book to update some of his thinking and to consolidate a number of his talks and writings of late. For serious students of relational database concepts, I'd consider this the latest "must read" to keep up with current thinking by one of the masters.
Having said that, I had a hard time slogging through the material. I tend to gravitate to technical reading material that is practical and understandable. Debates over finer points of arcane minutia will cause me to zone out quickly. Unfortunately, I felt that way through a lot of this book. There is a lot of solid technical material here, and it's definitely geared towards serious readers. Date doesn't have a lot of kind words to say about how database vendors have implemented the relational model, nor does he feel SQL is a good thing. I, on the other hand, figure the packages are what they are, and you had better learn to use them to create the systems needed by your customers. That's probably why I'm a developer and not a system architect. Reading a number of pages on why Date and Codd disagree on whether nulls are valid or allowed doesn't do much for me. They're there, you need to understand them, and then you need to move on. Another hard part for me was the heavy emphasis on mathematical proofs and such. Since I don't have that type of background, I'm quickly lost...
Even though I wasn't completely enamored with the book, I still think it is a good title. For the right reader, this will be material that they will benefit from. For the average person who got training on Oracle or DB2 and understand basic relational database theory, this may be a bit more difficult to get through...



Comments
And I'm glad I wasn't the only one who felt that way. I thought perhaps I was just too shallow to understand.
Posted by Duffbert At 16:03:12 On 20/06/2005 | - Website - |
-rich
Posted by Richard Schwartz At 10:07:39 On 19/06/2005 | - Website - |
BTW, I finally decided to show up here and comment. We missed ya at church!
Posted by Lee Ballard At 11:56:31 On 20/06/2005 | - Website - |
Hmmm. While I found it dense as well, I found it enjoyable, and I think it is practical. For example, Date said that for several of his SQL examples, he formulated them in Tutorial D first and later converted them, rather than just mucking about until they seemed to work. That shows the value of such a useful formalism even when it's not implemented!
I fear we're all losing such touch with the foundations of our discipline that soon we'll just be gadgeteers - playing about with whatever tools are provided for us, but never understanding enough about why those tools were built to envision anything better. All we do is applied logic - we can either "wing it" or try to base our work on what's been proven and demonstrated.
Reading a number of pages on why Date and Codd disagree on whether nulls are valid or allowed doesn't do much for me.
It wasn't quite that academic, though chapter 7 on normalization got fairly heavy. I thought the vast majority of the book was readable - not page-turning excitement, but then again neither are product manuals, and they're far less concise.
Posted by Eric At 09:54:06 On 18/10/2005 | - Website - |