Don’t judge a book by its cover. With this one, I had different expectations at first--I was expecting more of a recipe book, a practical set of how-tos to boost performance for my actual deployments.
This book is something else. After an introductory part, it presents indexing techniques in detail, going far beyond classic university lectures (for example, it does not limit itself to hashing and B-trees). The presentation of each technique follows a defined schema: introduction to the technique, operation (like insert/search/update/delete), and a final discussion. Examples and use cases corroborate the presentation. Each technique is presented with a complexity study, ready to be directly applied. Of course, this approach helps with understanding. The book does not contain code samples or implementation details.
Potential readers vary. Although the introduction of the basics is clear enough for nonexperts, a mathematical background is needed to fully understand the problems and the complexity of the solutions of the presented material. An operational background, for example, real-world database experience, is also necessary to fully apply the techniques to already-existing deployments.
The author analyzes a very large list of database indexing and searching techniques, dividing it into six main parts. Part 1 covers the basics (for example, what is a database, a query, a join). Part 2 covers low-dimensional index structures, such as static or dynamic hashing, and memory-based index structures, such as binary search trees, or techniques for range searches. Part 3 covers disk-based index structures such as B-trees, and many more. Part 4 covers distance functions and distance-based structures, such as Hamming distance, norms, cosine similarity, and data structures built on top of those distances. Part 5 covers high-dimensionality structures and Part 6 covers data reduction techniques (such as principal component analysis, singular value decomposition, and so on).
In general, techniques are presented from a more theoretical aspect rather than a practical one. Therefore, the book can be consulted to get inspiration from the state of the art techniques for database indexing and searching.