Chapter 1, PostgreSQL Overview, introduces PostgreSQL and the new features available in PostgreSQL 11 and beyond.
Chapter 2, Understanding Transactions and Locking, explores locking and transactions, and how to utilize PostgreSQL transactions in the most efficient way possible.
Chapter 3, Making Use of Indexes, discusses indexes, their types, use cases, and how to implement our own indexing strategies.
Chapter 4, Handling Advanced SQL, is about modern SQL and its features. We will explore sets and their various types and write our own aggregates.
Chapter 5, Log Files and System Statistics, explains how to make sense of database statistics.
Chapter 6, Optimizing Queries for Good Performance, explains how to write better and faster queries. We shall also focus on understanding what makes a query poor or bad in nature.
Chapter 7, Writing Stored Procedures, takes a closer look at the basic differences between procedures and functions. Stored procedures, using extensions, and some more advanced features of PL/pgSQL shall also be discussed.
Chapter 8, Managing PostgreSQL Security, covers the most common security problems that you will face as a PostgreSQL developer and DBA.
Chapter 9, Handling Backup and Recovery, covers how to restore backups and deal with partially dumped data.
Chapter 10, Making Sense of Backups and Replication, looks at PostgreSQL's transaction log and explains what we can do with it to improve our setup and to make things more secure.
Chapter 11, Deciding on Useful Extensions, discusses some of the most widespread extensions for PostgreSQL.
Chapter 12, Troubleshooting PostgreSQL, focuses on approaching an unknown database, identifying the key bottlenecks, handling storage corruption, and inspecting broken replicas.
Chapter 13, Migrating to PostgreSQL, is about moving from other databases to PostgreSQL.