title

text

Анатолий Анфиногенов
Анатолий Анфиногенов АО "ВНИИЖТ" Зам. директора научного центра - начальник отдела разработки ПО
15:00 05 февраля
45 мин

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

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

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

Слайды

Видео

Другие доклады

  • Алексей Фадеев
    Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
    22 мин

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

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

  • Брюс Момжиан
    Брюс Момжиан EnterpriseDB Senior Database Architect
    45 мин

    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

  • Иван Чувашов
    Иван Чувашов ООО Calltouch DBA
    22 мин

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

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

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

  • Дмитрий Урсегов
    Дмитрий Урсегов Postgres Professional Руководитель группы разработки
    22 мин

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

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