Designing Data-Intensive Applications
I’m rating this 5-starts merely for the level of effort that went into it. That doesn’t mean I understood it all.
This is the look at all the ways people design software that handle large volumes of data. Things like replication, partitioning, indexing, etc. And it doesn’t just described them – it goes DEEP into how it all works.
Do you have any idea how hard it is to synchronize multiple machines to be working off the same data? It’s insanely complicated. This books spends hundreds of pages on all the possible ramifications of everything, down to how to handle problems resulting from clocks being off by a few seconds. And this is just ONE section.
The entire book is like this. It’s 600 pages of it, and it’s all SO well-written and researched. The author knows so, SO much about this topic.
Again, I didn’t get it all. It’s…a lot. But if you geek out on this stuff, get a highlighter, a notepad, and a study group, and go nuts.