We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

PostgreSQL's buffer manager - Problems & Improvements

Formale Metadaten

Titel
PostgreSQL's buffer manager - Problems & Improvements
Serientitel
Anzahl der Teile
34
Autor
Lizenz
CC-Namensnennung 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
The buffer manager (primarily configured by shared_buffers) is the part of Postgres that caches on-disk data in memory. That is required both for correct crash recovery and performance. Unfortunately some parts are showing its age. We'll discuss how it currently works, what problems there are, and what attempts are in progress to rectify these weaknesses: * Checkpoints can sometimes trigger huge amounts of IO, leading to long delays of concurrent requests * Lookups in the buffer cache are expensive * The Buffer Mapping table is a hash table, making efficient implementations of prefetching, write coalescing, dropping of cache contents hard * Relation extension scales badly * Cache replacement is inefficient and often replaces the wrong buffers * Double Buffering between the OS and postgres The exact content of the talk will take the state of postgresql's master branch from around the conference into account. It'll less focus on how to tune postgres, and more on how postgres itself can be improved.