Екатерина Соколова

ООО «ППГ Разработка»

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

PG_QUERY_STATE: Всё о внутренней жизни ваших запросов

русский

Отлаживая взаимодействие с базой данных мы регулярно сталкиваемся с зависающими или подозрительно долго выполняющимися запросами. Как узнать степень завершённости, диагностировать ошибки в написании или выполнении, не убивая уже запущенный процесс? Модуль pg_query_state - open source расширение PostgreSQL, позволяющее в реальном времени увидеть план запроса, а также статистику по каждому этапу его выполнения, чтобы своевременно выявить и воздействовать на причину проблемы. Я расскажу про уникальные возможности применения функции pg_query_state, перспективы её использования в сочетании с существующими инструментами мониторинга и создание прогресс бара выполнения запроса на её основе.

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

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

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

Сертификация PostgreSQL: личный опыт сдачи четырех тестов

русский

В мае 2019 г. компания «Постгрес Профессиональный» запустила программу сертификации по PostgreSQL. Я работаю в этой компании с марта 2020 г. и за год успешно сдал четыре теста по курсам DBA1, DBA2, DBA3, QPT. В этом выступлении я поделюсь своим опытом подготовки и сдачи этих тестов.

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

Postgres Professional

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

Новые возможности Mamonsu 3.0

русский

Mamonsu — это активный агент мониторинга для PostgreSQL, исполненный на базе zabbix. Новое мажорное обновление Mamonsu 3.0 включает в себя новые метрики, больше возможностей для визуализации данных с помощью zabbix screens, улучшенный функционал специальных инструментов Mamonsu для взаимодействия с СУБД. Помимо обзора нового функционала в докладе также затронем нюансы обновления на новую версию.

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

Data Egret

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

Работа с запросами с точки зрения DBA

русский

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

Федор Сигаев

Postgres Professional

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

Зачем еще 64-битные значения?

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

Татьяна Крупеня

DBeaver Corp

CEO

Сергей Ридер

DBeaver Corp

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

Как ускорить загрузку данных в 10 000 раз?

русский

Что может быть важнее скорости в вопросе загрузки данных в базу? Миграция данных одна из самых востребованных функций в DBeaver, поэтому вопрос производительности стоял для нас очень остро, причем не только в применении для PostgreSQL, но и для Greenplum, Redshift и других баз, основанных на Postgres. Мы готовы поделиться маленькими секретами, как ускорить загрузку данных в 10, 100, 1000 и даже 10 000 раз без всякой магии.

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

Postgres Professional

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

Что нам стоит КУК построить

русский

Все прекрасно знают, что такое отказоустойчивый кластер PostgreSQL и как такой кластер защищает от сбоев внутри одного дата-центра. Однако, в последнее время все больше предприятий предъявляют повышенные требования к своим сервисам, эти требования включают и катастрофоустойчивость. Такие кластеры мы называем катастрофоустойчивый кластер - КУК. В докладе я расскажу о разновидностях, принципах и подходах к построению КУКов PostgreSQL на основе кластерного ПО Corosync/Pacemaker.

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

МГУ

доцент

Мифы и заблуждения о Вселенной

русский

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

Антон Дорошкевич

ИнфоСофт

Руководитель ИТ

Неравный бой с "распуханием" в реалиях баз 1С

русский

Данных всё больше, диски всё быстрее, оптимизатор СУБД всё умнее, но проблема "распухания" остаётся крайне актуальной. Хочу поделиться своим опытом и подходом к борьбе с этим эффектом на большом количестве таблиц и данных в них.

Андрей Сальников

Data Egret

DBA

Индексы в помощь приложениям.

русский

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

Василий Пучков

ООО «Газпромнефть – ЦР»

Руководитель направления СУБД

Кластер PostgreSQL на Astra Linux для баз 1С

русский

Тернистый путь к четырём девяткам. Особенности кластеризации Постгрес в виртуальной среде - зачем и как? Почему Corosync/Pacemaker? Что с резервным копированием? Сложности и проблемы, и как их избежать.

Bruce Momjian

EnterpriseDB

Senior Database Architect

Postgres и вызовы будущего

english

На протяжении нескольких десятков лет Postgres остаётся динамично развивающимся проектом. Вероятно, его популярность сохранится и в последующих десятилетиях. Тем не менее, как и в случае с любым другим сложным процессом, перед СУБД PostgreSQL появляются вызовы. В настоящем докладе мы исследуем вызовы будущего, которые могут помешать росту популярности Postgres - технические, проектные, конкурентные. Исследуя эти проблемы сегодня, мы сможем избежать их последствий в будущем.

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

Postgres Professional

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

Развитие модуля анализа исторической нагрузки pg_profile/pgpro_pwr

русский

Расширение pg_profile предназначено для анализа исторической нагрузки в базах данных Postgres. Его главной особенностью является экстремальная простота установки и использования - оно не требует для работы ничего кроме самой СУБД и любого планировщика заданий. Расскажу о новых возможностях расширения pg_profile и о новых статистиках, доступных в Postgres 14. У pg_profile есть расширенная версия, доступная в базах данных PostgresPro, главным образом, она отличается поддержкой расширения pgpro_stats. Расскажу какие дополнительные возможности это дает. Кроме того, обсудим некоторые существующие проблемы и перспективы дальнейшего развития Postgres в части мониторинга потребления ресурсов.

Никита Левченко

ПАО «Ростелеком»

Старший инженер

Юрий Плотников

ООО «РТК ИТ»

Тимлид

Из Oracle в Postgres по российским рельсам. Неочевидные нюансы

Поговорим о наших подходах к выбору технических решений при проектировании архитектуры систем. Их преимущества и ограничения. Как менялась наша инженерная культура с учетом требований импортозамещения. История миграции системы с классической трехзвенной архитектурой с БД Oracle на PostgresPro. Большое внимание уделено инструментам переноса данных, а так же нюансам доработки Java/Kotlin приложений и совместимости SQL между двумя СУБД.

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

Postgres Professional

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

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

Postgres Professional

Старший разработчик

Элегантный поиск ближайших соседей в PostgreSQL

С необходимостью эффективного поиска ближайших соседей можно встретиться в разных задачах, например, поиск ближайших к заданной точке объектов на карте. Задача, на непрограммистский взгляд кажущаяся тривиальной (действительно, человек довольно легко справляется с ней глядя на карту) , на самом деле не имеет общего и доступного решения, что приводит к головной боли разработчиков, которые придумывают ad hoc решения (вставляют костыли). Эти решения, обычно некрасивые, портят настроение творческой натуры программиста, которому требуется посещение пивной, чтобы пережить когнитивный диссонанс :)

Действительно, если у человека есть карта, у которой есть определенный масштаб, и характерный размер поля зрения, то у программиста есть только координаты заданной точки и множество точек, которых может быть очень много (миллиарды звезд !), и к которому может идти большое количество конкурентных запросов, причем не только на чтение. Язык SQL позволяет очень красиво записать запрос, но реальный план его выполнения удручает - требуется прочитать всю таблицу, вычислить все расстояния от заданной точки, отсортировать по убыванию и оставить требуемое количество записей. Наличие индексов не спасает, а только приводит к полному обходу поискового дерева и чтения всей таблицы в случайном порядке, что гораздо медленнее простого чтения таблицы.

В действительности, класс задач, в которых требуется эффективный поиск ближайших соседей, гораздо шире задач пространственного поиска, например, задачи классификации, задачи поиска очепяток, кластеризации, дедупликации данных. Все они могут сильно выиграть от поддержки эффективного поиска ближайших соседей в СУБД, которые являются в настоящее время де-факто стандартом хранения данных. Эффективный поиск означает быстрый, конкурентный, масштабируемый поиск и поддержку различных типов данных (возможно, нестандартных), что и было реализовано 11 лет назад в PostgreSQL. Я расскажу про его реализацию, современное состояние и примеры использования.

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

Postgres Professional

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

Json or not Json. Плюсы и минусы использования Json в PostgreSQL

русский

Json сейчас является де-факто стандартом для разработчиков стартапов. Почему это происходит и что надо делать — учить разработчиков приложений, как правильно проектировать базу данных согласно канонам реляционной теории (которой Postgres очень хорошо соответствует) или сделать СУБД более дружественной для Json?

Иван Муратов

Первая Мониторинговая Компания

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

TimescaleDB 2.0 - Time-series данные в распределенном кластере TimescaleDB поверх ОРСУБД PostgreSQL.

русский

Расширение TimescaleDB позволяет превратить старый добрый Postgres в настоящий распределенный кластер для хранения time series данных с сохранением реляционной модели, удобного SQL и проверенной временем экосистемы. А дополнительные возможности такие, как непрерывные материализованные представления и компрессия данных, позволяют строить поистине мощные телематические хабы.

Пётр Девянин

ГК Astra Linux

Научный руководитель

Обеспечение доверия к системному ПО на примере ОС Astra Linux

русский

Разработка безопасного системного ПО (например, ОС или СУБД), достижение доверия к нему – сложная научно-техническая задача. В докладе будет показано, как ее удается решать для сертифицированной по высшим классам защиты ОС Astra Linux. При этом будут раскрыты основные направления этой деятельности, начиная с участия в формировании профильных национальных стандартов, далее разрабатывая и верифицируя формальную модель управления доступом, как основу составляющего поверхность атаки собственного механизма защиты ОС, затем применяя методы и технологии статического и динамического анализа программного кода, и завершая сбором и аналитической обработкой данных, получаемых в ходе анализа программного кода ОС, с исправлением найденных в нем ошибок в рамках практики непрерывной интеграции.

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

OZON

DBA

Мониторинг PostgreSQL: sampling plan и average active sessions своими руками

русский

Мы в ОЗОН делаем PostgreSQL as a service. На данный момент у нас уже тысячи кластеров. Мы знаем, какие вопросы мучают разработчиков, вот самые важные из них: как понять насколько нагружена база и почему запрос начал тормозить? В докладе я расскажу как мы помогаем разработчикам ответить на эти вопросы, просто взглянув в дашборд.

Даниил Захлыстов

Яндекс

Разработчик

Сжатие протокола PostgreSQL: текущий статус

русский

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

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

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

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

Александр Додохов

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

Руководитель отдела защиты баз данных

Безопасность данных при миграции в условиях импортозамещения

русский

При переносе данных возникает множество возможностей утечки данных. Как сохранить чувствительные данные и выполнить требования регуляторов? – об этом узнаете из доклада.

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

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

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

Детали реализации CREATE INDEX CONCURRENTLY

русский

С начала 2021 года я исправляю редкий баг в CREATE INDEX CONCURRENTLY. Настолько редкий, что со времён появления в 8.2 я не нашёл его упоминаний. Тем не менее, наши системы этот баг аффектил часто, и я занялся его починкой. Так началась довольно длинная детективная история, в которой я узнал много интересных деталей и улучшил своё понимание транзакций в PostgreSQL.

Алексей Фирсов

S7 techlab

руководитель разработки

Что такое PostgreSQL для Python-разработчика?

русский

Я не буду вас учить, как строить БД, как писать запросы и т.д. В этом докладе мы с вами поговорим про драйвера Python, как вообще можно использовать PostgreSQL в Python, какие инструменты для этого есть в синхронном и асинхронном мире, и почему так сложилось. Будем разговаривать про такие библиотеки Python, как: aiopg, psycopg2, asyncpg, pgbouncer, ну и, конечно же, как это все дружит с Postgres.

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

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

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

PostgreSQL 14. Финальный обзор

русский

На протяжении всего релизного цикла 14 версии мне довелось описывать принятые патчи в статьях посвященных каждому из пяти коммитфестов релиза. И даже в первых двух статьях о 15 версии нашлось что добавить про 14-ю. Эти статьи можно найти и прочитать на Хабре (и смело пропустить доклад :-)).

30 сентября наступил тот день, когда PostgreSQL 14 вышел официально. Больше уже ничего не должно измениться. И теперь совершенно точно можно делать финальный обзор изменений.

Однако рассказать обо всем новом в одном докладе - дело практически не реальное. Поэтому постараюсь составить свой собственный топ-лист.

Christopher Travers

Adjust GmbH

ИТ-директор

Почему методика Crew Resource Management должна применяться в СУБД-командах?

english

Crew Resource Management - методика, которая играет важную роль в тренировке персонала в таких областях, как авиация и атомная энергетика. Тем не менее, в IT-индустрии, эта методика до сих пор широко не внедрялась. В рамках данного доклада мы познакомимся с методикой Crew Resource Management (CRM), с проблемами, которые она решает, и почему её стоит применять во всех СУБД-командах.

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

Иван Чувашов

ООО Calltouch

ведущий разработчик-эксперт, архитектор баз данных

Несколько кейсов на проде длиной в ночь

русский

Мы эксплуатируем большие базы данных PostgreSQL, суммарный объем которых превышает 180ТБ. На каждый инстанс кластера приходится нагрузка не менее 15 тыс запросов в секунду. Эти обстоятельства, во-первых, накладывают определенные ограничения на классические подходы накатки изменений в структуре баз данных. А во-вторых, в администрировании баз данных сильно снижается право на ошибку. Ведь небольшая ошибка или неточность может привести к тому, что ближайшая ночь станет бессонной) В своем докладе я расскажу про существующие у нас ограничения на "доставку" изменений в продуктовую среду, про неклассическое поведение базы данных под нагрузкой и вообще про PostgreSQL.

Никита Дрей

OT-OIL

Руководитель группы

Особенности миграции ECM платформы на PostgreSQL

Доклад раскроет процесс и особенности проекта миграции корпоративной ECM платформы "ЭЛЬДОКА" с ORACLE на PostgreSQL: как был обеспечен объектно-ролевой доступ к данным, какого функционала было недостаточно в "свободной версии", как была организована работа с пространственными данными и как меняли подход в хранении файлового контента. Поделимся опытом, как сэкономили время/ресурсы, обеспечили репликацию данных между узлами и какие результаты в итоге были получены по производительности.

Иван Фролков

Postgres Professional

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

Надежная реализация сложной бизнес-логики с помощью pgpro_scheduler

русский

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

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

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

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

Миграция приложения Oracle PL/SQL на Postgres pl/pgSQL: взгляд два года спустя

русский

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

Григорий Смолкин

Postgres Professional

инженер по эксплуатации

Бекап 1.5K кластеров с помощью pg_probackup

русский

Без резервного копирования эксплуатация PostgreSQL недопустима. Постоянный рост количества кластеров PostgreSQL в эксплуатации создает всё новые и новые проблемы и вскрывает узкие места в выбранной схеме резервного копирования. Мы обсудим наш опыт эксплуатации pg_probackup в этих условиях.

Сергей Пронин

Percona

Manager, Technical Product Management

Disaster Recovery PostgreSQL в Kubernetes

русский

Запуск PostgreSQL в Kubernetes становится привычным делом с распространением операторов. В этом докладе расскажем про запуск отказоустойчивого PostgreSQL кластера в Kubernetes с помощью оператора, покажем, как подготовиться к падению дата центра и запуску hot-standby кластера.

Руслан Усманов

Федеральное казначейство

Заместитель начальника управления

ПУР КС - подсистема “Электронного бюджета” Федерального казначейства РФ, реализованная на полностью импортозамещённом ПО

русский

Создание полностью импортозамещенной компоненты государственной информационной системы на примере ПУР КС - подсистемы "Электронного бюджета", ключевой государственной интегрированной информационной системе управления общественными финансами. В презентации представлена архитектура подсистемы, история оптимизации производительности и описание мониторинга. Докладчик расскажет о плюсах и сложностях использования импортозамещённой системы для госсектора, а также о нюансах, которые стоит учесть ведомствам при внедрении open source решений и решений российских разработчиков.