Конференция завершена. Ждем вас на HighLoad++ Foundation в следующий раз!

Pluggable TOAST or One TOAST fits ALL

PostgreSQL

Доклад принят в программу конференции

Тезисы

Одной из "родовых" проблем постгреса является технология TOAST (The Oversized-Attribute Storage Technique или методика хранения сверхбольших атрибутов) в ее применении к современным типам данных с внутренней структурой, наиболее ярким представителем которых является JSONB. Проблема состоит в том, что TOAST работает с JSONB как с черным ящиком и это приводит к очень большим оверхедам как в простом доступе по ключу, так и в обновлении JSONB.

Мы расскажем про нашу работу по улучшению TOAST, который мы научили работать с типом данных так, как сам тип считает наиболее эффективно, то есть теперь большие колонки могут "нарезаться "и сжиматься не единым для всех способом, а с учетом особенностей конкретного типа данных, что в случае JSONB означает громадное улучшение производительности, про которое мы говорили весь прошлый год. Pluggable TOAST позволит реализовать все наши улучшения в виде расширений, и речь пойдет про несколько примеров его использования — стрим bytea в постгрес со скоростью диска и JSONB. Мы планируем закоммитить Pluggable TOAST в ядро PG15, чтобы иметь возможность впоследствии доработать эти примеры и отдать в сообщество как расширения.

Олег Бартунов

Postgres Professional

Олег Бартунов — наиболее известный российский ведущий разработчик PostgreSQL, которым он занимается уже более 20 лет. Им разработана поддержка русского и других языков, полнотекстовый поиск (при участии Ф. Сигаева и др.), поддержка слабоструктурированных данных (совместно с Ф. Сигаевым и А. Коротковым), новые типы индексов и многое другое.

Федор Сигаев

Postgres Professional

Федор Сигаев - один из российских ведущих разработчиков PostgreSQL. Участвует в разработке PostgreSQL с 2000 года. Вместе с Олегом Бартуновым разрабатывал GiST-индексы, полнотекстовый поиск и другие расширения и фичи ядра.

Никита Малахов

Postgres Professional

Разработчик со стажем, начинал с разработки прикладного ПО на C++ и Java и как специалист 3 линии поддержки, долгое время занимался разработкой биллинга в крупном операторе сотовой связи. Также интересуется процессами вокруг разработки программного обеспечения.

Видео