title

text

Андрей Чибук
Андрей Чибук
Александр Любушкин
Александр Любушкин
10:50 04 апреля
45 мин

Как перенести 10Тб из Oracle в Postgres за 24 часа?

Предлагается вашему вниманию наш опыт по миграции данных и написанную на Java программу Ora2PgCopy для высокоскоростного переноса данных из Oracle в Postgres, которая применяется после создания таблиц и переноса программного кода прикладных систем. Высокая скорость переноса данных обеспечивается за счёт использования Postgres-команды “copy”, применения многопоточной технологии Java для обработки файлов, управления опцией таблиц nologged/ logged, поддержки типов данных LOB и CLOB. По результатам тестов Ora2PgCopy работает заметно быстрее таких аналогов как: Ispirer (convertum), oracle_fdw, ora2pg, Pentaho kettle. Ora2PgCopy может функционировать как модуль в составе системы автоматизации миграции (САМ) LUI4ORA2PG, так и независимо от неё. С историей развития инструмента разработки web-приложений Live Universal Interface (LUI) и инструмента миграции LUI4ORA2PG, можно ознакомится по предыдущим выступлениям на конференциях PgConf: https://pgconf.ru/2019/118109, https://pgconf.ru/201911/264095, https://pgconf.ru/2020/262456, https://pgconf.ru/2021/288310,
https://pgconf.ru/2022/316022.

слайды

Видео

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

  • Алексей Фадеев
    Алексей Фадеев
    22 мин

    ORM LinqToDb: используем возможности Postgres по максимуму

    ORM-библиотеки широко используются при разработке бэкенда – примем это как данность. ORM-библиотеки совершенствуются, разработчики учатся на своих и чужих ошибках, и многие научились писать код для ORM, генерирующий вполне оптимальные запросы для типовых операций. Но есть ещё одна проблема ORM – ограниченность инструментов. Особенно это актуально для Postgres, имеющего массу операторов и конструкций (как в ядре, так и в расширениях), выходящих за рамки стандарта SQL.

    ORM-библиотека LinqToDb имеет важную особенность: она позволяет очень просто (буквально в одну строку) писать расширения, реализующие любой SQL-оператор или конструкцию. Полнотекстовый поиск, KNN, CTE (в том числе рекурсивные), работа с массивами и jsonb, array_agg и jsonb_object_agg, табличные функции и LATERAL JOIN – всё это без труда можно использовать в ORM, что я и продемонстрирую в данном докладе!

  • Игорь Косенков
    Игорь Косенков
    22 мин

    Кластер Corosync-Pacemaker. Работа над ошибками

    Расскажу о частых ошибках при настройке отказоустойчивого кластера Corosync-Pacemaker. Зачастую эти ошибки приводят к фатальным последствиям, и как следствие - к отказу от выбранного решения в пользу других. Хотите рецепт "правильного" кластера?

  • Леонид Чуриков
    Леонид Чуриков
    22 мин

    Построение системы защиты данных на базе СУБД Постгрес

    Почему стоит использовать отечественную СУБД?

    • По закону: для защиты данных по закону годятся только отечественные СУБД
    • По оформлению: легально купить MS в России сейчас нельзя
    • По карману: лицензирование иностранных СУБД таково, что сильно удорожает защиту (в разы или на порядки)
    • По быстродействию: оно зависит от оптимизации СЗИ, а их разрабатывают сегодня под отечественные СУБД (Почему? Смотри пункт 1)
    • По жизни: В конце прошлого года мы перенесли все на отечественные СУБД и…. все работает! Все, что в жизни нужно безопаснику!

  • Иван Фролков
    Иван Фролков
    45 мин

    Новые версии UUID

    Генерация первичных ключей - старая задача, довольно неплохо решаемая последовательностям, но, к сожалению, не идеально. Возникают проблемы с распределенной генерацией, действительной уникальностью и предсказуемостью. UUID изначально почему-то не предполагался для использования в качестве ключа СУБД, но новые версии (6,7 и 8) позволяют довольно удобно использовать их в качестве как для синтетических, так и для естественных ключей.