PG BootCamp Russia 2025
Ekaterinburg
April 10
Past event
The event was recognized under the PostgreSQL community event guidelines as directly contributing to international community development.
The intent of every PG BootCamp event is to provide attendees with hands-on experience with the PostgreSQL DBMS. The conference program is composed for everyone who is passionate about mastering the intricacies of working with PostgreSQL databases, both beginners and experienced developers willing to deepen their knowledge of the PostgreSQL core and ecosystem and to put that into practice.
About the event
The events are being conducted as part of the global PG BootCamp initiative, mission of which is to bring together PostgreSQL enthusiasts and experts in order to facilitate its adoption and development. PG BootCamp events allow participants to get up-to-date information on PostgreSQL DBMS, attend lectures and participate in practical workshops from leading experts in this field.
See you at the PG BootCamp Russia 2025 event in Ekaterinburg
April 10, 2025
Congress Hotel Ekaterinburg
Russia, Ekaterinburg, Bebelya st., 59
Official Postgres community event
Expertise
The participants learn firsthand about the most recent trends, technologies, and best practices, as well as how to identify new opportunities and utilize the most exciting PostgreSQL capabilities in their projects
Experience
Recognition
Together, we explore the possibilities of PostgreSQL, one of the world’s most popular DBMS. We participate in live discussions and Q&A sessions with expert speakers and get answers to our questions
PG BootCamp Russia 2025 Ekaterinburg follows the international guidelines, is recognized by the worldwide PostgreSQL community and directly contributes to its
development
Networking
A great place to meet in the PostgreSQL community, an ideal environment to discuss future collaborations with colleagues and industry experts
PG BootCamp Russia 2025 Ekaterinburg welcome speech
Michael Goldberg
PostgreSQL contributor, member of PostgreSQL Code of Conduct committee, Chair (2022-2023), member of PG BootCamp initiative group, PGDay Israel conferences organizer (as of 2017)
Vadim Yatsenko

CEO, Tantor Labs, Member of PG BootCamp Initiative Group, PGDay Israel Conferences Organizer (since 2017)

10:00 – 10:10
Guests registration
09:00 – 10:00
Conference program
Time zone: Ekaterinburg (GMT +05:00)
Implementing ILM in PostgreSQL
This talk is devoted to the implementation of the ILM (Information Lifecycle Management) approach in PostgreSQL, aimed at optimizing data storage costs through automated management of their lifecycle. We'll discuss the key aspects of ILM from basic principles, such as classifying data by demand using temperature maps, to practical mechanisms for implementing ILM policies in PostgreSQL, with special attention to setting up rules for transferring data between storage layers (for example, from SSD to HDD or object storage). We'll also figure out how the effective use of ILM can reduce infrastructure costs while preserving performance for hot data and automating the management of cold data in accordance with specified business requirements.
Igor Melnikov
Independent expert
13:10 – 14:00
Intermediate
Dinner
14:00 – 15:00
New life of the PipelineDB extension: working with time series in PostgreSQL
Modernizing the defunct PostgreSQL extension for time series aggregation is the focus of this session. I'll describe how its antiquated code was modified for use with more recent PostgreSQL versions, what improvements were made for aggregation algorithms, and how we are going to continue developing this extension which is available and free to use. I believe that developers working with time series and others interested in optimizing older systems will find my talk useful.
Vadim Iatsenko
CEO, Tantor Labs, Member of PG BootCamp Initiative Group, PGDay Israel Conferences Organizer (since 2017)
12:20 – 13:10
Coffee break
11:50 – 12:20
WAL-G: anatomy of catch up technology
I will talk about Postgres backup and some unusual features of WAL-G, one of which I will dwell on in more detail: we'll examine the internals of quickly reducing the lag between Primary and Standby, and I will give an idea of ​​​​the challenges in developing this feature now. I think this might be useful for administrators, as well as Go developers willing to get involved in open source development.
Andrey Borodin
PostgreSQL contributor, head of open-source DBMS development unit, Yandex Cloud
11:00 – 11:50
Hacking the query planner, again... and again (pt.1. Initial query transformations)
In this talk, from a developer’s view we will focus on the first phase of query optimization that is known as preprocessing of initial query structure. Listeners will know which normalization steps and one-way transformation rules are applied to incoming query by query optimizer under the hood before starting cost-based join enumeration process. In particular, we will touch topics like transforming ANY/EXISTS/IN subqueries into joins, flattening sub-selects, preprocessing expressions, reducing outer joins to inner one, pushing table predicates down to rels, removing useless joins and so on. For DBA and SQL developers we will try to expose some useful insights and hacks to make query more managed and performant. This talk is based on and greatly overlaps with two last talks on similar topic: Tom Lane's 2011 talk "Hacking the Query Planner” and "Hacking the Query Planner, Again” from Richard Guo at 2020. But here we are going to dig into the planner in more detail with closer look in source code implementation, providing at the end of the talk the transformtion patch that is able to improve the performance of some sort of queries by multiple times.
Developer, Tantor Labs
Sergey Soloviev
Maxim Milyutin

Head of R&D,Tantor Labs
10:10 – 11:00
Advanced
Advanced
Advanced
Time zone: Ekaterinburg (GMT +05:00)
Data archeology in PostgreSQL. How to “excavate” data from unreadable tables?
When PostgreSQL can no longer see a table and backups are just bitter memories, it's time for hardcore data archeology. For those who are prepared to delve further, this talk offers genuine techniques instead of illusions about "magic buttons." These include manually parsing table page numbers, looking for duplicate IDs, examining MVCC data, attempting resuscitation via pg_filedump, and dancing with WAL logs. You'll learn how to turn understanding the internals of PostgreSQL tables into a lifesaver when the clock is ticking and your business is frozen in panic. For those who don't mind getting their hands filthy with bits and bytes, there is always a genuine opportunity, even though there are no assurances or standard recovery techniques.
Mikhail Torgovkin
Senior DBMS expert, CDDT Maximum
18:10 – 19:00
Buffet
19:00 - 21:00
Eyedrops for Postgres, or how to increase the granularity of statistics without affecting DST
Standing at the crossroads of choosing the optimal query plan, PostgreSQL checks the statistics 'map'. But what if even the advanced statistics are not detailed enough, are too large in scale, or are inaccurate due to low base? In this talk, we will take a closer look at PostgreSQL statistics: what they depend on and how the PostgreSQL approach differs from ones implemented in other DBMS. Also, we will introduce a new GUC parameter and analyze its impact on the result, highlighting the conditions of applicability and assessing the pros and cons of other popular approaches.
Artem Bugaenko
Developer, Tantor Labs
17:20 – 18:10
Break
16:50 – 17:20
Upgrading PostgreSQL and Greenplum сatalogs
I will talk about binary compatibility between major versions of PostgreSQL and Greenplum, how it affects feature development and what methods are used to change the kernel or directory version.
Kirill Reshke
Developer, Yandex
15:55 – 16:50
Peculiarities in determining selectivity and related query execution issues
One of the primary factors influencing the query planner's ability to provide efficient plans for their implementation is selectivity. Determining selectivity may be challenging in some situations, and the planner may make mistakes that result in the selection of an inefficient plan. The report's theoretical section will examine the PostgreSQL query planner's selectivity determination capabilities, while in the practical part we will focus on an intriguing selectivity issue and possible debug-mode solutions.
Maxim Starkov
Senior developer, Tantor Labs
15:00 – 15:55
Advanced
Advanced
Intermediate
Intermediate
Xid, debugging, two smoking bugfixes of the 64-bit transaction counter
64-bit transaction counter (xid64) is one of the most important patches for high-load systems. Being developed in a separate thread, the patch is advancing in parallel with the Postgres itself with a constant developers' attention for compatibility. We will look at the structure and basic ideas of xid64, as well as some additional options implemented in this patch. In the practical part, we will explore some issues arising when developing and adapting the patch to newer versions. Also, we will investigate some attention-worthy errors, review the reasons for their occurrence and fix them.
Evgeny Voropaev
Senior developer, Tantor Labs
13:10 – 14:00
Dinner
14:00 - 15:00
Turning PostgreSQL into a RESTful API server
I will explain how to turn PostgreSQL into a RESTful API server, how to bidirectionally connect PostgreSQL to other databases in two clicks, how to streamline data exchange between databases of different types and quit using FWD.
Konstantin Vashchenkov
CTO, X-Square
12:20 – 13:10
Coffee break
11:50 – 12:20
Working with queries from a DBA standpoint
Using the perspective of a database administrator’s daily work, this session focuses on useful techniques for evaluating and improving SQL queries. From tools that translate parameterized queries into intelligible form to performance report analysis, we’ll examine tools that facilitate diagnostics. We will also figure out how to select indexes, configure statistics collection (the impact of the default_statistic_target parameter) and avoid typical problems: from the non-obvious consequences of using OR to the costs of DISTINCT + JOIN combinations. We’ll demonstrate how to decompose complex queries, control the optimizer using from_collapse_limit and join_collapse_limit, and evaluate the impact of parameters like n_distinct on execution time. Moreover, we will discuss query equivalence checks and limits of what DBAs can do, emphasizing that even administrators can’t always do what they want.
Alexander Nikitin
Lead DBA, DBA.Team
11:00 – 11:50
Approaches to implementing data compression
I will talk about what can be compressed in vanilla PostgreSQL now, what are the most promising compression algorithms, how compression affects TPS, and will also present our team’s approach to expanding compression, which in certain scenarios can increase performance or reduce hard drive requirements.
Pavel Seleznev
Community manager, Pangolin
10:10 – 11:00
Time zone: Ekaterinburg (GMT +05:00)
Intermediate
Intermediate
Basic
Basic
Checking PostgreSQL databases for hidden flaws with static analysis
Static analysis of the PostgreSQL database structure may be performed even on empty databases and can reveal a variety of possible issues and antipatterns, such as duplicate indexes and tables without PK or mismatched types for FK. We'll examine how to automate the search for these issues using SQL queries to the system catalog, how ORM and legacy code can cause them, how they can occasionally arise as a result of the project's rapid growth, and how to put checks in place in CI/CD to stop these "man-made" mistakes. I'll talk about practical cases and provide examples; architects, database administrators, and anyone annoyed of making "after the fact" changes to database schemas will find this content helpful.
Vasiliy Nikonov
CEO, Intellectual systems LLC
18:10 – 19:00
Фуршет
19:00 - 21:00
Changing table structure in PostgreSQL on the go using the dbms_redefinition technology
The Oracle DBMS has a package that reduces downtime to a minimum (near zero) while applying application updates that change the tables structure. This is something that is not yet available in the PostgreSQL world. In this talk, the author will introduce the dbms_redefinition extension made to implement this capability. If we take the pg_repack extension, it does NOT allow changing the table structure. So dbms_redefinition might be of interest to all PostgreSQL users regardless of whether they are migrating from an Oracle DBMS or not.
Igor Melnikov
Independent expert
17:20 – 18:10
Break
16:50 – 17:20
pg_orchestrator: testing the PostgreSQL upgrades
pg_orchestrator is a new open source utility designed to automate complex PostgreSQL update and testing scenarios. The extension allows you to describe the sequence of upgrade steps (using pg_upgrade, minor updates and pg_dumpall) using clear YAML manifests and set up test cases for performance analysis via Docker containers, not only optimizing processes, but also significantly reducing the risk of errors during migrations and queries testing. In my talk, I will tell you how this utility can help database administrators, DevOps teams and developers save time and increase system reliability. Well examine the Upgrade and Performance modules as well as real examples of configurations and scenarios.
Lev Nikolaev
Developer, Tantor Labs
15:55 – 16:50
Working with logical replication
Although logical replication is widely used for years, recently it gained some new improvements capable to significantly simplify things. This talk won’t provide any complicated theory; instead, we will focus on practical opportunities that sometimes go unnoticed. We will briefly overview the main types of replication and the limitations of logical approach, then we will proceed to basic operations with subscriptions and tables replication, to methods for resolving collisions, to creating a logical replication based on a physical one, with subsequent role switching, as well as to converting a physical replica into a logical one using various approaches. The talk is aimed at systematizing knowledge and understanding of logical replication, and highlighting related features helping save time and reduce risks.
Alexander Nikitin
Lead DBA, DBA.Team
15:00 – 15:55
Intermediate
Intermediate
Basic
Basic
In recognition of participation and involvement in the development of the PostgreSQL community in Russia, on-site and online participants of PG BootCamp Russia 2025 Ekaterinburg will receive certificates confirming their gained skills.
Certificates for participants
Program Committee
Become a speaker
The goal of the PG BootCamp initiative is to bring industry professionals together. You can participate as a speaker: if you feel that your expertise will benefit the attendees, helping them deepen their knowledge and practical skills in working with PostgreSQL, please do not hesitate to contact the Program committee.
Michael Goldberg
PostgreSQL contributor, member of PostgreSQL Code of Conduct committee, Chair (2022-2023), member of PG BootCamp initiative group, PGDay Israel conferences organizer (as of 2017)
Head of R&D, Tantor Labs, OpenGauss Contributor
Maxim Milutin
Umair Shahid
PostgreSQL Code of Conduct Committee Member (2019–2022) and Chair (2021-2022), Founder, Stormatics
Alexander Nikitin
DBA.Team, Lead DBA
Talks selection completed. You may apply to become a future PG BootCamp speaker
Travel partner
Media partners
General partner
Supported by
Frequently asked questions
Organizing committee
Michael Goldberg
PostgreSQL contributor, member of PostgreSQL Code of Conduct committee, Chair (2022-2023), member of PG BootCamp initiative group, PGDay Israel conferences organizer (as of 2017)
Andrey Borodin
PostgreSQL Contributor, Yandex Cloud
Vadim Yatsenko
CEO, Tantor Labs
The financial support will be used entirely for conference costs. Any remaining funds will be used to support future PG BootCamp conferences and local community events. We would like to welcome businesses who use PostgreSQL or provide support or services about it to join us in this endeavor. The PG BootCamp Russia 2025 event can be supported according to various options provided by the organizing team.
Support the event
Join the
PG BootCamp channel
on Telegram
Greetings and announcements from PG BootCamp speakers
Useful tips and best practices for using PostgreSQL
News and updates about PostgreSQL and its ecosystem
PostgreSQL learning resources
Discussions and responses to your questions from the PostgreSQL community
PG BootCamp Russia upholds the principles of PostgreSQL Code of Conduct, and we expect all event participants to do the same. The PostgreSQL Code of Conduct principles apply to all aspects of the event and any related activities, whether digital or in person, and we encourage everyone to take part in making the space welcome and secure.

Event organizers do not tolerate the following in any aspect of the event program, including business and social activities:
We invite everyone to get in touch with the PostgreSQL Code of Conduct Committee whenever you feel that something or someone is not abiding by the PostgreSQL Code of Conduct. To contact the PostgreSQL Code of Conduct Committee, send an email to coc@postgresql.org.
Code of Conduct
Behavior that is disruptive, disrespectful, or degrading to others, including any messages, images, or interactions by anyone, in any form, regardless of location
Harassment or discrimination based on age, ancestry, color, gender identity or expression, national origin, physical or mental disability, religion, sexual orientation, or any other characteristic protected by applicable local laws, regulations, and ordinances
Global resources
PG BootCamp Russia resources
PG BootCamp Russia