Андрей Бородин, Yandex Cloud: «Трюки in-memory баз данных в традиционных СУБД»

Описание к видео Андрей Бородин, Yandex Cloud: «Трюки in-memory баз данных в традиционных СУБД»

При работе с резидентными базами данных применяются различные способы оптимизации производительности. Некоторые из этих способов можно было бы привнести и в Postgres.

В докладе рассматриваются следующие темы:

Pointer swizzling. Поиск по первичному ключу проходит длинный путь бинпоиском по страницам B-деревьев, распаковывая IndexTuple, TID, перекладывая страницы в разделяемые буферы, и, наконец, данных HEAP. На этой не самой прямой дороже есть пара мест, где можно срезать.

Более подходящие для кэширования структуры страниц. Бинарный поиск может затрагивать меньше строк кэша, а сама страница может иметь колоночную структуру (Partition Attributes Across layout).

Более оптимистичный подход к блокировке shared buffers: чтение без блокировки, сброс результата в случае каких-либо изменений.

Наш TG-канал
t.me/yandex_infrastructure

Community
t.me/DevTools_Party

Блог на Хабре
habr.com/ru/companies/yandex_cloud_and_infra/profile

Комментарии

Информация по комментариям в разработке