Средний
Базовый
Программа конференции
10:10 – 11:05
Postgres Protocol: плюсы, минусы, подводные камни
Андрей Бородин
PostgreSQL contributor, руководитель подразделения разработки РСУБД с открытым исходным кодом, Yandex Cloud
Продвинутый
В докладе я расскажу о структуре клиент-серверного взаимодействия Postgres. Протоколу уже 20 лет, и сейчас понятно, что в свое время можно было сделать лучше.
11:05 – 12:00
Миграция int-> bigint
Александр Никитин
Когда система начинает расти, часто случается, что то, что хорошо работало ранее, через какое-то время работать перестаёт. Именно так обстоит дело и с переполнением типов данных. Если в начале проекта хватало int4, то впоследствии он может полностью исчерпаться и понадобится переходить на bigint.
ведущий администратор БД PGMechanix
В своем докладе я опишу то, с чем сталкивается ДБА, опишу путь решения подобной задачи и познакомлю с утилитой, которая значительно упростит ее выполнение.
12:30 – 13:30
От реплики до высокодоступного кластера PostgreSQL
Владимир Виноградов
Приготовьтесь к путешествию по технологиям, необходимым для создания надежного и масштабируемого кластера PostgreSQL.
руководитель DevOps «Тантор Лабс»
09:30 – 10:00
Регистрация участников
Начнем с основ, обсудим асинхронную и синхронную репликацию, перейдем к обсуждению Patroni — ключевого инструмента для управления репликацией и шардингом, а также поговорим о его роли в автоматизации обнаружения отказов и восстановления кластеров. Посмотрим работу кластера на живом примере, добавим HAProxy и PGbouncer для эффективной балансировки нагрузки и обеспечения высокой доступности, плюс keepalived для гарантирования непрерывной работы системы.
В общем, соберем комбинацию технологий в высокодоступный и масштабируемый кластер PostgreSQL.
12:00 – 12:30
Кофе-брейк
13:30 – 14:30
Обед
Средний
14:30 – 15:20
Опыт исправления многолетних багов на примере plv8
Дмитрий Дорофеев
Расскажу, как мы обходили многолетний баг в plv8, связанный с возвратом скалярных JSON-значений из Javascript-функций, а затем исправили его, решив проблему не “костылями” в нашем коде, а на уровне оригинального проекта для стабильной работы всех пользователей.
главный конструктор ГК Luxms
Поделимся историей принятия нашего pull request на GitHub, дадим советы тем, кто не решается контрибьютить, и обсудим, стоит ли дожимать эту историю, ведь остался нерешенным вопрос о формате возврата NULL-значений.
Базовый
15:20 – 16:00
О производительности PostgreSQL для разработчиков
Умаир Шахид
Разработка приложения и стресс-тестирование - это здорово. Однако когда приложение уже запускается в производство и начинает масштабироваться, мы часто сталкиваемся с ситуациями, о которых в процессе проектирования не задумывались.
основатель Stormatics
Это может быть связано, например, с новыми сценариями использования, технологическими сбоями, масштабом данных или числом пользователей. Кроме того, растет тенденция, когда общий стек технологий определяют разработчики и архитекторы, не являющиеся специалистами в области БД (в этом нет ничего плохого, тем более что это ускоряет процесс разработки и вывода на рынок).
В своем докладе я познакомлю разработчиков с некоторыми моментами, о которых следует помнить при проектировании и масштабировании приложений с использованием PostgreSQL.
Базовый
16:00 – 16:50
Пошаговая отладка исходного кода PostgreSQL на примере pg_store_plans
Лев Николаев
Сосредоточимся на детальном практическом изучении процесса отладки исходного кода PostgreSQL, научимся компилировать его с отладочными символами и применять продвинутые техники для выявления и устранения ошибок.
разработчик «Тантор Лабс»
Узнаем, как подготовить среду для отладочной компиляции и как настроить Visual Studio Code для эффективной отладки.
Обязательно поделюсь личным опытом: как я прошел путь от студента без опыта работы до начинающего разработчика, раскрыв для себя массу возможностей в мире баз данных.
16:50 – 17:20
Кофе-брейк
Средний
17:20 – 18:10
Мониторинг ожиданий и низкоуровневые проблемы производительности PostgreSQL
Максим Милютин
Мониторинг ожиданий – универсальный инструмент диагностики проблем производительности, с его помощью можно исследовать любую внезапную деградацию в базе или недостаточную утилизацию CPU. На ожиданиях строятся основные борды мониторинга производительности в коммерческих продуктах, например Performance Insights для Amazon RDS/Aurora или базовые performance-страницы Oracle Enterprise Manager.
openGauss and PostgreSQL contributor
Я расскажу о том, как на основе opensource-компонентов получить функциональность мониторинга, сравнимую с главными бордами Performance Insights. Рассмотрим основные типы ожиданий, в том числе системные (низкоуровневые), и узнаем, как уменьшить влияние факторов, свидетельствующих о проблемах масштабируемости самого ядра PostgreSQL.
18:10 – 19:00
Отладка потоковой репликации PostgreSQL
Илья Евдокимов
Репликация — довольно сложная составляющая PostgreSQL по части разработки, в ней много непростых и интересных нюансов. Проектировать правильным образом эту часть без должной отладки практически невозможно.
старший разработчик «Тантор Лабс»
Я покажу, какие инструменты использовать и как писать тесты, чтобы облегчить разработку репликации.
Продвинутый
10:00 – 10:10
Открытие PG BootCamp 2024 Minsk
Вадим Яценко
генеральный директор «Тантор Лабс»
Михаил Гольдберг
член комитета PostgreSQL Code of Conduct c 2020 г., Председатель — с 2023 г.; член инициативной группы PG Boot Camp, организатор конференций PGDay Israel с 2017 г.
Intermediate
Basic
Conference program
10:10 – 11:05
Postgres Protocol: advantages, drawbacks, and pitfalls
Andrey Borodin
PostgreSQL сontributor, head of open-source DBMS development unit, Yandex Cloud
In this paper, I'll discuss the Postgres client-server interaction structure. Even though the protocol has been in place for 20 years, it is now evident there was a better way to implement some parts of it in the past.
Advanced
11:05 – 12:00
int-> bigint migration
Alexander Nikitin
When a system starts to expand, it frequently occurs that previous successful features eventually stop functioning. When it comes to data type overflow, this is precisely true. If int4 was sufficient at the start of the project, it could eventually run out entirely and you'll need to move to bigint.
Lead DBA, PGMechanix
In this paper, I will outline the challenges that DBAs encounter, explain how to address those issues, and present a tool that will make them much easier.
12:30 – 13:30
PostgreSQL: from a replica to a high-availability cluster
Vladimir Vinogradov
Get ready for a trip through the essential techniques for building a robust and expandable PostgreSQL cluster!
DevOps Team lead, Tantor Labs
09:30 – 10:00
Guests registration at the venue
We'll start from the fundamentals, explore the synchronous and asynchronous PostgreSQL replication, speak about Patroni, a crucial tool for managing sharding and replication, and its role in automating cluster recovery and failure detection. Using a live example, we’ll see how the cluster functions and add HAProxy and PGbouncer for more efficient load balancing and high availability, and also use keepalived to ensure continuous system operation.
Generally speaking, we’ll overview a combination of technologies assemblable into a highly available and scalable PostgreSQL cluster.
12:00 – 12:30
Сoffee break
13:30 – 14:30
Lunch
14:30 – 15:20
Resolving long-standing bugs, with plv8 as an example
Dmitriy Dorofeyev
I'll explain how we worked around a long-standing bug in plv8 that was related to the return of scalar JSON values from Javascript functions. We managed to fix the issue, addressing it at the level of the original project to ensure stable operation for all users, rather than using crutches in our code.
Chief architect, Luxms
We will discuss whether it’s worthwhile to push this further because the format for returning NULL data still remains a problem, and also we’ll share the history of this particular pull request's acceptance on GitHub and make some suggestions for those who still doubt to get involved as contributors.
Basic
15:20 – 16:00
PostgreSQL performance for application developers — because there is no magic button
Umair Shahid
Developing an application and stress testing is great. But as the app goes into production and begins to scale, more often than not, we begin to encounter situations that we haven't thought about during the design process.
Founder, Stormatics
This could be related to new use cases, disruptions in technology, or the sheer scale/volume of data and users. This is especially true for databases, more so because of the increasing trend of application developers and architects defining the technology stack - i.e. non-experts of databases making database decisions. Nothing wrong with it, especially as it speeds up the process of development and go-to-market.
This talk focuses on such instances in order to guide developers of a few key items to be mindful of when designing and scaling applications using PostgreSQL.
Basic
16:00 – 16:50
Step-by-step debugging of PostgreSQL source code with pg_store_plans as an example
Lev Nikolaev
The main focus of our study will be a thorough practical examination of the debugging process, learning to compile it using debugging symbols, and applying some fascinating techniques to find and fix mistakes.
Developer, Tantor Labs
We'll cover the setup of the debug compilation environment and the configuration of VS Code for efficient debugging.
I'll also talk about my own journey, which began as a student with no prior work experience and ended with me being a rookie developer who found a wealth of opportunities in the database world.
16:50 – 17:20
Сoffee break
17:20 – 18:10
Expectations monitoring and low-level PostgreSQL performance issues
Maxim Milutin
Expectations monitoring is a versatile method for troubleshooting performance issues; it may be used to examine any sudden degradation or insufficient CPU utilization. Performance monitoring boards in commercial products, for example Performance Insights for Amazon RDS/Aurora or the basic performance pages of Oracle Enterprise Manager, are built on expectations. I am going to show how you can get rich monitoring capabilities, comparable to Performance Insights boards, using open-source components.
openGauss and PostgreSQL contributor
We'll dig into the expectation types, including system (low-level) ones, and talk about mitigating the impact of factors reflecting scalability issues in the PostgreSQL kernel.
18:10 – 19:00
Debugging the PostgreSQL streaming replication
Ilya Evdokimov
PostgreSQL replication has many intricate and fascinating aspects, making it a rather complicated aspect of the database building process. Without appropriate debugging, it is nearly hard to design this portion appropriately.
Senior developer, Tantor Labs
To help with replication development, I'll walk you through the selection of tools and test writing techniques.
10:00 – 10:10
PG BootCamp 2024 Minsk welcome speech
Vadim Yatsenko
CEO, Tantor Labs
Michael Goldberg
Member of PostgreSQL Code of Conduct Committee (as of 2020), Chair (as of 2023), Member of PG Boot Camp Initiative Group, PGDay Israel Conferences Organizer (as of 2017)
Advanced
Intermediate
Intermediate
PG BootCamp Russia 2023
Качаем скиллы PostgreSQL
Москва
5 октября 2023
Мероприятие завершено
PG BootCamp Russia 2023
Мероприятие завершено
Дата проведения
5 октября 2023
Место проведения
LOFT HALL, LOFT #4
Москва, 2-й Кожуховский пр-д, 29к6
PG BootCamp Russia 2023 – мероприятие, направленное на приобретение практических навыков при работе с СУБД PostgreSQL. Программа мероприятия была рассчитана как на начинающих специалистов, так и на опытных разработчиков, желающих углубить свои знания ядра и экосистемы PostgreSQL и применить их на практике. Площадка позволила участникам получить актуальную информацию по эффективному использованию СУБД PostgreSQL, прослушать лекции и принять участие в практических мастер-классах от ведущих экспертов в этой области.
Мероприятие завершено
PG BootCamp Russia 2023 Москва
Итоги мероприятия
5 октября 2023
1 000+
участников
11
спикеров
лекций
6
6
мастер классов
часов контента
Смотреть выступления
Смотреть презентации