Разделяемый буфер. Внутрянка (Максим Милютин)

12+
12+

18 просмотров

4 месяца назад

ПожаловатьсяНарушение авторских прав
12+
12+

18 просмотров

4 месяца назад

ПожаловатьсяНарушение авторских прав
12+
12+

18 просмотров

4 месяца назад

Максим Милютин, openGauss и PostgreSQL contributor, на PG BootCamp Russia 2024 Kazan, раскрыл внутренние особенности разделяемого буфера, или буферного менеджера, как одного из наиболее «горячих» мест в нагруженной СУБД. Он описал работу буфера от простейшей модели до актуального состояния в Postgres, затронув сложные и малопонятные участки кода, сделал обзор процессов вокруг буфера, текущих и потенциальных средств его мониторинга и инструментации, нюансов реализации (избежание конкуренции при allocation/replacement, одновременная работа с буфером при replacement) и оптимизирующих конструкций. Отдельное внимание было уделено таким темам, как стратегия вытеснения ring buffer, мониторинг и scan sharing. Структура буферного кеша: – разделяемая хэш-таблица (Page table) для ведения страниц в кеше, она хранит указатели и метаданные (флаг dirty, счетчики pin и reference, состояние ячейки, информация о доступе); – буферный пул (Buffer pool), хранящий загруженные страницы и пустые фреймы. Запись выступления спикера с мероприятия PG BootCamp Russia 2024, которое прошло 17 сентября 2024 г. в Казани.

Название:

Разделяемый буфер. Внутрянка (Максим Милютин)

Категория:

Разное