Oleksii Kozlov

Swarm64 AS

Senior Test Engineer

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

Intel

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

Новые разработки для PostgreSQL: аппаратные технологии энергонезависимой памяти и SQL-акселераторы на ПЛИС в 2020

Доклад

Серверные технологии не стоят на месте и иерархия хранения и обработки данных стремительно меняется. В приходом в 2019 году принципиально новой памяти Intel® OptaneTM DC persistent memory типовой сервер получил возможность конфигурироваться с терабайтами прямо адресуемой памяти или использовать эти модули как сверхбыстрый энергонезависимый кэш. Параллельно, активно ведется работа по переносу части операций СУБД c ядер ЦПУ на акселераторы на базе ПЛИС.

Слайды

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

ЗАО ЦФТ

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

Миграция БД Zabbix c Oracle на PostgreSQL

Доклад

В докладе я расскажу о том, как появился Заббикс в нашей компании, как мы жили с Ораклом, почему мы приняли решение перейти на PostgreSQL, какие проблемы возникли у нас при переходе, а также какое ПО показалось нам удачным выбором для работы с PostgreSQL.

Слайды

Слайды

Нина Белявская

Служба движения ГУП "Мосгортранс"

главный специалист

Анализ движения наземного общественного транспорта Москвы: от PostGIS к MobilityDB

Доклад

Наземный общественный транспорт Москвы во время движения по городу передаёт геоданные с помощью системы ГЛОНАСС. Эти данные хранятся и используются для анализа движения, выявления проблемных мест, составления расписаний и проектирования выделенных полос. Для хранения данных используется БД PostgreSQL c популярным расширением PostGIS. Новое расширение MobilityDB специально предназначено для работы с геоданными, изменяющимися во времени. Я сравнила решения наших задач с использованием MobilityDB и без него и хочу рассказать о полученных результатах и перспективах использования новой системы.

Слайды

Слайды

Павел Конотопов

inCountry

DBA team lead

Леонид Альбрехт

InCountry

DBA

Строим энтерпрайз инфрастуктуру с PostgreSQL, как основу для системы хранения персональных данных

Доклад

В своем докладе я расскажу, как мы строили географически распределенную систему хранения персональных данных на основе Open Source ПО и PostgreSQL. Концепция бизнеса «inCountry» состоит в предоставлении клиентам готовой к использованию инфраструктуры для хранения персональных данных. Чтобы пользователи были уверены в том, что персональные данные, которыми они оперируют, попадают в страну их происхождения и хранятся там безопасно, не пересекая границ государства, мы написали API и построили разнообразные сервисы. Наша система соответствуют общепринятым стандартам безопасности (SOC Type 1, Type 2, PCI DSS и т.д.). Мы строили нашу инфраструктуру с помощью Consul, Nomad и Vault, использовали PostgreSQL, ElasticSearch как системы хранения, Nginx, Jenkins, Artifactory, средства для автоматизации управления и развертывания. Собрали команду разработки, команды управления – DevOps, Security, мониторинга и DBA. Мы используем как облачных провайдеров, так и bare-metal сервера, расположенные в разных регионах мира. Разработка архитектуры системы и обеспечение устойчивости инфраструктуры, согласованной и безопасной работы всех ее компонент – главная задача, которая стоит перед нашими командами.

Слайды

Слайды

Брюс Момжиан

EnterpriseDB

Senior Database Architect

Unlocking the Postgres Lock Manager

Доклад

Locking is critical for providing high concurrency for any database — you cannot fully utilize your hardware if locking is throttling its use. This talk explores all aspects of locking in Postgres by showing queries and their locks; covered lock types include row, table, shared, exclusive, and advisory lock types. The high concurrency provided by Multiversion Concurrency Control (MVCC) is also covered.

Slides are at https://momjian.us/main/writings/pgsql/locking.pdf

Слайды

Егор Рогов

Postgres Professional

эксперт

Статистика в ретроспективе

Доклад

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

Слайды

Брюс Момжиан

EnterpriseDB

Senior Database Architect

Non-Relational Postgres

Доклад

Postgres has always had strong support for relational storage. However, there are many cases where relational storage is either inefficient or overly restrictive. This talk shows the many ways that Postgres has expanded to support non-relational storage, specifically the ability to store and index multiple values, even unrelated ones, in a single database field. Such storage allows for greater efficiency and access simplicity, and can also avoid the negatives of entity-attribute-value (eav) storage. The talk will cover many examples of multiple-value-per-field storage, including arrays, range types, geometry, full text search, xml, json, and records.

Слайды

Александр Коротков

Postgres Professional

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

Узкие места PostgreSQL #2

Доклад

В прошлом году я сделал доклад про неожиданные узкие места PostgreSQL, которые могут застать пользователя (или администратора) врасплох. Обратная связь была очень положительной, а за год накопился новый материал. Поэтому я решил сделать продолжение сериала и разобрать новые ситуации, когда база неожиданно для всех встаёт колом. В этот раз упор будет на машины с большим числом ядер, но не только.

Слайды

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

Parma Technologies Group

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

Простой инструмент исторического анализа производительности - pg_profile

Доклад

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

Слайды

Александр Коротков

Postgres Professional

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

Что нам ждать от PostgreSQL 13?

Доклад

"Заморозка разработки" (feature freeze) PostgreSQL 13 запланирована на апрель 2020. Впереди ещё два commitfest'а, которые принимают новые патчи. Что мы можем сказать про PostgreSQL 13? Возможно сработает закон чередования и в нём окажется не так много прорывных фич, как в PostgreSQL 12. Даже если и так, то это будет хороший эволюционный релиз, куда войдёт много небольших фич, а также инфраструктурных изменений, готовящих постгрес к новому рывку. В докладе я расскажу о всех ожидаемых новинках PostgreSQL 13. О них можно будет судить достаточно точно, потому что останется уже только один последний commitfest, результаты которого можно будет прогнозировать.

Слайды

Владимир Алешин

Avito

Разработчик баз данных

Хранимки as code

Доклад

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

Доклад в большей степени ориентирован на разработчиков баз данных и серверных разработчиков, и является скорее мотивационным, чем хардкорно-техническим.

Слайды

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

Postgres Professional

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

Как будет развиваться Postgres в ближайшие годы

Доклад

Краткий обзор основных тенденций развития Postgres - как продукта, так и сообщества. Что изменилось в целях, которые сообщество ставит себе?

Слайды

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

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

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

Odyssey: архитектура, настройка, мониторинг

Доклад

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

Слайды

Jose Cores Finotto

Gitlab Inc

Staff Engineer

Managing PostgreSQL at Gitlab.com

Доклад

I would like to present the main projects for the evolution of our database, how we execute the administration, the problems and pitfalls we found, and how we solve them,the number and how are  the database clusters from Gitlab.com , and what is our planning for the future, sharding, kubernetes... Our environment is in an exponential growth, with millions of users and thousands of requests per second, and we keep our platform stable and scaling. Join our session and discover our how we are doing it!

Слайды

Эстебан Зимани

ULB

Профессор

Махмуд Закр

Université libre de bruxelles

Профессор

MobilityDB: Managing Mobility Data in PostgreSQL

Доклад

MobilityDB is an open source moving object database system (https://github.com/ULB-CoDE-WIT/MobilityDB). Its core function is to efficiently store and query mobility tracks, such as vehicle GPS trajectories. It implements the Moving Features specification from the Open Geospatial Consortium (OGC). MobiltyDB is engineered up from PostgreSQL and PostGIS, providing spatiotemporal data management via SQL. It thus integrates with the postgreSQL eco-system allowing for complex architectures such as mobility stream processing and cloud deployments.

The presentation will explain the architecture of MobilityDB, its database types, indexes, and operations. We will highlight the PostgreSQL features that enable this extension, and the would like to have features. This presentation will be of special interest to the PostgreSQL community, and to professionals in the transportation domain.

Слайды

Alicja Kucharczyk

Microsoft

EMEA Global Blackbelt OSS Data Tech Specialist

Architecting petabyte-scale analytics by scaling out Postgres on Azure with Citus

Доклад

The story about powering a 1.5 petabyte analytics application with 2816 cores and 18.7 TB of memory in the Citus cluster at the Microsoft. The Windows team measures the quality of new software builds by scrutinizing 20,000 diagnostic metrics based on data flowing in from 800 million Windows devices. At the same time, the team evaluates feedback from Microsoft engineers who are using pre-release versions of Windows updates. At Microsoft, the Windows diagnostic metrics are displayed on a real-time analytics dashboard called “Release Quality View” (RQV), which helps the internal “ship-room” team assess the quality of the customer experience before each new Windows update is released. Given the importance of Windows for Microsoft’s customers, the RQV analytics dashboard is a critical tool for Windows engineers, program managers, and execs.

Слайды

Константин Евтеев

Avito

Руководитель разработки юнита DBA

10 лет PostgreSQL в Avito

Доклад

PostgreSQL с момента старта Avito решает серьезные и важные задачи. Вокруг СУБД были построены основные компоненты архитектуры. За 10 лет проект активно развивался, изменилась архитектура и инфраструктура.

Как вступление, сделаю обзор: эволюции архитектуры и инфраструктуры PostgreSQL в Avito; успешно решенных вызовов.

В основной части расскажу о статусе PostgreSQL в Авито 2020: микросервисная архитектура; шардирование; проблемы коммуналок; DBaaS( Database discovery, управление доступом, failover, backup, archive, вопросы разделения ресурсов итд.); вопросы интеграции; эволюция команды.

В заключение поделюсь нашим wishlist/нерешенными вопросами.

Слайды

Кристофер Трэверс

Adjust GmbH

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

Introducing Bagger: Massive Application Log Management on PostgreSQL

Доклад

This talk discusses the open source components we use at Adjust to manage a massive number (5+PB) of application log messages on PostgreSQL in a massively multi-parallel way. It provides both a use case for PostgreSQL in a big data (high volume/velocity/variety) environment, and can be used to show the power of PostgreSQL with JSONB, GIN, and more.

This talk covers the capabilities of the components in depth, sufficient to inspire similar solutions.

Слайды

Антон Нечеухин

Miro

Technical QA lead

Инструмент как код: тестируем Postgres

Мастер-класс

На мастер-классе научимся проводить быстрые нагрузочные тесты баз данных Postgres: оптимизаций конфигов базы, структуры данных, индексов, настроек ОС и т. д. Для этого создадим код, из него поднимем инфраструктуру для теста и проведём сам тест. В результате получим гибкий инструмент в коде, к которому можно прикрутить любой мониторинг и за который не надо платить большие деньги, т.к стенд создаётся за 7 минут в пустой AWS учётке и убивается после проведения тестов. Для этого мастер-класса есть важная подготовка, которую нужно сделать заранее, чтобы в полной мере попробовать все, что спикер хочет предложить. Один шаг не быстрый - нужно сделать триальную учетную запись в AWS. Для этого требуется подтверждение регистрации от Amazon, которое они делают в течении 24 часов (если вы ранее работали в AWS, и у вас есть учетка - это хорошо, если нет - нужно пройти этот путь) Также, лучше заранее поставить последние версии ansible и terraform.

Слайды

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

Postgres Professional

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

Резервное копирование с помощью pg_probackup

Мастер-класс

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

Pavel Stehule

The possibilities of profiling plpgsql code - available tools

Мастер-класс

I like stored procedures - it is great technology. But like any other technologies it allows to write not well optimized code. It is not easy to write optimized code, sql statements in complex large applications. On second hand, there are some tools, that can be used very easily, that can help. Postgres has built-in tracking functions possibility. There are PLProfiler and plpgsql_check. With these tools is easy work to detect slow part of applications.With this knowledge, the fix of performance issue is less magic.

Слайды

Иван Панченко

Postgres Professional

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

Интересные случаи использования JSON

Мастер-класс

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

Слайды

Федор Сигаев

Postgres Professional

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

Postgres Pro Enterprise

Доклад

Рассказ об основных фичах, отличающих Enterprise-версию Postgres Pro, представленный их разработчиком.

Слайды

Дмитрий Гребенщиков

ООО "Диасофт"

Директор по импортозамещению

Особенности миграции инженерного ПО с Oracle на PostgreSQL

Доклад

Дмитрий расскажет об опыте применения автоматизированного мигратора разработанного специалистами компании «Диасофт» для перевода российских систем на PostgreSQL.
На примере миграции инженерного ПО ЛОЦМАН (компания АСКОН) раскроет ключевые особенности миграции, расскажет о проблемах миграции и путях их решения.
А также о методах оптимизации производительности смигрированных хранимых процедур.

Слайды

Николай Аверин

Miro

Backend developer

pg_repack и deferred constraints

Доклад

pg_repack является популярным инструментом для устранения bloat-a таблиц и индексов в постгресе. В большинстве случаев он отлично справляется с проблемой. Но как оказалось, в случае использования такой фичи постгреса как deferred ограничения, использование pg_repack либо сильно усложняется, либо становится невозможным. Я расскажу о том, как мы обнаружили эту проблему и опишу возможные способы ее решения - от встроенных средств постгреса до небольшого патча pg_repack.

Слайды

Иван Чувашов

ООО СИГМА

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

Миграция данных из Oracle в PostgreSQL с использованием инструмента Pentaho

Доклад

При миграции данных из одной СУБД в другую встает вопрос: выбрать сторонний инструмент или написать миграцию самому? Компании, пытаясь вырасти компетенции внутри себя, выбирают второй вариант. И наталкиваются на изобретение собственных "велосипедов". Однако на рынке есть мощные бесплатные инструменты миграции данных. Одним из таких инструментов является Pentaho Data Integration, входящий в пакет Pentaho Community Edition. В докладе будет рассмотрено применение данного пакета для миграции данных между СУБД Oracle и PostgreSQL. Особое внимание будет уделено проблемам, возникающим при использовании данного инструмента, и задачам тестирования на полноту и целостность мигрируемых данных.

Небольшая видео-иллюстрация:

Слайды

Слайды

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

Parma Technologies Group

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

Пример использования GiST в решении нестандартной поисковой задачи

Доклад

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

Слайды

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

DBeaver Corp

CEO

Сергей Ридер

Rider Soft

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

Как подключиться к облачному серверу PostgresQL в условиях высоких требований к безопасности.

Доклад

Иногда даже просто подключиться к удаленному серверу - большая проблема. Особенно, если внутри организации высокие требования к безопасности, а ваша база данных находится на удаленном закрытом облачном сервере.

Мы поговорим о том, как легко и быстро подключаться к вашему PostgreSQL через SSH, SSL, jump серверы, proxy серверы, VPN и SSO (Kerberos/SSPI/LDAP/Active Directory). Для демонстрации мы будем использовать как консоль, так и UI-клиент и JDBC-драйвер. Мы постараемся охватить самые разнообразные случаи: от самых простых до сложных и безумных.

Слайды

Камиль Исламов

Stickeroid Ai

CTO

Методы использования Sequences в бизнес-логике

Доклад

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

Слайды

Артем Иванов

Atos IT S&S

Технический консультант

Не сдерживайте свои данные: Многоядерное "железо" для PostgreSQL/Postgres Pro.

Доклад

С каждым годом задачи, решаемые с использованием СУБД PostgreSQL / Postgres Pro, становятся масштабнее и используют все больше аппаратных ресурсов.

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

В ходе доклада расскажу о многопроцессорных конфигурациях серверов Atos для PostgreSQL / Postgres Pro

Архитектура Scale-Up сервера с 8+ ЦПУ
Варианты применения
Примеры инсталляций

Слайды

Дмитрий Урсегов

Arenadata

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

Средства Greenplum для работы с внешними данными, примеры разработки коннекторов для Kafka и ClickHouse

Доклад

Greenplum - это горизонтально-масштабируемая СУБД, основанная на ядре PostgreSQL.  Она используется для OLAP нагрузок и стандартной задачей является быстрая загрузка или выгрузка большого объема данных. Часто внешними ресурсами данных являются такие же распределенные системы. В этом докладе будет рассказано, какие средства есть в Greenplum для работы с внешними ресурсами, про их архитектуру и производительность: external tables, foreign tables, streaming servers. Что планируется в следующей версии. Будут приведены примеры разработки коннекторов для Kafka и ClickHouse.

Слайды

Дарья Вилкова

Postgres Professional

младший инженер баз данных

Вадим Ипатов

Zabbix SIA

Разработчик

Плагин для мониторинга PostgreSQL для нового zabbix-agent

Доклад

В zabbix-server 4.4 стал доступен новый zabbix-agent. Он написан на Golang, имеет плагинную структуру, держит постоянное подключение и дает возможность контролировать метрики в runtime. В докладе будет рассказано о новом агента в целом, о том, как разрабатывать плагины под него, и в частности, о плагине для мониторинга PostgreSQL, разработанного компанией Postgres Professional совместно с Zabbix.

Слайды

Слайды

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

coins.ph

DBA

Эксплуатация и мониторинг PostgreSQL в условиях AWS RDS: проблемы, рецепты и решения.

Доклад

Все наверное слышали о таком сервисе как AWS RDS. Я расскажу о своем опыте использования AWS RDS PostgreSQL Engine: о положительных и отрицательных аспектах эксплуатации и мониторинга. В докладе будет особое внимание уделено инструментам которые помогли мне создать комфортное окружение и полюбить RDS. https://www.dropbox.com/s/v7udx5x96as5gbd/pgconf2020.pdf

Слайды

Pavel Stehule

The performance problems related migrations from PL/SQL to PL/pgSQL

Доклад

Porting applications from Oracle to Postgres is common work today. Unfortunately it is not without problems. In presentation I'll try to show the basic performance problems related to differences between Oracle and Postgres and PL/SQL and PL/pgSQL.

Слайды

Иван Фролков

Postgres Professional

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

Уровни изоляции транзакций в постгресе

Доклад

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

Тому, как этого избежать, и посвящен этот доклад.

Слайды

Тарас Чикин

ООО «РТ МИС»

Системный архитектор

Прислоняться разрешается. Как мы подружили MSSQL, Postgres, написали свою «репликацию» и переводим на Postgres одну из самых больших МИС в России

Доклад

Опыт перевода медицинской информационной системы «РТ МИС» (ПроМед) с MSSQL на PostgreSQL. Когда назрела необходимость перехода на PostgreSQL в нашей «РТ МИС», одной из самых больших МИС в России мы, по настоящему, ужаснулись, оценив объемы перехода: огромное количество хранимых процедур, функций, SQL-запросов в прикладном коде и сервисах. Все это требовало переписывания, осложнялось требованиями к доступности системы, и вариант «проснуться и везде работает PostgreSQL» был практически невозможен. И мы пошли другим путем – постепенно «прислоняясь» к «слону – PostgreSQL».

В докладе будут рассмотрен наш практический опыт перехода, используемые инструменты, зачем нам понадобилась еще одна репликация, проблемы и пути их решения, и что же все-таки оказалось для нас лучше : PostgreSQL или MSSQL.

Слайды

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

Data Egret

DBA

Поиск плохих запросов

Доклад

Работа с запросами и их оптимизация, это бесконечное приключение для разработчиков, работающих с базами данных. Часто под прицел попадают большие и долго выполняющиеся запросы, но что делать если таких запросов нет в вашем приложении? Как найти те самые запросы что портят взаимодействие между backend частью приложения и базой данных? Какие инструменты мы для этого используем? Обо всем этом будет рассказано в докладе.

Слайды

Альваро Эрнандес

OnGres

StackGres: Cloud-Native PostgreSQL on Kubernetes

Доклад

An enterprise-grade PostgreSQL requires many complementary technologies to the database core: high availability and automated failover, monitoring and alerting, centralized logging, connection pooling, etc. That is, a stack of components around PostgreSQL. Kubernetes has enabled a new model to deploy software abstracting away the infrastructure. However, containers are not lightweight VMs, and the packing of software paradigms that work on VMs are not valid on containers/Kubernetes. How should be PostgreSQL and its stack be deployed on Kubernetes? Enter StackGres. An open source software that is the result of re-engineering PostgreSQL to become cloud native. Join this talk to learn and see demos of how to generate PostgreSQL minimal containers; how the sidecar pattern is used (abused) to integrate PostgreSQL’s stack components, and how the networking and storage are handled. More info: stackgres.io.

Слайды

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

ООО "ИТСК"

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

Опыт эксплуатации серверов PostgreSQL в корпоративной сети

Доклад

Специфика корпоративной сети, возникающие проблемы, пути их решения. Годовой опыт эксплуатации продуктивных систем 1С на PostgreSQL в режиме 24x7 Достоинства и недостатки PostgreSQL по сравнению с MS SQL с точки зрения DBA. Опыт миграции систем 1С с MS SQL на PostgreSQL

Слайды

Слайды

Abhinav Sagar

CSG International

Sr database consultant

Premnath Jangam

CSG Systems International

DBA

Life cycle of Database Migration from Oracle, DB2 to PostgreSQL

Доклад

Many businesses which use Database management systems like Oracle, DB2 & MS SQL are unreliable these days. Moreover, the costs incurred in maintaining these systems and its product licenses keeps on increasing. As the competitors are migrating over to the new technologies and tools available in the market, it is necessary for these businesses to migrate to new environment which is efficient, consistent and reliable to stay in the market and the technologies used in the current environment have become obsolete or no longer serve the business purpose. PostgreSQL has emerged as a top open-source RDBMS software. Since there is no licensing cost associated with it most of the companies are planning to migrate the databases which are currently running on other RDBMS like Oracle, DB2, MS SQL server to PostgreSQL. This report summarizes the various methodologies, procedures and techniques involved in successfully migrating the data from Oracle to PostgreSQL & DB2 to PostgreSQL. Migration is not a simple effort there should be proper planning and testing involved in this right from database connectivity to performance analysis. In this paper we are going to cover most of the steps which we need to consider before the migration and after the migration like choosing the correct tools for implementing the migration, time taken to migrate ,data compatibility, code conversion, application connectivity to database, database configuration parameters, performance analysis, replication setups, database monitoring, patching and backup strategies.

Слайды

Слайды

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

Postgres Professional

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

Энциклопедия полнотекстового поиска

Доклад

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

Слайды

Shawn Kim

Apposha

CEO

Make Your PostgreSQL 10x Faster on Cloud in Minutes

Доклад

Cloud storage has some unique characteristics compared to traditional storage mainly because it is virtualized and controlled by software. One example is that AWS EBS shows higher throughput with larger I/O size up to 256 KiB without hurting latency. Hence, a user can get only about 4 MiB/sec with 1,000 IOPS EBS volume if the I/O request size is 4 KiB, whereas a user can get about 250 MiB/sec if the I/O request size is 256 KiB. This is because EBS consumes one I/O in a given IOPS budget for every I/O request regardless of the I/O size (up to 256 KiB). Unfortunately, PostgreSQL cannot exploit the full potential of cloud storage because PostgreSQL has designed without considering the unique characteristics of cloud storage.

In this talk, I will introduce the AppOS extension that improves the throughput of a write-intensive workload by 10x by transparently making PostgreSQL cloud storage-native. AppOS works like a storage driver that efficiently exploits the characteristics of cloud storage, such as I/O size dependency to storage throughput and latency, atomic write support in cloud block storage, and fast, but non-durable local SSDs. To do this, AppOS comprises a Linux-compatible file I/O stack including virtual file system, page cache, block I/O layer, cloud storage driver. On top of the file I/O stack, syscall module supports registering pre- and post-handler for file I/O-related system calls in order to transparently work without modifying PostgreSQL codes.

I will focus on presenting key use cases and performance results of the AppOS extension after explaining the internals. Specifically, I will show the performance results of OLTP and some batch workloads using standard benchmarking tools like pgbench and sysbench. I will also present performance results and implications on multiple clouds including AWS, GCP, and Azure.

Слайды

Максим Милютин

Ozon

Ведущий разработчик ПО

Patroni и stolon: инсталляция и отработка падений

Мастер-класс

Patroni и Stolon - два наиболее известных и продвинутых решения для оркестрации PostgreSQL и обеспечения выскокой доступности (автофейловера) кластеров Leader-Followers конфигурации. Однако инженеры, переходящие со старых проверенных решений (Corosync&Pacemaker) и встроенных из других СУБД, сталкиваются со сложностями в инсталляции этих инструментов и непониманием ролей каждого из компонентов. В данном мастер-классе будет рассмотрен типичный процесс инсталляции кластеров Patroni и Stolon на виртуальных машинах (не в контейнерах), а также разобрано поведение этих кластеров при различных фейлах в инфраструктуре. Весь процесс будет демонстрироваться на трёх виртальных машинах под управлением vagrant с использованием предварительно подготовленных образов. При желании слушатель может следовать за процессом, предварительно подготовив своё окружение.

Слайды

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

Postgres Professional

Администратор БД

Развертывание отказоустойчивого кластера Postgres на pacemaker

Мастер-класс

Если вы давно присматриваетесь к отказоустойчивым решениям, то наверняка слышали про кластеры СУБД на основе Corosync&Pacemaker.

По видам эти кластеры можно разделить на 3-х узловой и 2-х узловой с голосующим узлом. По размещению кластеры делятся на кластеры на физических серверах и в виртуальной среде. В чем их отличия и особенности их настройки?

Об этом вы узнаете, посетив мой мастер-класс. Вы также убедитесь, что установка и настройка кластера на Pacemaker не так сложна и трудоемка, как может показаться на первый взгляд.

Слайды

Альваро Эрнандес

OnGres

Kubernetes crash course for Postgres DBAs

Мастер-класс

Kubernetes is the new way of deploying software, programmatically, on almost any infrastructure (be it cloud or on-prem). But is a complex beast. How to get started? How to dive deeper? What are the specific best-practices and special hints for Postgres DBAs dealing with Kubernetes? Join this half-day tutorial to learn, practically, among other topics:

  • How to quickly get started with Kubernetes
  • Manage storage
  • Manage services, networking and ingress/egress
  • How to make Postgres cloud-native in Kubernetes
  • Do a show-run of existing Postgres operators, including Zalando, CrunchyData and StackGres.

This tutorial is very practical. BYOL! (Bring Your Own Laptop). With Kubernetes installed! (check microk8s, minikube or k3s if you don’t have any installed.

Александр Спирин

inCountry

DBA

Кирилл Калистратов

InCountry

Senior Performance Engineer

PostgreSQL Citus vs MongoDB sharded

Доклад

Мы хотим поделиться структурой и результатами теста (производительности и не только), в котором участвовали PostgreSQL/Citus и MongoDB для данных нашей компании. Это был весьма увлекательный процесс с неожиданными поворотами и неоднозначным результатом.

Слайды

Семен Трошкин

Мазар АО

Team lead

PostgreSQL cluster высокой доступности под управлением Patroni для 1С. Единая точка входа организована Consul DNS на Windows.

Доклад

200 баз, несколько кластеров, несколько терабайт данных Поделимся своим опытом настройки и использования patroni cluster Кластер СУБД под Linux, сервер 1С под windows. Используем: Сборка PostgreSQL для 1С, Patroni, Consul, Consul dns, Commvault, Ansible Vagrant файл и Ansible playbook c ролями прилагается.

Слайды

Слайды

Георгий Рылов

Яндекс

Разработчик

WAL-G: новые возможности и расширение сообщества

Доклад

У меинтейнеров open-source возникает множество проблем по мере их роста. Как писать все больше требуемых фич, чинить все больше issues'ов и успевать смотреть все больше pull request'ов? На примере WAL-G(backup-tool for PostgreSQL) расскажу про то, как мы решали эти проблемы, запустив курс по Open-source разработке в университете, чего мы добились и куда будем двигаться дальше.

Слайды

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

Sibedge

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

GraphQl-бэкенд на PostgreSQL и plv8

Доклад

Недавно мне пришлось поработать над проектом, где для запросов к бэкенду на .NET Core использовали GraphQl, о чём потом пожалели. Дело в том, что GraphQl-запрос представляет собой объект с динамическим набором полей и иерархией любой вложенности. Обрабатывать такие объекты на языке со статической и сильной типизацией, да ещё и через ORM, как это предлагают библиотечные решения – очень неудобно. И тогда мне пришла идея использовать plv8 и разбирать запросы в формате GraphQl прямо на стороне БД. За пару часов я написал работающий прототип, реализующий функционал, который разрабатывали более месяца! Затем было сделано несколько усовершенствований, всё это я собираюсь показать. Тем, кто собирается в своих проектах использовать GraphQl, а не REST, информация из данного доклада может особенно пригодиться и возможно поможет сэкономить уйму времени.

Слайды

Кирилл Боровиков

Тензор

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

План + запрос = ?.. Когда анализ запроса в радость

Доклад
  1. Странные вещи при анализе планов, и почему они происходят - сказка о потеряном времени и "лишние" buffers.
  2. Структурные подсказки в плане. Как помочь разработчику с оптимизацией, не написав ни строчки кода.
  3. Как соотнести узлы плана с текстом запроса и что из этого можно извлечь.

Слайды

Валерий Попов

Postgres Professional

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

Николай Чадаев

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

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

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

Доклад

Ролевая модель разграничения доступа (RBAC) является основным механизмом разграничения доступа во многих СУБД, в том числе и в PostgreSQL. Эта модель является разновидностью дискреционного разграничения с присущими ей ограничениями. Во многих ОС в дополнение к традиционному дискреционному разграничению доступа используется мандатное разграничение (MAC) на основе меток безопасности, которое является обязательным для защиты информации высоких классов, а также представляет дополнительный механизм защиты. Естественно, хочется использовать возможности мандатного разграничения доступа к данным в среде СУБД при работе в ОС с включенным мандатным разграничением.
В нашем докладе мы рассмотрим имеющиеся реализации MAC в СУБД, а также предлагаем свой подход к использованию в PostgreSQL механизмов защиты, которые предоставляет SELinux, расширение sepgsql для PostgreSQL, а также стандартный механизм политики защиты строк (RLS, row level security), который есть в PostgreSQL начиная с версии 9.5.
Созданный прототип работает в enforced режиме под управлением ОС CentOS 7 с включенным SELinux, системными политиками MLS/MCS (Multi Level Security/Multi Category Security). В дополнение к функциональности модуля sepgsql реализовано мандатное разграничение MLS/MCS на уровне строк таблиц. Обеспечивается сетевое взаимодействие с передачей меток по сети с использованием механизмов IPSEC, CIPSO, что позволяет использовать этот подход в многопользовательской, многоузловой сети. Реализация MLS в СУБД оформлена в виде стандартных расширений PostgreSQL. Одно является оберткой вокруг расширения sepgsql, и обеспечивает легкую инсталляцию расширения sepgsql в БД, а также восстановление контекстов безопасности данных при дампе/восстановлении БД. Второе расширение предоставляет сервисные функции для работы с метками, в том числе в доверенном режиме, позволяющем менять контексты безопасности.
В качестве демо-примера мы использовали демонстрационную базу данных Авиаперевозки, подготовленную компанией Postgres Professional, на которой мы продемонстрируем защиту чувствительной информации и персональных данных, сравним различные механизмы организации хранилища меток безопасности и производительность решения.

Слайды

Heikki Linnakangas

Pivotal

PostgreSQL hacker

Writing a User-defined datatype

Доклад

Walk-through of extending PostgreSQL with a user-defined type. The journey begins from the basics, from creating simple domain types over existing types, and continues to implementing a full-blown datatype from scratch in C.

PostgreSQL's advanced index types, GiST, GIN, and SP-GiST, are covered in enough detail to give an understanding of what each of them is good for. Support functions for each of them are shown for the example 'color' datatype.

Слайды

Олег Правдин

Lingualeo

CTO

Опыт плавной миграции высоконагруженного проекта (20+ млн. пользователей) c MySQL на PostgreSQL

Доклад

Небольшая история о том, как переход на PostgreSQL увеличил на порядок эффективность работы компании:

  1. Программный код сократился в 50 раз, в команде разработки бэкенда вместо 15 человек осталось трое
  2. Сроки разработки нового функционала стали измеряться днями, а не месяцами
  3. Стоимость владения в расчете на 1 млн. пользователей снизилась в 20 раз
  4. Структура данных и документация существенно упростилась: вместо 100 тыс. таблиц со сложными связями стало 20 простых таблиц
  5. Повышение безопасности системы за счет запрета внешних SQL команд к базе данных
  6. Быстрый сбор аналитики по ключевым параметрам
  7. Без остановки работы бизнеса

Слайды

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

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

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

Сертификация PostgreSQL: вопросы и ответы

Доклад

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

В этом выступлении я поделюсь итогами первых месяцев работы программы и отвечу на чаще всего возникающие вопросы:

  • Где узнать о программе сертификации?
  • Сертификация по PostgreSQL или Postgres Pro?
  • Сертификаты по версии 10, уже вышла 12. Когда будете обновлять?
  • Обязательно ли проходить обучение в учебных центрах?
  • Можно ли сдать тест удаленно? Не в Москве?
  • Можно ли в один день сдавать сразу несколько тестов? (например иногородним)
  • Как готовиться? Есть ли примеры вопросов для тренировки?
  • Во время теста попался некорректный вопрос, что делать?
  • Как узнать на какие именно вопросы ответы были не правильные?
  • Когда можно пересдать после не успешной попытки?
  • Как обжаловать результаты теста?

Слайды

Александр Кварацхелия

БАРС Груп

Архитектор программного обеспечения

Александр Чирков

Барс Груп

Архитектор ПО

Миграция с Oracle на PostgreSQL с использованием автоматического конвертера

Доклад

В докладе мы хотим рассказать об опыте миграции одной большой системы с Oracle на PostgreSQL. Сама система построена на стеке PHP + Oracle, её отличительной особенностью было то, что вся бизнес-логика была реализована в PL/SQL коде. В СУБД - это более 3000 пакетов с 4-10 функциями (процедурами) в каждом. В PHP - более 10000 форм со вставками анонимных блоков, используемых для получения данных, обработки и сохранения результатов в Oracle.

Для решения этой крайне объемной работы мы взяли ANTLR4 (синтаксический анализатор для чтения, обработки, выполнения или перевода структурированного текста), грамматику PL/SQL и создали автоматический конвертер, который позволяет преобразовать все объекты схемы и нашей системы из Oracle в рабочий код для PostgreSQL.

Слайды

Виктор Еремченко

Miro

Team Lead

Отказоустойчивый кластер PostgreSQL + Patroni

Доклад

Я расскажу, как мы комплексно подошли к проблеме отказоустойчивости PostgreSQL, какие варианты мы рассматривали и как остановились на Patroni.

Доклад содержит этапы тестирования этого решения, как мы обеспечили быстрое внедрение на production и с какими проблемами мы столкнулись и как их решали.

Слайды

Алексей Лесовский

Data Egret

PostgreSQL DBA

PostgreSQL Scaling Usecases

Доклад

На сегодняшний день уже никого не удивить тем что инфраструктура живет в клауде, однако не все компоненты заезжают в клауд легко и просто. Одним из таких компонентов является база данных, которая всегда требовательна в плане ресурсов и производительности. Особенно остро стоит вопрос масштабируемости и устойчивости к сбоям, именно поэтому в последние годы можно наблюдать бурное развитие альтернативных СУБД.

Однако классические РСУБД за счет накопленных фич нередко остаются выбором №1 при том что они также не стоят на месте и предоставляют богатый набор инструментов в плане масштабирования.

В этом докладе я буду рассматривать преимущественно PostgreSQL, варианты его масштабирования и то когда это стоит делать и как это делать правильно. В докладе будут рассмотрены следующие темы:

  • Потоковая репликация и разделение read/write рабочей нагрузки

  • Логическая репликация и шардирование данных

  • Обеспечение высокой доступности и устойчивости к сбоям

    Доклад будет интересен администраторам баз данных, системных администраторам, тимлидам, инфраструктурным архитекторам и широкому кругу специалистов которым интересен PostgreSQL.

    Слайды

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

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

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

Как я перестал беспокоиться и перенес 60K строк из 150 процедур PL/SQL в Postgres.

Доклад

В докладе рассказывается об опыте переноса серверного приложения, работающего на полигоне железных дорог от Калининграда до Хабаровска, с Oracle 11g Standard Edition на ванильный PostgreSQL 11.5.
На момент начала миграции база данных насчитывала порядка 200 хранимых процедур на языке Oracle PL/SQL общим объемом порядка 60000 строк (которые создавались с 2006 года, т.е. уже более 12 лет), около 250 таблиц и 50 Гбайт данных.
Доклад содержит описание сопровождавших этот процесс приключений, приятных и неприятных открытий, а также пролог, эпилог и хэппи-энд.

Повествование ведется от лица пользователя Oracle, открывающего для себя Postgres.

Слайды

Федор Сигаев

Postgres Professional

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

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

ИнфоСофт

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

Что "мир 1С" ждёт от PostgreSQL

Доклад

Одну из самых массовых ветвей распространения PostgreSQL в России занимает 1С. В докладе хотел бы поделиться мыслями о том, чего не хватает в PostgreSQL по мнению тех, кто работает с 1С.

Слайды

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

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

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

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

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

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

Разработка WEB-приложений для Postgres с помощью нового инструмента Live Universal Interface (LUI)

Мастер-класс

В ходе мастер-класса будет продемонстрировано следующее:

  1. Преимущества декларативного программирования. Быстрое создание сложной формы LUI с применением только SQL.
  2. Поддержка длинных транзакций и автоматических блокировок. Пример визарда с записью прямо в базу.
  3. Управление раскраской данных в полях и столбцах формы. Типичные примеры.
  4. Живой поиск в полях ввода на примере ввода адресов.
  5. Как настроить LUI на ввод и отображение специфических данных прикладной системы.
  6. Разработка формы Мастер-Деталь с извлечением данных из двух разных БД.
  7. Как конечный пользователь строит сложные запросы к данным без использования SQL.
  8. Как в любом списке группировать данные и строить интерактивные диаграммы (включая 3D) c возможностью “drill down”.

Слушатели по желанию смогут своими руками изготовить WEB-интерфейс для Postgres на LUI (см. презентацию на https://pgconf.ru/2019/118109)

Слайды

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

ИнфоСофт

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

Мастер-класс настройки PostgreSQL для 1С

Мастер-класс

Вас ждёт увлекательное путешествие по настройкам PostgreSQL. Мы поговорим о том что с 1С не так или наоборот так, что под неё надо специально настраивать СУБД. Обсудим подходы к тестирования скорости работы 1С. Рассмотрим различные варианты схем резервного копирования и обеспечения отказоустойчивости. В процессе мы сравним скорость работы 1С на PostgreSQL настроенном по умолчанию со скоростью работы на настроенном для 1С PostgreSQL. Так же мы создадим реплику PostgreSQL, и переключим на неё Сервер 1С "на живую", посмотрим что увидят пользователи 1С при этой операции. И отдельный блок будет посвящён PostgresPro Enterprise Edition, как использование его приемуществ влияет на скорость работы 1С.

Кристофер Трэверс

Adjust GmbH

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

Extending PostgreSQL in C: A Tutorial

Мастер-класс

PostgreSQL is one of the most readily extensible databases in the world. Custom data types, aggregations, functions, and more can be easily and safely written in C.

This hands-on tutorial covers the basics of writing functions, data types, and aggregates in C. It is recommended (though not strictly required) that bring their own laptops and be prepared to actually try the exercises.

Topics covered include: 1. The PostgreSQL type system 2. Creating a simple custom type in C 3. Common errors for non-C programmers 4. Creating a simple aggregate in C

There will be many opportunities for questions and discussion through the tutorial.

Слайды