Наиболее простой способ работы с таблицами из расширений PostgreSQL заключается в использовании Server Programming Interface (SPI). С этим интерфейсом мы…
Оконные функции (window functions) — это фича, позволяющая производить манипуляции между строками, возвращаемыми одним SQL-запросом. Похоже на GROUP BY ,…
Благодаря статье Внутренности PostgreSQL: страницы и кортежи мы узнали, что каждый кортеж в PostgreSQL хранит t_xmin и t_xmax — XIDы транзакций…
Ранее мы разобрались, как PostgreSQL хранит страницы на диске , и как можно посмотреть их содержимое при помощи pageinspect .…
Ранее мы установили ( часть один , часть два ) что PostgreSQL хранит все данные в страницах, размер которых по умолчанию…
Рассмотренные нами ранее ProcArray и CLOG реализованы поверх разделяемой памяти и LWLocks. Но напрямую использовать данные примитивы нам пока не доводилось.…
Карта свободного пространства , она же free space map или FSM — это структура в PostgreSQL, предназначенная для быстрого поиска…
Ранее в постах серии «Внутренности PostgreSQL» несколько раз упоминалось нечто под названием visibility map , или карта видимости ( случай…
Благодаря посту Внутренности PostgreSQL: ProcArray и CLOG мы узнали, как PostgreSQL определяет состояние транзакции по ее идентификатору, или XID. Однако…
PostgreSQL хранит данные в страницах , а страницы кэшируются в разделяемых буферах . Казалось бы, в случае аварийной остановки грязные…