Database Internals
By Alex Petrov
This is a fantastic book that explains how databases work internally. The book is divided in two parts.
The first part is about Storage Engines and it covers the different techniques that are used to store and retrieve data in a database. You will understand concepts that are important as a backend engineer. This section of the book also covers the essentials of how data is store in a disk, it is a fascinating journey to understand more advanced topics.
The second part of the book is about Distributed Systems. This part is focused on how distributed data system works and it will cover things like failure detection, replication and consistency, distributed transactions and consensus.
About Alex Petrov
Alex Petrov is a Software Engineer at Apple. He has been working with distributed systems for more than 15 years. He is a Apache Cassandra committer and PMC member.