Андрей Зеленский

Береста РК

ведущий специалист

Методы силового бэкапа крупных СУБД Postgres Pro

Доклад русский

Объемы хранимых данных в БД под управлением Postgres Pro стремительно растут. В некоторых организациях объемы БД уже превышают десятки TB. Использование существующих подходов к резервному копированию не позволяет обеспечить своевременное резервирование и восстановление данных. Мы дополнили хорошо известные и проверенные средства бэкапа Postgres Pro функционалом, который позволит обеспечивать бэкап и восстановление крупных БД, дополнительно мы позаботились об удобстве для администраторов.

Слайды

Денис Волков

Яндекс

Разработчик

SPQR - легковесное шардирование

Доклад русский

Stateless Postgres Query Router - новая система для роутинга запросов по диапазоном. Система написана на Go и стремится решить проблемы OLTP шардирования. Также система предполагает управление перемещением данных между шардами.

Юрий Жуковец

Digital Design / Docsvision

Руководитель экспертной группы

Временные таблицы как наследие перехода с MS SQL. Проблемы, оптимизация, подходы

Доклад русский

Использование временных таблиц в PG несет дополнительные проблемы использования ресурсов сервера и скорости работы запросов. Но бывает, что без них никак не обойтись, особенно при миграции кода с MS SQL, если первичный код их активно использовал при наличии логики на уровне БД. Доклад посвящен проблемам использования временных таблиц при переходе с MS SQL и подходам к их решению стандартными возможностями PG в зависимости от сценариев в коде.

Слайды

Анастасия Волкова

DBeaver Corp

JAVA Developer

Babelfish: PostgreSQL с поддержкой SQL Server

Доклад русский

Задачи миграции с классических коммерческих БД на open-source решения по-прежнему актуальны. Решения для миграции Oracle приложений на PostgreSQL уже хорошо себя зарекомендовали. Но что делать если у вас SQL Server? Хотим вам представить Babelfish - базирующийся на PostgreSQL 13 open source проект. Babelfish поддерживает сетевой протокол TDS, язык T-SQL и специфичные для SQL Server расширения SQL. Однако не всё так просто. Про особенности совместимости с SQL Server, проблемы и способы их решения мы расскажем в этом докладе. Бонус: история про то как мы добавляли поддержку Babelfish в DBeaver, используя JDBC драйвер от Microsoft.

Слайды

Алексей Борщев

Postgres Professional

Инженер

NULLs в Postgres

Доклад русский

Доклад посвящён реализации специального значения NULL в бд PostgreSQL: * Что такое NULL? * Как он обрабатывается различными функциями? * Как хранится в БД? * Индексирование NULL

Слайды

Анатолий Анфиногенов

АО "ВНИИЖТ" (ДЗО ОАО "РЖД")

Заместитель директора научного центра – начальник отдела разработки программного обеспечения АО "ВНИИЖТ"

Жизнь после импортозамещения: некоторые особености настройки БД и хранимых процедур

Доклад русский

Многие литературные произведения заканчиваются свадьбой, а про дальнейшую жизнь героев читателю скупо сообщают, что они жили долго и счастливо. В 2019 распределенное серверное приложение, работающего 24/7 на полигоне 16 железных дорог от Калининграда до Хабаровска плюс несколько БД центрального уровня, было перенесено с Oracle 11g SE на ванильный PostgreSQL 11.9. Но наша история не закончилась на успешном импортозамещении - жизнь продолжалась и порой преподносила сюрпризы. Мы столкнулись с некоторым количеством эксплуатационных проблем, часть из которых удалось решить за счет реорганизации данных, часть - за счет изменения хранимых процедур, а еще часть - за счет изменения парамеров PostgreSQL. Решение наших проблем было бы невозможным без встроенной в приложение системы логирования и профилирования. Доклад посвящен примерам успешного диагностирования и решения проблем с производительностью приложения для БД PostgreSQL, все взаимодействие с которым осуществляется только через слой хранимых процедур.

Слайды

Федор Сигаев

Postgres Professional

технический директор

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

Postgres Professional

Senior Software Developer

Большие значения в PostgreSQL

Доклад русский

Одной из задач современной базы данных является задача хранения больших значений. Само по себе хранение больших значений не представляет собой особых сложностей, но оперирование такими значениями или полями представляет собой нетривиальную задачу. PostgreSQL может предложить несколько вариантов сохранения больших значений, но все они обладают теми или иными недостатками. Как ответить на этот вызов? Наш ответ в докладе - как хранить большие и сложные значения и как с ними оперировать.

Павел Лузанов

Постгрес Профессиональный

Руководитель образовательных программ

PostgreSQL 15: MERGE и другие

Доклад русский

Заморозка кода 15-й версии была в апреле, первая бета-версия PostgreSQL 15 уже доступна. Кратко расскажу о самых интересных новинках версии. В том числе о MERGE, команде с не простой историей реализации.

Дмитрий Головицин

УКЦ ФОРС

Заместитель директора по технологиям

Современная экосистема PostgreSQL глазами Oracle DBA

Доклад русский

Доклад обозревает современные инструменты для адмнистрирования PostgreSQL. Обозначает "узкие" места производительности базы и дает ключи к решению. Нацелен на раскрытие вопросов, возникающих в частности при переходе с БД Oracle. - инструменты настройки производительности (аналоги AWR, ASH) - инструменты мониторинга (аналоги Cloud Control) - обеспечение высокой доступности и надежности БД (аналоги grid infrastructure) - известные "узкие" архитектурые аспекты базы - обзор вариантов SLA по технической поддержке

Слайды

Bruce Momjian

EnterpriseDB

Senior Database Architect

Возможности PostgreSQL 15

Доклад русский

Егор Рогов

Postgres Professional

Образовательные программы

Изнанка «PostgreSQL изнутри»

Доклад русский

Книга. Обычно читатель видит лишь конечный продукт — то, что напечатано на бумаге или открывается на экране монитора. А я предлагаю посмотреть изнанку своего недавно вышедшего труда «PostgreSQL изнутри». Приходите, если вам интересно, зачем автору писать скрипты, менять исходный код Постгреса и программировать картинки.

Слайды

Дмитрий Васильев

OZON

DBA

Что под капотом у облачного PostgreSQL в Ozon?

Доклад русский

В докладе расскажу об инфраструктуре PostgreSQL в Ozon: * какой тюнинг виртуальных машин (KVM) мы делаем * какую систему контроля версий мы создали * какие драйвера мы делаем и как это связано с отказоустойчивостью и балансировкой * как мы проводим обновление параметров виртуальных машин без остановки

Слайды

Дмитрий Вагин

Avito

Lead Engineer

Avito: где живут ваши объявления

Доклад русский

Мы ранее рассказывали про внутренне устройство Авито, где и как хранятся ваши объявления, как эти объявления попадают в поиск. За последние 3-4 года очень много изменилось в Авито, мы избавились от использования логической репликации, использования standby для читающей нагрузки, практически отказались от хранимых процедур, избавились от самописного failover решения, мигрировали все объявления в шардированную базу данных, практически "распилили" монолит и перешли на разработку в микросервисах. Расскажу о причинах такого развития, проблемах с которыми столкнулись, и текущем положении дел.

Андрей Зубков

Postgres Professional

Руководитель группы систем мониторинга

Хотите ли вы знать, чем занимался VACUUM?

Доклад русский

В Postgres Professional ведется разработка механизма сбора детальных данных о работе вакуума в statistics collector. Я расскажу о некоторых проблемах, которые это поможет решать и покажу как это выглядит на примере расширения pgpro_pwr.

Слайды

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

Postgres Professional

генеральный директор

Никита Глухов

ведущий разработчик PostgreSQL

SQL/JSON и дальше

Доклад русский

Расскажем о новых фичах SQL/JSON, принятых в 15-ю версию PostgreSQL. Покажем, как ими пользоваться, какие задачи они решают, и почему с ними лучше, чем без них. Полностью ли реализован стандарт SQL/2016 в части JSON? Тем временем, идет работа над следующим поколением стандарта SQL, где поддержка JSON развивается. Что там будет и как на это ответит Postgres ?

Слайды

Владимир Сурдин

МГУ

доцент

Есть ли жизнь на Венере?

Доклад русский

Земля, Венера и Марс — родственники, но не близнецы. Земля - живая планета, на Марсе жизнь возможна, а что мы знаем о Венере? На её поверхности адская жара - там плавятся олово и свинец. Роботы-первопроходцы погибали, исследуя Венеру. Какие тут могут быть разговоры о жизни? Оказывается - могут! Неожиданно оказалось, что объём пространства, пригодного для жизни, на Венере больше, чем на Земле. Возможно, и признаки жизни уже обнаружены. Станет ли когда-нибудь Венера второй Землёй?

Вадим Яценко

Tantor Labs

CTO

Autovacuum. Вредные советы

Доклад русский

В архитектуре PostgreSQL есть ряд особенностей, которые стоит учитывать не только при эксплуатации БД, но и в процессе проектирования схемы данных. Опытным пользователям PostgreSQL хорошо известен такой механизм как очистка/заморозка(vacuum). На просторах интернета есть большое количество материалов на тему внутреннего устройства, настройки и мониторинга. Множество полезных докладов было сделано на конференциях. Тем не менее, все еще происходят случаи переполнения счетчика транзакций(xid), казалось бы, в достаточно небольших БД. В этом докладе я расскажу об одном интересном, на мой взгляд, случае у нашего клиента. Поделюсь тем, как череда ошибок на разных этапах жизненного цикла БД, однажды привела к ее полной остановке более чем на неделю, wraparound-у, битым блокам, проблемам с обслуживанием и бессонным ночам в поисках решения. Локальная победа была достигнута - БД удалось восстановить, но история еще не закончена. Тем она и интересна.

Слайды

Михаил Цветков

эксперт

Ускорение баз данных нетрадиционными методами

Доклад русский

Традиционные дисковые базы данных имеют врожденное физическое ограничение по сравнению с In-Memory СУБД в виде подсистемы хранения, которая даже в случае All-Flash NVMe на порядки более медленная, чем оперативная память CPU. Это особенно критично для развития приложений бизнес-аналитики и OLAP-сценариев на дисковых СУБД. Есть достаточное количество примеров ускорения традиционных СУБД, в том числе и PostgreSQL, которые мы рассмотрим, и предложим новый, Storage-центричный подход к аппаратному ускорению дисковых баз данных.

Слайды

Иван Фролков

Postgres Professional

инженер-консультант

Темпоральные типы и их использование

Доклад русский

Я пересмотрел за жизнь много всякого кода, и очень часто встречал некоторый разнобой в обработке дат и времени: то у сторон не сходились отчеты за месяц, то суточные отчеты получались разные в Москве и Сан-Франциско, то еще чего-нибудь в таком же роде. Это не сказать чтобы сильно страшно, но довольно утомительно. Причина такого рода проблем всегда была связана с неаккуратной обработкой дат и времени. Тому, как этого можно постараться избежать, и посвящен мой доклад.

Слайды

Игорь Косенков

Postgres Professional

Ведущий инженер

КУК без потерь

Доклад русский

Катастрофоустойчивый кластер (КУК) подразумевает небольшую потерю данных при катастрофе основного Дата-центра (ДЦ) и переключении на резервный. Это обусловлено асинхронной репликацией между основным и резервным ДЦ. Но есть решение, которое позволит исправить эту ситуацию - обеспечить нулевую потерю данных при катастрофе основного ДЦ. Об этом решении и пойдет речь в моем докладе.

Слайды

Алексей Фадеев

sibedge

Старший разработчик .NET, евангелист Postgres

Сборка plv8: от архива с бинарниками до компактного докер-образа

Доклад русский

Расширение plv8 очень недооценено, хотя оно позволяет значительно упростить разработку для ряда задач. Уже год как мы используем его в наших проектах. Но главная причина низкой популярности – сложность сборки расширения, к тому же требующей много трафика и места на диске для временных файлов. Поэтому мы решили собирать plv8 сами и поставлять готовые бинарники (не только поставлять нашим заказчикам, а вообще выложить в открытый доступ). Сначала просто выложили бинарные файлы на github. Потом сделали докер-образ Postgres с уже установленным plv8 на основе Debian. Образ получился тяжеловатым, поэтому стали смотреть в сторону alpine, но сборка под alpine оказалась сложнее, чем мы предполагали. Я расскажу, с какими трудностями мы столкнулись и как их преодолели. Так же кратко расскажу, для каких задач хорошо подходит plv8 и как сделать процесс разработки удобнее. И, конечно, поделюсь ссылками на наши докер-образы для последних версий Postgres 13 и 14, действительно компактные и открытые для любого использования.

Слайды

Александр, Бычков

ООО "Эльбрус-2000"

Аналитик

Николай Глазков

ООО "Эльбрус-2000"

инженер

Миграция учетной системы ФГУП «Госкорпорация по ОрВД» с СУБД Oracle на Postgres Pro

Доклад русский

В докладе будет рассказано о проекте миграции учетной системы, отвечающей за финансовые операции ФГУП «Госкорпорация по ОрВД» в части взимания аэронавигационных сборов за использование воздушного пространства с СУБД Oracle на СУБД Postgres Pro.

Слайды

Андрей Бородин

Яндекс.Облако

Руководитель подразделения разработки РСУБД с открытым исходным кодом

Александр Каленик

Kontur (https://www.kontur.io/)

Software Engineer

Как мы ускорили GiST. Новости PostGIS 3.2

Доклад русский

В докладе я расскажу о новом методе для быстрого создания GiST индекса в PostgreSQL 14, какие проблемы были выявлены при добавление поддержки нового метода в PostGIS и как они будут решены в будущем. Так же в докладе будет обзор нововведений PostGIS 3.2.

Слайды

Слайды

Иван Чувашов

Data Driven Lab

DBA

Повреждение данных PostgreSQL на жестком диске. Что делать и как исправить?

Доклад русский

Любая СУБД хранит свои данные на жестком диске, следовательно, может произойти ситуация, когда данные на диске повредились. Это может быть сбой контроллера, логическое или физическое повреждение данных, есть и масса других причин. Хорошо, когда в таких ситуациях повреждается файл индекса, команда пересоздания индекса позволяет восстановить консистентность в СУБД. Гораздо хуже дело обстоит, когда поврежден файл таблицы или системного раздела, восстановить поврежденные данные тогда невозможно. Приходиться прибегать к разным ухищрениям. Это может быть восстановление из бекапа, копирование данных из поврежденной таблицы или другие способы. В докладе рассмотрим несколько случаев повреждения данных на диске и опишем варианты восстановления данных из поврежденных таблиц.

Слайды

Александра Кузнецова

Postgres Professional

Младший разработчик

Агент мониторинга Mamonsu: обзор инструмента, его возможности

Доклад русский

Mamonsu - активный агент мониторинга PostgreSQL на базе Zabbix. Агент активно продолжает развиваться: появляются новые уникальные метрики, возможности визуализации. Но помимо непосредственно сбора метрик, Mamonsu обладает и другим полезным функционалом. В докладе я кратко опишу возможности утилиты (также известные как "Mamonsu tools"), преимущества перед другими средствами мониторинга и процесс установки.

Слайды

Павел Толмачев

Postgres Professional

Специалист образовательного отдела

Коллапс в планах запросов. Достигаем и управляем

Доклад русский

Чем больше таблиц участвует в запросе, тем сложнее планировщику выбрать подходящий план выполнения (увеличивается время и используемая память). Как бы подсказать планировщику, что лучше эту пару таблиц соединить первой, а остальные - потом? Как поступить, если видно, что часть запроса можно улучшить, но оптимизатор этого не делает? В докладе я расскажу про управление порядком соединений - вы узнаете, как можно повлиять на формирование плана запроса стандартными способами "ванильного" PostgreSQL.

Слайды

Денис Суховей

Аладдин Р.Д.

Директор по продукту

Алексей Сабанов

АО "Аладдин Р.Д."

Заместитель генерального директора

Криптографическая защита информации с помощью "Крипто БД" или как достичь технологического суверенитета информационной системы

Доклад русский

Мифы и заблуждения импортозамещения. "Окирпичивание" серверов СУБД как острая угроза. Базовый план импортозамещения и проблемы переходного периода. Защита информации в СУБД и образ идеальной системы защиты. Крипто БД - система криптографической защиты данных. Как это работает?

Слайды

Алексей Арустамов

Loginom Company

директор

Быстрый ETL для PostgreSQL

Доклад русский

ETL – одна из первых задач, которую надо решить любому пользователю PostgreSQL. Существует ошибочное мнение, что low-code инструменты, реализующие ETL-процедуры, снижают требования к пользователю, но жертвуют производительностью и/или гибкостью. В выступлении будет продемонстрировано, что можно быстро и легко проектировать ETL-процедуры, не теряя в производительности. Рассказано, за счет чего обеспечивается высокая скорость, как используются особенности PostgreSQL и как связка PostgreSQL и low-code платформы позволяет закрыть одну из самых частых болей пользователей.

Рустам Абдрахимов

ООО "ФОРС Телеком"

Ведущий эксперт

Александр Любушкин

ООО "ФОРС Телеком"

Технический директор

Опыт применения Live Universal Interface (LUI) и PostgreSQL в создании системы аналитической отчётности

Доклад русский

Доклад посвящён применению PostgreSQL, LUI и LUI4ORA2PG для построения системы аналитической отчётности. В докладе излагаются следующие темы: * миграция из среды Oracle; * применение функций JSON; * как нам помогли временные таблицы; * собственные средства нагрузочного тестирования и выявление “узких” мест; * как делать красивые карты формата GeoJSON для отображения на них диаграмм; * установка и тестирование системы на ЭВМ “Эльбрус”; * чего нам не хватало или мешало в PostgreSQL.

С историей развития инструмента разработки web-приложений Live Universal Interface (LUI) и инструмента миграции LUI4ORA2PG, можно ознакомится по предыдущим выступлениям на конференциях PgConf:

https://pgconf.ru/2019/118109 ;

https://pgconf.ru/201911/264095 ;

https://pgconf.ru/2020/262456 ;

https://pgconf.ru/2021/288310 .

Слайды

Михаил Московский

PostgresPro

Инженер

Скорость физической репликации в PostgreSQL.

Доклад русский

Репликация - один из важных механизмов, призванный обеспечить отказоустойчивость и масштабируемость базы данных. В нашей практике мы регулярно сталкиваемся с проблемой низкой производительности репликации. Это побудило нас исследовать факторы, влияющие на скорость физической репликации. В этом докладе я расскажу о полученных результатах исследования. Также покажу, как менялась производительность репликации на разных версиях PostgreSQL.

Слайды

Виктор Бушмин

Альфастрахование

Бизнес-партнер

Эволюция системы от MVP до HighLoad (опыт с ОСАГО)

Доклад русский

В июне 2020 года АльфаСтрахование, как и другие страховые компании, была обязана использовать АИС РСА 2.0 для обеспечения работы ОСАГО в соответствии с законодательством. Компания занимает ведущие позиции на рынке ОСАГО, поэтому системы АИС ОСАГО, которые хранят информацию по обращениям от бизнес-систем до РСА и обратно, начали испытывать неожиданную нагрузку, БД стала деградировать, потреблять огромные для ее размера ресурсы. Деградация внезапно наступала и внезапно заканчивалась, причины были неясны. Творческий коллектив инженеров и экспертиза Postgres Pro решили проблему. Виновником оказался MyBatis (ORM) в Java-сервисах. История о том, что надо внимательно изучать документацию и проектировать высоконагруженные системы.

Слайды

Александр Никитин

Data Egret

Администратор баз данных

Апдейты? Да кому нужны ваши апдейты?!!

Доклад русский

Поговорим про то как можно изменить записи в БД без апдейтов, спустимся на самый нижний из всех возможных уровней, посмотрим, что может случиться, если вносить изменения в файлы данных в разных режимах работы.

Слайды

Андрей Бородин

Яндекс.Облако

Руководитель подразделения разработки РСУБД с открытым исходным кодом

Работа с кодом PostgreSQL

Доклад русский

Лет 7 назад я пришёл от разработки под Windows к непреодолимому желанию дописать некоторые части PostgreSQL. В этом докладе я бы хотел рассказать о деталях вещей, которые были мне не очевидны, когда я начал работать с исходным кодом, системой сборки и тестирования PG. Я собираюсь говорить о самых простых вопросах - рутинные задачи IDE, навигация, сборка и всё такое. И совсем не претендую на какой-то истинный путь. Возможно, что-то покажется совсем проблемами чайников :) Я был бы рад, если бы другие разработчики тоже поделились секретами своего разработческого быта. Можем устроить обсуждение grep vs IDE :)

Александр Кукушкин

Zalando SE

Database Engineer

Как Patroni решает проблему потери слотов логической репликации?

Доклад русский

Более семи лет назад вышел PostgreSQL 9.4, в котором впервые появились функции логического декодирования и слоты репликации. И, спустя несколько лет, на базе этих функций в PostgreSQL 10 наконец то появилась поддержка логической репликации встроенная в ядро. Казалось бы, наступило солнечное будущее к которому мы так долго шли, если бы не пара неприятных моментов: логическая репликация не работает на репликах, плюс в PostgreSQL нет механизмов создания логических слотов на реплике. Это означает что при переключении мастера на новый узел слоты репликации теряются и на практике делает невозможным использование логической репликации и CDC для серьезных промышленных решений.

Postgres-hackers уже много лет пытаются найти решение данной задачи, но к сожалению большинство попыток и горяих дискуссий в рассылке не привели ни к чему конкретному. Но, оказывается в PostgreSQL 11 была добавлена одна маленькая функция, которая позволила решить проблему потери слотов логической репликации с помощью внешних инструментов.

В докладе я расскажу как Patroni решает данную проблему используя исключительно на возможности PostgreSQL. Мы поговорим о плюсах и минусах данного решения, и попытаемся понять безопасно ли это немного погрузившись во внутренности Postgres.

Виталий Ранн

VK Cloud Solutions

Data Platform Lead Technical Product Manager

Deploy, Setup, Support: как работает Postgres Pro у облачного провайдера VK Cloud Solutions

Доклад русский

Облачный провайдер оперирует большим количеством железных ресурсов и сетевых сущностей. Но одно дело, когда компания запускает десятки инстансов БД в изолированном контуре для внутренних задач. Совсем другое — когда облачный провайдер предоставляет услуги b2b-пользователям и создает сервис для 500+ крупных компаний.

Виталий расскажет, как сейчас работает Managed PostgresPRO у облачного провайдера VK Cloud Solutions, покажет архитектуру решения и расскажет о сложностях, с которыми столкнулись при создании продукта.

Слайды