Solid guide book to understand Postgres database internals. Ideal for curious software engineers who wonder what is happenning behind the scenes after queries or commands fired against a database engine. Things that make this book more stand out for me were: * In-depth sql script samples to get most of system views to look beyond declarative statements * Source code references to Postgres open source repo * Vast material about query protocol that is usually overlooked as “postgres magic”
What could be better is, I think transaction isolation, snapshot isolation protocol and locks are a little bit spreaded out into 3 different sections. Concurrency implementation is one of the areas imho where Postgres shines. Hence, it would be better to see an holistic overview of explicit and implicit locks in light of isolation, which is kind of disconnected as of now how content is structured.
Просто супер! Очень качественное, очень детальное описание того, как работает постгрес: организация системы хранения, буферизация данных при чтении и при записи, обеспечение работы уровней изоляции и внутреннее устройство индексов. Чувствуется, что автор не только глубоко и детально понимает тему, но и отлично умеет объяснять. В частности мне понравилось описание работы буферного кэша для оптимизации процесса записи на жесткий диск, описания алгоритмов работы индексов gist, brin и gin для оптимизации поиска данных - оказывается полезны не только hash и b-tree.
Читается на одном дыхании, насколько это возможно для технической литературы, и качество материала не проседает вплоть до самых последних глав. Особенно приятно, что книга не переводная, а изначально написана на русском. Работа автора и вычитка просто отличные - никаких опечаток и кривых формулировок. Крайне большая редкость для русскоязычной IT литературы.
Рекомендуется всем, кто так или иначе соприкасается с постгресом. В принципе, на мой взгляд, даже программистам не сильно вовлеченным в работу с базами данных будет интересно и полезно почитать про ухищрения и алгоритмы, которые там применяются
While this book can be rather dry and dense at times, it is still an invaluable resource for anyone who wants to know what PostgreSQL is doing under the covers. In fact, because the problems being solved are the same for any RDBMS, it is a valuable resource for anyone wanting to understand what any RDBMS is doing under the covers.
Personally, I found the discussion of transactions, buffering, locks, query optimization and all the possible types of indexes particularly interesting. So, basically all of it. ;)
I actually mostly read a Print-on-Demand hardcover from Lulu.com (which was nice and substantial) so I could read it away from my computer, but the free PDF is especially valuable as it links to the source code and documentation directly. It's just a great resource.
wonderful book, easy to read. On practical examples (SQL queries) shows how postgresql works inside. Btw every low level piece can be viewed with SQL. Very nice explanation of - physical data layout, indexes, their types etc - how transactions are really working on the low level (what exact data structures and algorithms are used inside) - how cost estimate works with REAL calculations of cost using SQL ("hey, look, this is how in SQL query we can calculate what will be the cost of this explain query run")
and all that with easy to understand examples. must have for advanced and eager for knowledge postgresql users
Long, but an easy to read resource for when you have to find ways to optimise your database for certain workflows and have to understand why they work.