title

text

Talks

  • PGConf.ru

  • Алексей Мигуцкий
    Алексей Мигуцкий
    Александр Рулинский
    Александр Рулинский

    This talk will cover key aspects of migrating from SQL Server to PostgreSQL, with a focus on converting stored procedures, triggers, views, functions, and other database objects. We’ll discuss the unique characteristics of each database system that can complicate code conversion, as well as unexpected factors that impact performance and correctness.

    The session will be valuable for both experienced database professionals and those new to database migrations.

  • Константин Ратвин
    Константин Ратвин

    Many Russian companies are striving to establish themselves in the relational database market by developing their own commercial solutions, often based on forks of vanilla PostgreSQL. But beyond the database itself, customers also need a graphical management tool — Enterprise Manager. Since forking it is extremely challenging, vendors often have to build their own from scratch while considering competitive solutions.

    This talk will explore Enterprise Managers from various Russian database vendors, comparing their key features — functionality, usability, and design — to identify which one stands out as the most effective.

  • Pavel Luzanov
    Pavel Luzanov PostgresPro

    Covering all the key changes in PostgreSQL 18 during this talk would be quite a challenge — especially since the code freeze is set to happen just a week after the presentation. However, I’ll focus on what has already been finalized.

    There are plenty of exciting updates in performance, monitoring, vacuuming (of course!), and beyond. As always, this talk is based on a series of articles reviewing the commit fests for PostgreSQL 18, published on Postgres Professional’s corporate blog on Habr.

  • Алексей Светличный
    Алексей Светличный

    Dozens of PostgreSQL instances have replaced a single large Oracle database. One of our key business systems was completely redesigned and rebuilt on an import-independent solution.  

    This talk will cover the unique challenges, architecture, issues, and operational aspects of this migration. Expect an insightful deep dive into the process!

  • Вячеслав Малютин
    Вячеслав Малютин

    In some cases, business logic is implemented directly within the database. It's well known that maintaining and developing business logic becomes much easier when it's covered by tests. However, backend tests often treat the database as an external resource and don’t always interact with a live database.

    This talk will introduce an enhanced version of the pgTap library, designed not only to facilitate unit testing and CI for database code but also to accelerate the development process itself.

  • Christopher Travers
    Christopher Travers

    Where I used to work, we had pushed ElasticSearch to its breaking point. We needed an even more scalable replacement for a write-heavy, read-seldom workload. So we built one on PostgreSQL. Now, many of us are building the successor as an open source project. 

    This talk goes over the design of Bagger (named after the giant mining machines), which can manage logs into tens or hundreds of petabytes. More than just a review of the architecture, this talk focuses on the whys and the tradeoffs made in the design. 

    The talk is intended both to showcase how programmable and powerful PostgreSQL is, but also illustrate the fundamental tradeoffs which must be faced when pushing any technology into the big data space.

  • Александр Попов
    Александр Попов PostgresPro

    This talk will explore different approaches to storing files in PostgreSQL, including:

    • Simple table-based storage

    • Large objects with pg_largeobject

    • pgpro_sfile – a large object (pgpro_bfile) storage solution

  • Igor Kosenkov
    Igor Kosenkov PostgresPro
    workshop 90 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Сергей Зимин
    Сергей Зимин PostgresPro
    workshop 30 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Andrey Borodin
    Andrey Borodin Yandex

    Currently, WAL files can be compressed with a ratio of up to 6x, but the existing compression system is inefficient.

    In this talk, I’ll share my work on improving WAL compression.

  • Иван Чувашов
    Иван Чувашов

    t’s well known that pg_upgrade is the go-to tool for fast PostgreSQL upgrades. However, even with this tool, there are cases where the upgrade process takes far longer than expected.

    In our case, upgrading a PostgreSQL database with 350,000 tables meant either waiting 3.5 hours or finding a better approach. By digging into the pg_upgrade source code, we discovered a way to speed up the process significantly. In this talk, we’ll share how we did it.

  • Dmitry Vasilyev
    Dmitry Vasilyev

    Poolers play a crucial role in PostgreSQL database operations. In this talk, we’ll discuss the challenges we faced when using and implementing existing poolers and the benefits we gained by developing our own pooler.

  • Евгений Бузюркин
    Евгений Бузюркин PostgresPro
    Дарья Барсукова
    Дарья Барсукова
    Рустам Хамидуллин
    Рустам Хамидуллин PostgresPro

    In PostgreSQL performance testing, benchmarks measure query execution time (latency). To get more reliable results, queries are executed repeatedly, generating a dataset of latency values. Performance is often assessed using standard metrics like the median or mean, but we propose a more advanced approach.

    In practice, latency distributions are often multimodal, consisting of multiple underlying distributions with distinct characteristics. In such cases, traditional statistical methods are insufficient, requiring a more detailed analysis of the dataset’s structure.

    Our work presents a tool that automatically performs statistical analysis of benchmark results, accounting for dataset-specific features. It detects multimodality, identifies the number and boundaries of dominant modes, and determines key distribution parameters—providing deeper insights into PostgreSQL performance variations.

  • Игорь Мельников
    Игорь Мельников

    In any business-critical system, there comes a need to modify table structures — whether it's adding new columns with expressions based on other columns or converting a non-partitioned table into a partitioned one.

    Using standard PostgreSQL tools for large table reorganization often results in significant downtime, as tables become unavailable for writes — and sometimes even for reads — during the process.

    In this talk, I’ll introduce dbms_redefinition, a custom-built extension that brings functionality similar to Oracle’s DBMS_REDEFINITION package to PostgreSQL. This solution minimizes downtime to near zero when applying schema changes in production. 

    Unlike pg_repack, which does not support structural modifications, dbms_redefinition is useful for all PostgreSQL users, even beyond Oracle migrations.

    I’ll share a real-world use case, discuss future development plans, and explore new features in the pipeline.

  • Andrey Borodin
    Andrey Borodin Yandex
    workshop 30 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Максим Грамин
    Максим Грамин PostgresPro

    Every day, thousands of engineers work tirelessly to make data more accurate, reliable, and up-to-date. But sometimes, we need to do the exact opposite—corrupt it.

    Whether it’s masking or replacing sensitive information, or even generating entirely new datasets while preserving key business properties, data obfuscation is a crucial task. It’s essential for testing systems, sharing data with third parties, and more. However, given the complexity of data schemas and business logic, this is far from trivial.

    In this talk, we’ll explore the challenges of working with artificial data and discuss various approaches to solving them using PostgreSQL’s built-in features and external extensions.

  • Павел Филин
    Павел Филин
    workshop 60 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Александр Попов
    Александр Попов PostgresPro

    Over the past year, pgpro_redefinition has undergone significant enhancements. In this talk, we’ll review the key updates, improvements, and new capabilities that have been introduced.

  • Alexey Lesovsky
    Alexey Lesovsky

    In 2024, Postgres Professional introduced pgpro-otel-collector, a new tool for gathering PostgreSQL telemetry data using OpenTelemetry technologies and standards.

    In this talk, I’ll explain why we chose OpenTelemetry, showcase the features of pgpro-otel-collector, and demonstrate how it helps streamline telemetry collection within a monitoring infrastructure.

  • Вадим Лактюшин
    Вадим Лактюшин PostgresPro
    М
    Михаил Сироткин PostgresPro
    workshop 120 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Дмитрий Ремизов
    Дмитрий Ремизов

    This talk explores the challenges we encountered — and solved — while migrating massive databases from Oracle to PostgreSQL.

    One of the most complex aspects of this process was rebuilding foreign keys (FKs). To overcome these challenges, we had to dive deep into the internal workings of FK creation and validation.

    Key topics include:

    Does ALTER TABLE ... ADD CONSTRAINT ... FOREIGN KEY have an execution plan?

    Can an ordinary user influence this process?

    What locks are applied during FK creation and validation?

    Also, we’ll introduce a first-principles method for investigating performance issues, applying it to a real-world FK creation bottleneck.

  • Тофиг Алиев
    Тофиг Алиев PostgresPro

    Not a PgBouncer, But a Connection Pooler. Not Odyssey, But with Coroutines

    If you’ve ever set up a high-availability PostgreSQL cluster, you’ve likely faced the challenge of redirecting traffic to the primary node after a failover.

    Typically, this requires additional software to monitor cluster status and reroute traffic accordingly. To avoid a single point of failure, you may have had to implement failover handling within that layer. Additionally, you might have encountered PostgreSQL’s limitations on handling large numbers of concurrent client sessions, necessitating query pooling.

    To solve these issues, we developed Proxima — a scalable, fault-tolerant proxy and connection pooler. Proxima automatically redirects traffic to the primary node and, in BiHA setups, seamlessly switches to a new primary in case of failure.

    In this talk, I’ll cover why and how we built Proxima, the key architectural decisions behind the extension, and the

    implementation details that enable it to handle 10,000+ concurrent client sessions.

    We’ll also explore use cases and answer your questions.

  • Петр Петров
    Петр Петров PostgresPro

    Databases are a core component of any information system, and query performance directly impacts overall efficiency.

    Last year, we explored suboptimal queries and optimization techniques, and the topic proved highly relevant. In this second installment, we’ll cover:

    Using extended statistics for computed columns

    Pagination techniques for improved query handling

    Real-world optimization examples from 1C

  • Karel van der Walt
    Karel van der Walt

    Experience Report addressing the manual migration of MS SQL Server Stored Procedures and Table-Valued Functions to PL/pgSQL. We chose a manual migration from T-SQL over using a PostgreSQL Extension with an automated translation. The motivation was that the T-SQL code contains non-trivial business logic for which we wanted idiomatic PL/pgSQL code. 

    The T-SQL Code used features like 

    • Mix of Stored Procedures and Table-valued Functions

    • Table variables, (user-defined) table types 

    • Recursive Common Table Expressions 

    • Optional parameters 

    The migration required

    • Adopting naming conventions 

    • Renaming parameters and local variables 

    • Maping table types 

    • Mapping table-valued parameters to arrays 

    • Mapping table-valued return types to SETOF record

    • Translating between arrays and tables 

    In this session we will migrate a chain of dependend functions T-SQL functions to PL/pgSQL. We will work around quirks in both T-SQL functions and PL/pgSQL.

  • Mikhail Zhilin
    Mikhail Zhilin

    The execution time of SQL queries depends on factors like indexes and up-to-date statistics. In most cases, optimizing slow queries helps resolve database performance issues.

    But what if classic query optimization doesn’t work? What if the system keeps behaving unpredictably — or worse, crashes, leading to frustration, panic, and even despair?

    In this talk, we’ll explore how Postgres Professional’s performance engineers tackle these challenges, look at the tools they use, what’s still missing, and where PostgreSQL performance optimization is headed

  • Роман Катунцев
    Роман Катунцев
    Дмитрий Муканин
    Дмитрий Муканин

    What does a modern application developer need to transition from familiar cloud-based solutions to SQL databases?

    This talk is a practical report on how we transformed an SQL database into a NoSQL-like solution with a developer-friendly interface. We’ll discuss:

    What application developers expect from a data framework

    How to implement declarative DDL, access control, and automation for reading and writing data

    Simplified DML operations, pagination, and other essential features for application development

  • Павел Филин
    Павел Филин

    For DBAs, ensuring database protection and integrity is always a top priority. Along with that comes the need to store data efficiently and compactly, without overloading the network, and ensuring reliable recovery.

    In this talk, we’ll discuss a universal solution for backup and archive storage that not only offers effective deduplication but also minimizes network load. TATLIN.BACKUP is a platform for storing PostgreSQL backups or WAL archives with compression, deduplication, and minimal data transmission over the network.

    TATLIN.BACKUP is a versatile solution for transferring and storing PostgreSQL archives at remote locations from a central office.

  • Yury Zhukovets
    Yury Zhukovets

    In this talk, we’ll:

    • Share our experience of reworking the ECM system and platform that was originally built on C.Net + MS SQL for Windows to run on Linux + Postgres, while maintaining the option to install and operate on Windows + MS.

    • Discuss migrating clients to new platforms with data migration.

    • Share insights from operating the system with a high-load client (PG servers with 192 cores and 3 TB of RAM).

  • Александр Овчинников
    Александр Овчинников

    Diagnostic Methods: Analyzing the Issue of Long CREATE DATABASE Execution

    This talk covers two cases of long CREATE DATABASE execution in PostgreSQL 11, which, in a Corosync/Pacemaker cluster configuration, caused node failover due to a monitoring timeout from the clustering software. The first case is related to a large shared buffers size, while the second involves the use of the WITH OWNER option during database creation and a large pg_shdepend system table (a feature of using the jBPM software).

  • Дмитрий Фатов
    Дмитрий Фатов

    Many developers often face performance issues in the systems they develop. One common solution for optimizing slow business processes is parallelization. But what do you do if the bottleneck is the data insertion into the database, which needs to maintain atomicity?

    In this talk, I’ll explain how to speed up data insertion by parallelizing the process in Spring, while ensuring the atomicity of the entire operation. We'll cover batch updates in Spring and PostgreSQL, discuss why updates are heavy operations, and explore ways to speed up the process in the current tech stack. Additionally, I will present other approaches to maintaining atomicity and demonstrate their differences in benchmarks.

    This will be useful for practicing engineers.

  • Владимир Комаров
    Владимир Комаров

    There are many administrator consoles out there, ranging from the old-school DBeaver to the ubiquitous pgAdmin. However, we decided to create another one. Why?

    In this talk, you’ll learn:

    • How can a single installation manage tens of thousands of database instances.

    • How many users can the console support.

    • How can you inventory your infrastructure without losing your sanity.

    • How do you integrate into an existing environment without starting from scratch.

    • How to build a security model that earns the trust of leading banks and telecom operators.

    • How can you get hands-on experience with all of this.

  • Alexey Fadeev
    Alexey Fadeev

    Two years ago, I spoke about data retrieval queries, where the LINQ to DB library offers almost limitless possibilities.

    This talk is about data modification operations. LINQ to DB allows you to execute UPDATE + JOIN queries, INSERT FROM SELECT, supports the MERGE operator, row-level locking with SELECT FOR UPDATE, temporary table creation, and features a fast data insertion mechanism.

    I will also discuss the linq2db. EntityFrameworkCore project — a solution for those who aren’t ready to leave EF Core but still want the capabilities of LINQ to DB. I’ll share our experience implementing LINQ to DB in a large-scale project.

  • Александр Попов
    Александр Попов PostgresPro
    workshop 120 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Николай Баушенко
    Николай Баушенко

    The visibility map in PostgreSQL is an important mechanism for optimizing database performance, accelerating read operations, data cleanup, and indexing. Despite some limitations, such as memory consumption and fragmentation, its use can significantly enhance performance in high-load systems. Effective utilization of the visibility map requires proper configuration and monitoring, which is especially crucial in systems with large data volumes and high transaction concurrency.

  • Anton Doroshkevich
    Anton Doroshkevich

    The issue of slow month-end closing and cost calculation on PostgreSQL has been a long-standing problem. In this talk, we will explore what modern versions of PostgreSQL offer in this regard and answer the question, "Do replicas slow down the master?"

    We will also take a look at different types of physical replication and, for dessert, share a recipe for quick and painless month-end closing in 1C without affecting the daily operations of users.

  • Алексей Гордеев
    Алексей Гордеев PostgresPro

    I’ll talk about the challenges you’ll face if you decide to implement a new TableAM. What to choose: Generic XLog or Custom RMGR? Why use a Custom SMGR? How to integrate PostgreSQL allocators into third-party libraries, even if they don't officially support it? What’s missing for a columnar engine (including vectorization and late materialization), and how can we work around those limitations?

    In the second part, I’ll dive into the internals of pgpro_tam — a new native table engine for OLAP that supports standard data formats, various SMGRs, and, if needed, third-party schedulers and execution engines, all while adhering to ACID principles. This is designed to achieve the fastest analytics on PostgreSQL (not just plugging in DuckDB).

  • Ekaterina Sokolova
    Ekaterina Sokolova PostgresPro

    So much has been said about PostgreSQL as the result of its program code. But Postgres is not just code. It’s the people who create it, develop it, and... leave a piece of themselves through comments.

    What stories can we uncover from the comments in PostgreSQL’s code? We’ll discover what the most popular word is, which comments have been in the code since the very first public commit, how the style of communication has evolved with the product, and how we can see the human side behind the lines of code and comments.

  • Дмитрий Дорофеев
    Дмитрий Дорофеев

    In this talk, I will challenge architectural stereotypes about the impossibility of communication with external systems directly from a DBMS. PostgreSQL offers vast communication capabilities; you just need to know which extensions to use.

    And when extensions aren't enough, you can create your own. For the Luxms BI project, we needed communication with NATS, so we developed our own extension in Rust. I’ll share the GitHub link and my experience of developing PostgreSQL extensions in Rust during this talk.

  • Алексей Дарвин
    Алексей Дарвин PostgresPro

    In this session, we’ll provide an overview of the features of the pg_probackup3 backup utility. 

    The new version has completely rethought the application architecture, introduced several long-awaited features, and added integration possibilities with other applications. We’ll dive into these updates and discuss them in detail during the presentation.

  • Андрей Забелин
    Андрей Забелин PostgresPro
    workshop 90 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Наталия Кокунина
    Наталия Кокунина PostgresPro
    Дмитрий Бондарь
    Дмитрий Бондарь PostgresPro

    Last year, we introduced built-in fault tolerance support in Postgres Pro Enterprise through BiHA. Our solution allows you to deploy a fault-tolerant Postgres cluster where, in the event of a failure of the primary node, a new primary node (leader) is automatically selected.

    However, this brings up the issue of redirecting traffic to the new leader. This can be solved using our Proxima extension or an external TCP proxy server. Both solutions needed to periodically query the BiHA cluster to determine the primary node.

    As an alternative, the latest version of BiHA introduced the ability to register custom functions that will be triggered by events such as leader change, node addition/removal, and others. We call this mechanism user callbacks. In this presentation, we’ll explain how the callbacks are implemented and discuss their usage.

  • Александр Степашкин
    Александр Степашкин Постгрес

    A brief presentation on various extensions that can assist with optimization.

  • Abhinav M
    Abhinav M

    In today’s rapidly evolving technology landscape, PostgreSQL has emerged as a popular choice for organizations seeking to leverage the power of open-source databases while maintaining scalability, performance, and flexibility. 

    As enterprises migrate from proprietary database systems like Oracle to PostgreSQL, developers face the challenge of adapting existing PL/SQL codebases to PL/pgSQL. Despite the similarities between these two procedural languages, significant differences in their syntax, performance characteristics, and ecosystem features require a thoughtful approach to migration and optimization. 

    This session will focus on highlighting the key differences between Oracle’s PL/SQL and PostgreSQL’s PL/pgSQL, providing actionable insights on how to efficiently navigate these differences during migration. A deep dive will be taken into critical areas including compilation methodology, Code Debugging , Exception Handling, work_mem , Bulk Load and more.

  • Сергей Фуканчик
    Сергей Фуканчик PostgresPro
    workshop 40 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Alexandr Burtsev
    Alexandr Burtsev

    Sometimes, issues arise with the operation of PostgreSQL on Linux. We will define a classification of these scenarios and provide solutions, from simple to complex. Which failures lead to data corruption? Which scenarios are more dangerous than others, and what should be monitored? We will review logging examples from DBM.P Skala-R and analyze debugging scenarios, including OS libraries, Linux kernel, drivers, and kernel modules to identify causes and resolve errors.

  • Степан Неретин
    Степан Неретин
    workshop 60 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Vladimir Sitnikov
    Vladimir Sitnikov

    Which method of data retrieval in PostgreSQL works faster: several simple SQL queries, ORM tools (Hibernate, jOOQ), or a single query with JSON aggregation? 

    In this talk, we will explore several data extraction strategies, compare their performance, and discuss potential pitfalls. We will look at how ORM tools handle one-to-one and one-to-many relationships, the overhead that arises when using JOINs, and why JSON-based retrieval might be the most efficient solution. Real benchmarks, the pros and cons of each approach – all of this will be covered in our research.

  • Vasiliy Puchkov
    Vasiliy Puchkov PostgresPro
    workshop 90 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Евгений Бредня
    Евгений Бредня PostgresPro

    In this talk, we will discuss what character encodings and collations are. I will explain the issues that can arise from sorting (COLLATION) in databases and show how these problems can be addressed using the COLLATION PROVIDER = ICU feature in PostgreSQL.

  • Aleksandr Kalendaryov
    Aleksandr Kalendaryov

    This talk will likely be of interest to network providers who can enhance their cool features by adding something to the syntax to simplify administration, as well as anyone interested in machine learning. We will explore the SQL parsing mechanism, what, where, and how to modify it in order to introduce new syntax constructs. Additionally, I will demonstrate the capabilities of machine learning on tabular data, all within the database, using the new syntax.

  • Anatoly Anfinogenov
    Anatoly Anfinogenov

    This talk addresses a common issue and touches a bit on application architecture. Temporary tables in database applications are typically used for several purposes. 

    Firstly, they are used to store intermediate results when implementing complex data processing algorithms. Secondly, in the case of stored procedures, application servers often place large datasets into temporary tables when they are too large or inconvenient to pass as parameters to stored procedures. 

    The handling of temporary tables in different DBMSs is implemented in various ways, which often complicates migration from these systems to Postgres. 

    The drawbacks of temporary tables are well-known, which leads to a reasonable desire to replace them, where possible, with other methods that can achieve the same goal. This talk focuses on alternative mechanisms provided by Postgres to solve this problem.

  • Е
    Евгений Гарбуз PostgresPro
    workshop 40 min

    Sign-up is available only for confirmed offline participants PGConf.Russia 2025

  • Andrey Zubkov
    Andrey Zubkov PostgresPro

    For over a year, Postgres Pro has provided extended vacuum statistics, reflecting its operation on individual relations.

    We've started receiving observations from production databases of clients that include these statistics. It has been quite successful, and in 2024, we began actively promoting vacuum statistics in PostgreSQL. In this talk, we will review what these statistics can tell us about the complex life of vacuum, using real-world data from live systems.

  • Ирина Токарева
    Ирина Токарева
    С
    Сергей Кузнецов
  • Вадим Войтенко
    Вадим Войтенко

    Greenmask is an open-source utility for database anonymization and synthetic data generation. A common challenge in development is creating test environments that closely resemble production. In this talk, we will explore how to use Greenmask’s features to prepare a test environment with ease. 

    We will discuss its architecture, database subsets, types of transformations, the reasons for integrating with the PostgreSQL driver, and porting some pg libraries. Additionally, we will explain how our technology helps businesses solve problems faster, more efficiently, and securely.

  • Борис Бондарев
    Борис Бондарев

    The focus of the presentation is on the challenges of building an application solution on PostgreSQL, specifically a high-load analytical data warehouse. Using the case of the company EVRAZ, we will demonstrate the impact of applying the Data Vault methodology on PostgreSQL and Greenplum databases for developing a unified production performance system.

    We will discuss the difficulties and solutions, showcasing query plans for tasks such as updating directories and handling large objects, along with optimization examples. We will highlight coding nuances, problems related to populating the model, and issues with querying from the model.

    This session will be useful for those planning to use or already facing challenges with the Data Vault methodology and performance issues in DWH on the open-source stack. We will compare technical implementation options for the Business Vault model layer, considering the specifics of PostgreSQL and Greenplum.

    We will also cover 5 real problems that arise when operating a DWH and their solutions:

    1. Transferring Business Vault object assembly logic from PostgreSQL to Greenplum.
    2. Slower ETL performance when building the current state of Business Vault in PostgreSQL.
    3. Slower Data Lineage construction in PostgreSQL and Greenplum.
    4. Slow satellite queries in Greenplum.
    5. Slow queries with "IN" or "OR" in the Business Vault layer.

  • Андрей Черняков
    Андрей Черняков UIS, CoMagic

    Making changes to tables under production load is always a complex task. For example, when you need to change a column type (e.g., from int to bigint or from timestamp to timestamptz), or move a table to a different tablespace without losing any changes that occur during the data migration.

    What if you have hundreds of such tables? With pg-transparent-alter-table, this is no longer a problem. These tasks can be solved with a single simple command:
    $ pg_tat -h 0.0.0.0 -d mydb -c "alter table mytable alter column id bigint"

    Key features include:

    • You can specify any number of alter table commands at once.
    • You can modify partitioned tables, supporting both the old inheritance-based partitioning and new declarative partitioning, including multi-level partitioning.
    • You can interrupt the process at any stage and continue later without losing progress from previous stages.
    • You can change your mind at any time, stop the execution, run "pg_tat --clean," and revert to the original state.
    • Custom commands for changing column order.
    • PostgreSQL version support: 11-17.

    After more than 5 years of existence (previously called transparent-alter-type), the project has become a reliable tool actively used in production. I would like to share my experience and discuss its capabilities.

  • Premnath j
    Premnath j

    Data plays a vital role in daily operations for many organizations. Organizations maintain updated data by performing various operations like data cleansing ,importing customer data and other similar operations , sometimes while working with massive data loads is challenging. Both Oracle and PostgreSQL systems have their advantages and challenges while working with bulk data loads. This talk underlines differences which will allow Database Administrators and Developers to tailor their approaches for planning , configuration , and understanding database features and optimizing performance of Data Ingestion. 

    • Effective use of Constraints. 
    • Role of Autovacuum Process. 
    • How to set work_mem ? 
    • Using LIMIT / OFFSET in bulk loads. 
    • Prepared Statements. 
    • UNLOGGED Tables. 
    • Temp tables Usage. 
    • Parallel Processing. 
    • Effectively Updating all the records of a specific Column with a single value. 
    • COPY Command. 
    • Significance of Partition Table. On Conflict / Do Nothing.

  • Александр Буров
    Александр Буров

    As part of the import substitution process, we encountered the need to find a reliable alternative to Oracle. PostgreSQL was considered the primary candidate for replacement, but during the research, the "vanilla" version revealed a number of critical limitations that hindered a successful transition.

    These issues included support for autonomous transactions, batch variables, and several other specifics. What is special about pg_settings? Why do we need autonomous transactions, and how do HOLD cursors relate to this? These and other topics will be discussed in our presentation, where we will also share our experience of implementing Postgres Pro Enterprise.

  • Alexander Nikitin
    Alexander Nikitin

    The work of a DBA is very multifaceted: backups, version updates, performance issues — there's a long list. But sometimes, due to the workload, we don't give enough attention to innovations that don't directly relate to what we do every day. Such is the case with logical replication.

    Of course, each of us has some skills working with this tool, but PostgreSQL is a rapidly evolving database system. Sometimes, we simply need to look around with a fresh perspective to see something new.

    My presentation will be based on this approach: we'll start with theory (as always, less theory, more practice) and simple examples, then move on to more complex examples of its use. Special attention will be given to what has changed in modern versions of PostgreSQL.

    This presentation will be helpful for those who want to get acquainted with logical replication or refresh their knowledge of this tool.

  • Alexander Liubushkin
    Alexander Liubushkin

    This presentation examines the challenges of migrating an application system from Oracle to Postgres, based on a real-world project. It provides a detailed discussion on logical replication of data from Postgres to ensure the possibility of reverting back to Oracle while maintaining the functionality of legacy reporting and integration.