Fog Creek Software
Discussion Board




Book recommendations: Distributed Systems

I've come across some wonderful books through this forum, so I would like to see if anyone can recommend some good books on some topics I need to learn in some depth. Specifically I'm looking for high quality books on topics relevant to designing and implementing a clustered database (by implementing, I mean as in "writing one from scatch").

Topics I'm interested in include:
* Transactions
* Distributed systems architecture
* Designing databases (especially clustered databases)

I'm looking for books that give a solid grounding in theory and provide a good overview of the field, and are a reasonably approachable treatment of the topic.

burninator
Wednesday, February 04, 2004

Get a book by Ken Birman, that'll cover the
distributed systems part. Get the DataBase
Management Systems book by Ramakrishnan &
Gehrke, that'll cover the database internals.

Your biggest problems will be
1) maintaining A.C.I.D. in the face of partial failure of
    some of the machines in the cluster
2) system management

Forget about transparent load balancing, location
transprency, replication transparency, fragmentation
transparency, and other academic concerns. They
are mythical. Similarly forget about 2 phase commit
and 3 phase commit and nested distributed
transactions.

You will probably use log-shipping to do the
replication, and use a single coordinator server
that the others somehow mirror (i.e. a single point
of failure). Focus on minimizing the time to restart
the system rather than minimizing downtime or
crash rates.

A
Wednesday, February 04, 2004

A couple titles spring to mind.

Transaction Processing: Concepts and Techniques
Jim Gray, Andreas Reuter
ISBN 1558601902
The standard text on the title subject.

The Tuxedo System
Terence Dwyer, Stephen Felts, Juan Andrade
ISBN 0201634937
Has some good overview material not limited to Tuxedo.

http://www.cs.cornell.edu/Info/Projects/Spinglass/pubs.html
A boatload of papers that should lead to others.

If you really want to visit some related fundamentals, there's:
Distributed Systems: Principles and Paradigms
Andrew Tanenbaum
ISBN 0130888931

veal
Wednesday, February 04, 2004

I've taken a strong shine to Weikum & Vossen's transaction book.  You can look thru it at amazon.

This is not a recommendation for your need, but more of, "Hey be aware this book exists, you may like it."

Tayssir John Gabbour
Wednesday, February 04, 2004

second the Jim Gray book - but it is really detailed, and *heavy*.

Prakash S
Wednesday, February 04, 2004

For transactions information, this is another well-written classic:
Principles of Transaction Processing (1997) by Philip Bernstein , Eric Newcomer
http://www.amazon.com/exec/obidos/tg/detail/-/1558604154
"This book provides an understanding of the internals of transaction processing systems, describing how they work and how best to use them. It includes the architecture of transaction processing monitors, transactional communications paradigms, and mechanisms for recovering from transaction and system failures."

Philip Dickerson
Wednesday, February 04, 2004

Thanks for the suggestions guys  - looks like I'm about to be settling in for a LOT of reading!

burninator
Thursday, February 05, 2004

*  Recent Topics

*  Fog Creek Home