Essential BooksSat, Jan 1, 2005 in
This page lists the most valuable books on my bookshelf. In my opinion, these books contain knowledge or wisdom that is so valuable and so hard to find that they’re worth far more than the cover price. I read a lot of books; I post independent, unbiased, non-paid-for reviews of selected books on this blog; and I mention the best of the best here on this page. If you’re interested in sending me a review copy of a book, please feel free to contact me.
I’m the lead author of this book. It is the must-have book for anyone who goes beyond casual use of MySQL. There’s no other book like it. Call me biased if you wish!
I’m a contributing author to this book. It’s a groundbreaking look at an emerging discipline, and explains how leading practitioners think and act to keep systems up and people happy. I reviewed it here.
This is a free e-book that requires registration with VividCortex. I wrote this book after years of experience with Go’s
database/sql interface. I also was one of the main authors for go-database-sql.org, which taught me a lot
about the subject matter. This is a complete rewrite from scratch, however.
This is an essential book for anyone interested in performance of any system, not just Oracle. I reviewed it here.
The focus is on a scientific method to design indexes that will produce the best performance for queries. It goes into quite a bit of detail on how databases execute specific types of queries, and develops a generic cost model that can be used to produce a quick upper-bound estimate (QUBE) for the execution time of a query. The book focuses on DB2, Oracle, and SQL Server, but applies equally well to MySQL and PostgreSQL. Generally, the book concludes, we should use indexes much more than we often do, and we should not hold irrational fears about the cost of maintaining indexes. I reviewed it here.
This book complements High Performance MySQL extremely well. I believe it should be mandatory reading for MySQL DBAs and developers once they have a working knowledge of how to use the server. I reviewed it here.
This is a clear and simple book on how to measure and plan for capacity. Highly recommended. I reviewed it here.
A well-written introduction to database design. I reviewed it here.
An excellent book for developers who must interact with databases. It explains the mistakes that programmers make over and over again, showing why they’re bad approaches, when to use them anyway, and what good alternatives exist. I reviewed it here.
A great all-around book about building scalable systems. I reviewed it here.
C. J. Date’s most important book on relational theory is much improved over its predecessor, and is well worth reading deeply to gain both the formal and the intuitive understanding needed to write correct SQL. I didn’t like it at first, but really changed my mind about it later. I reviewed it here.
This book changed my whole approach to programming. It was as revolutionary for me as the day that I truly understood what a variable is. I am not sure you’ll get much out of it if you don’t know Perl, but it might be worth learning Perl just to be able to appreciate the paradigm shift you can learn from this book.
A great book on this topic. Short — 150 pages — but very deep, and highly readable. Mostly about the Amazon platform. The author really knows first-hand how to build apps and businesses in the cloud! I reviewed it here.
A very useful book for anyone who wants to modify the MySQL source code. Also excellent for just understanding the code better. I reviewed it here.