SlideShare a Scribd company logo
АБС в крупном Банке.
Тестирование PostgreSQL. Опыт применения Ora2PG.
Кондрашов Андрей
Начальник отдела архитектуры АБС «М-Банк»
АБС «М-Банк»
• Собственная разработка ДИТ Банка Москвы,
охватывающая практически все бизнес-процессы Банка.
(Oracle + Delphi 7)
• Единое фронтальное решение, позволяющее
сотрудникам работать в общей интегрированной среде.
• Комплексное обслуживание физ. и юр. лиц. в единой
базе клиентов, кредитная дорога, зарплатные проекты,
кассовое обслуживание, работа с Гос. органами,
электронные каналы обслуживания, платежные системы,
торговые площадки, смс-провайдеры, валютный контроль,
собственный CRM и многое многое другое…
СУБД
• Oracle – всё хорошо, но вдруг санкции?
• Tibero – тоже коммерческий продукт, а
вдруг санкции? )
• PostgreSQL – бесплатный, быстрый,
амбициозно-развивающийся проект с
открытым исходным кодом.
• MSSql
• MySql
Требования к АБС
• Эксплуатация – 24/7
• Высоконагруженная система (~2000 IOPS, 22 TB данных)
• Удобство администрирования и сопровождения
• Наличие специалистов на рынке труда
• Работа на имеющимся оборудовании
Например:
IBM Power 780
64 физических процессора
640 GB RAM
Количество основных объектов
только в двух основных схемах
• Таблицы – ~3700
• Пакеты – 4770
• Много кода с переменными уровня пакета
• Автономные транзакции
• Использование Oracle Advanced Queues
• Линки на другие базы
• Пользовательские типы данных
• Работа с XML в Oracle
Основные цели
• Повышение независимости на уровне СУБД
• Глубокий рефакторинг.
• Смена компонент доступа к базам данных
DOA -> FireDac
• Миграция на последнюю версию Delphi
(xe8)
• Изоляция пользовательских форм от
компонент уровня доступа к базе
(ClientDataSet)
Выбор Ora2PG (13 версия)
• Произвели настройку Ora2PG под Windows. Установили
Perl.
• Быстро
• Удобно
• Наглядно
Было перенесено около 30 ядерных таблиц и пакетов:
Аутентификация пользователей, документы и архив
документов, договора, таблицы проводок и остатков,
счетов, таблицы с клиентской информацией,
конфигурационная таблица, таблица форм и типов.
Большинство форм пользовательского интерфейса
хранятся в базе!
Возникшие проблемы
• Оценка общего времени миграции всей схемы – не удалось
получить 
• Проблема с глобальными переменными уровня пакета
• Автономные транзакции
• Системные view (v$instance, v$session…) Поиск аналогов.
• Большое количество получающихся схем + проблемы выдачи
грантов друг другу.
• Партиции в привычном понимании.
• Пакетные переменные -> временная таблица уровня сессии
• Из общего:
• По-началу непривычный синтаксис )
• Нет средства разработки уровня PLSQL DeveloperTOAD.
Первое тестирование
производительности PostgreSQL
• Вставка 1М записей. Какая-то машинка.
•
• Commit по 1000 записей
• "2014-08-11 21:16:56.862075";"2014-08-11 21:24:33.726229"
• ~9 минут
•
• по 50000 записей
• "2014-08-11 21:25:56.863602";"2014-08-11 21:33:00.270117"
• ~7 минут
•
• по 250000 записей
• "2014-08-11 21:34:56.25054";"2014-08-11 21:40:28.074285"
• ~5.5 минут
Результат:
• Миграция проекта с Delphi 7 на Delphi XE2-XE8
• Полная замена компонент доступа к данным
на FireDac
Андрей Кондрашов, Банк Москвы.  «АБС в крупном Банке. Тестирование PostgreSQL. Опыт применения Ora2Pg. Оценка возможностей»
Андрей Кондрашов, Банк Москвы.  «АБС в крупном Банке. Тестирование PostgreSQL. Опыт применения Ora2Pg. Оценка возможностей»
• Данный релиз сейчас в тестировании и
будет выложен в пром в течение месяца
под Oracle с полной функциональностью.
• Предпринимаются усилия по переводу
запросов к виду ANSI SQL. (либо директивы
препроцессора, если невозможно обойти)
• Будем продолжать тестировать и развивать
функциональность версии под PostgreSQL.
Что ждём от PostgreSQL в
ближайшее время
Автономные транзакции.
Мощное партиционирование.
Мощное средство разработки. На уровне
PLSQL Developer, TOAD
Поддержку пакетов 

More Related Content

What's hot (20)

PDF
Константин Осипов
CodeFest
 
PDF
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
Nikolay Samokhvalov
 
PDF
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
Ontico
 
PDF
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Dev2Dev
 
PDF
История успеха Яндекс.Почты с PostgreSQL / Владимир Бородин (Яндекс)
Ontico
 
PDF
ClickHouse: очень быстро и очень удобно / Виктор Тарнавский, Алексей Миловидо...
Ontico
 
PDF
«Дорожная сеть в графовой базе данных Neo4j» — Вадим Шашенко, 2ГИС
2ГИС Технологии
 
PPTX
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Ontico
 
PPTX
Как ускорить MySQL Handler Socket в 9 раз / Александр Яковлев (Мамба)
Ontico
 
PDF
История успеха Яндекс.Почты
dev1ant
 
PPTX
Переезжаем на Yandex ClickHouse / Александр Зайцев (LifeStreet)
Ontico
 
PDF
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
Alexey Zinoviev
 
PDF
Hacking PostgreSQL. Обзор архитектуры.
Anastasia Lubennikova
 
PDF
Ivan Kotlyar. PostgreSQL in web applications
DrupalSib
 
PDF
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Mikhail Tabunov
 
PDF
"Новые возможности MySQL 5.7"
Badoo Development
 
ODP
МойСклад, облачный сервис ERP
Oleg Alexeev
 
PPTX
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Ontico
 
PPTX
Поиск наизнанку
Nikolay Sivko
 
PPTX
MongoDB первые впечатления
fudz1k
 
Константин Осипов
CodeFest
 
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
Nikolay Samokhvalov
 
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
Ontico
 
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Dev2Dev
 
История успеха Яндекс.Почты с PostgreSQL / Владимир Бородин (Яндекс)
Ontico
 
ClickHouse: очень быстро и очень удобно / Виктор Тарнавский, Алексей Миловидо...
Ontico
 
«Дорожная сеть в графовой базе данных Neo4j» — Вадим Шашенко, 2ГИС
2ГИС Технологии
 
Хорошо поддерживаемое в продакшне приложение / Николай Сивко (okmeter.io)
Ontico
 
Как ускорить MySQL Handler Socket в 9 раз / Александр Яковлев (Мамба)
Ontico
 
История успеха Яндекс.Почты
dev1ant
 
Переезжаем на Yandex ClickHouse / Александр Зайцев (LifeStreet)
Ontico
 
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
Alexey Zinoviev
 
Hacking PostgreSQL. Обзор архитектуры.
Anastasia Lubennikova
 
Ivan Kotlyar. PostgreSQL in web applications
DrupalSib
 
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Mikhail Tabunov
 
"Новые возможности MySQL 5.7"
Badoo Development
 
МойСклад, облачный сервис ERP
Oleg Alexeev
 
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Ontico
 
Поиск наизнанку
Nikolay Sivko
 
MongoDB первые впечатления
fudz1k
 

Viewers also liked (20)

PDF
Илья Космодемьянский, PostgreSQL-Consulting.com. «Pragma autonomous transaction»
Mail.ru Group
 
PPTX
Дельта кредит банк
hungrymouse
 
PDF
Синие против красных
Sergey Melekhin
 
PDF
~20081006 Highload2008 Postgresql самохвалов
Ontico
 
PDF
Краткий обзор новинок PostgreSQL 9.4 – Николай Самохвалов
Yandex
 
PDF
Сравнительный анализ хранилищ данных, Олег Царев, Кирилл Коринский
Fuenteovejuna
 
PPTX
PostgreSQL. Стильно. Модно. Молодёжно
Vladislav Bezverhiy
 
PDF
PostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
Nikolay Samokhvalov
 
PDF
PG Day'14 Russia, PostgreSQL в avito.ru, Михаил Тюрин
pgdayrussia
 
PPTX
Что такое Postgresql (Максим Богук)
Ontico
 
PDF
Pgconfru 2015 kosmodemiansky
PostgreSQL-Consulting
 
PDF
Полнотекстовый поиск в PostgreSQL за миллисекунды (Олег Бартунов, Александр К...
Ontico
 
PPS
мебельный тур в китай
shunshare
 
PDF
Владимир Бородин - PostgreSQL
Yandex
 
PDF
Sequence mining
Dmitrii Ignatov
 
PDF
Поиск частых множеств признаков (товаров) и ассоциативные правила
Dmitrii Ignatov
 
PDF
Get to know PostgreSQL!
Oddbjørn Steffensen
 
PPT
Postgres Presentation
gisborne
 
PDF
Russian Agricultural Bank Rebranding Proposal
Anton Chitana
 
PDF
pgconf.ru 2015 avito postgresql
Михаил Тюрин
 
Илья Космодемьянский, PostgreSQL-Consulting.com. «Pragma autonomous transaction»
Mail.ru Group
 
Дельта кредит банк
hungrymouse
 
Синие против красных
Sergey Melekhin
 
~20081006 Highload2008 Postgresql самохвалов
Ontico
 
Краткий обзор новинок PostgreSQL 9.4 – Николай Самохвалов
Yandex
 
Сравнительный анализ хранилищ данных, Олег Царев, Кирилл Коринский
Fuenteovejuna
 
PostgreSQL. Стильно. Модно. Молодёжно
Vladislav Bezverhiy
 
PostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
Nikolay Samokhvalov
 
PG Day'14 Russia, PostgreSQL в avito.ru, Михаил Тюрин
pgdayrussia
 
Что такое Postgresql (Максим Богук)
Ontico
 
Pgconfru 2015 kosmodemiansky
PostgreSQL-Consulting
 
Полнотекстовый поиск в PostgreSQL за миллисекунды (Олег Бартунов, Александр К...
Ontico
 
мебельный тур в китай
shunshare
 
Владимир Бородин - PostgreSQL
Yandex
 
Sequence mining
Dmitrii Ignatov
 
Поиск частых множеств признаков (товаров) и ассоциативные правила
Dmitrii Ignatov
 
Get to know PostgreSQL!
Oddbjørn Steffensen
 
Postgres Presentation
gisborne
 
Russian Agricultural Bank Rebranding Proposal
Anton Chitana
 
pgconf.ru 2015 avito postgresql
Михаил Тюрин
 
Ad

Similar to Андрей Кондрашов, Банк Москвы. «АБС в крупном Банке. Тестирование PostgreSQL. Опыт применения Ora2Pg. Оценка возможностей» (20)

PPTX
Миграция данных из Oracle в Postgres
CUSTIS
 
PPTX
#PostgreSQLRussia 2015.09.15 - Максим Трегубов, CUSTIS - Миграция из Oracle в...
Nikolay Samokhvalov
 
PDF
PostgreSQL: вчера, сегодня, завтра, Олег Бартунов, Postgres Professional, Мо...
it-people
 
ODP
Scaling PostgreSQL
Дмитрий Васильев
 
PDF
Российская СУБД Postgres Pro
Andrey Fleyta
 
PDF
Fors и big data appliance
CleverDATA
 
PDF
DBMS benchmarking overview
Andrei Nikolaenko
 
PPTX
SQL Server Security Best Practices - Евгений Недашковский
HackIT Ukraine
 
PDF
Сергей Мелехов, Менеджер по развитию бизнеса вычислительных систем Oracle Вос...
Банковское обозрение
 
PPT
Проверено и работает. Инструменты Oracle для разработки веб приложений
Media Gorod
 
PDF
PostgreSQL on sas/ssd/nvme/nvdimm
Дмитрий Васильев
 
PPTX
Data Access Layer как страховка на случай миграции СУБД
CUSTIS
 
PPT
лабораторная работа 1
student_kai
 
PDF
PostgreSQL
dev1ant
 
PDF
Технологии и продукты Oracle для обработки и анализа Больших Данных
Andrey Akulov
 
PPT
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
Alexey Kovyazin
 
PDF
DBMS Benchmarks in a Nutshell
Andrei Nikolaenko
 
PDF
Андрей Николаенко, IBS. DBMS Benchmarks in a Nutshell: концентрированное обоз...
IBS
 
PDF
Postgresql v509
luis perez
 
Миграция данных из Oracle в Postgres
CUSTIS
 
#PostgreSQLRussia 2015.09.15 - Максим Трегубов, CUSTIS - Миграция из Oracle в...
Nikolay Samokhvalov
 
PostgreSQL: вчера, сегодня, завтра, Олег Бартунов, Postgres Professional, Мо...
it-people
 
Российская СУБД Postgres Pro
Andrey Fleyta
 
Fors и big data appliance
CleverDATA
 
DBMS benchmarking overview
Andrei Nikolaenko
 
SQL Server Security Best Practices - Евгений Недашковский
HackIT Ukraine
 
Сергей Мелехов, Менеджер по развитию бизнеса вычислительных систем Oracle Вос...
Банковское обозрение
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Media Gorod
 
PostgreSQL on sas/ssd/nvme/nvdimm
Дмитрий Васильев
 
Data Access Layer как страховка на случай миграции СУБД
CUSTIS
 
лабораторная работа 1
student_kai
 
PostgreSQL
dev1ant
 
Технологии и продукты Oracle для обработки и анализа Больших Данных
Andrey Akulov
 
Решения на базе СУБД Firebird в крупных компаниях и государственных учреждени...
Alexey Kovyazin
 
DBMS Benchmarks in a Nutshell
Andrei Nikolaenko
 
Андрей Николаенко, IBS. DBMS Benchmarks in a Nutshell: концентрированное обоз...
IBS
 
Postgresql v509
luis perez
 
Ad

More from Mail.ru Group (20)

PDF
Автоматизация без тест-инженеров по автоматизации, Мария Терехина и Владислав...
Mail.ru Group
 
PDF
BDD для фронтенда. Автоматизация тестирования с Cucumber, Cypress и Jenkins, ...
Mail.ru Group
 
PDF
Другая сторона баг-баунти-программ: как это выглядит изнутри, Владимир Дубровин
Mail.ru Group
 
PDF
Использование Fiddler и Charles при тестировании фронтенда проекта pulse.mail...
Mail.ru Group
 
PDF
Управление инцидентами в Почте Mail.ru, Антон Викторов
Mail.ru Group
 
PDF
DAST в CI/CD, Ольга Свиридова
Mail.ru Group
 
PDF
Почему вам стоит использовать свой велосипед и почему не стоит Александр Бел...
Mail.ru Group
 
PDF
CV в пайплайне распознавания ценников товаров: трюки и хитрости Николай Масл...
Mail.ru Group
 
PDF
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidia
Mail.ru Group
 
PDF
WebAuthn в реальной жизни, Анатолий Остапенко
Mail.ru Group
 
PDF
AMP для электронной почты, Сергей Пешков
Mail.ru Group
 
PDF
Как мы захотели TWA и сделали его без мобильных разработчиков, Данила Стрелков
Mail.ru Group
 
PDF
Кейсы использования PWA для партнерских предложений в Delivery Club, Никита Б...
Mail.ru Group
 
PDF
Метапрограммирование: строим конечный автомат, Сергей Федоров, Яндекс.Такси
Mail.ru Group
 
PDF
Как не сделать врагами архитектуру и оптимизацию, Кирилл Березин, Mail.ru Group
Mail.ru Group
 
PDF
Этика искусственного интеллекта, Александр Кармаев (AI Journey)
Mail.ru Group
 
PDF
Нейро-машинный перевод в вопросно-ответных системах, Федор Федоренко (AI Jour...
Mail.ru Group
 
PDF
Конвергенция технологий как тренд развития искусственного интеллекта, Владими...
Mail.ru Group
 
PDF
Обзор трендов рекомендательных систем от Пульса, Андрей Мурашев (AI Journey)
Mail.ru Group
 
PDF
Мир глазами нейросетей, Данила Байгушев, Александр Сноркин ()
Mail.ru Group
 
Автоматизация без тест-инженеров по автоматизации, Мария Терехина и Владислав...
Mail.ru Group
 
BDD для фронтенда. Автоматизация тестирования с Cucumber, Cypress и Jenkins, ...
Mail.ru Group
 
Другая сторона баг-баунти-программ: как это выглядит изнутри, Владимир Дубровин
Mail.ru Group
 
Использование Fiddler и Charles при тестировании фронтенда проекта pulse.mail...
Mail.ru Group
 
Управление инцидентами в Почте Mail.ru, Антон Викторов
Mail.ru Group
 
DAST в CI/CD, Ольга Свиридова
Mail.ru Group
 
Почему вам стоит использовать свой велосипед и почему не стоит Александр Бел...
Mail.ru Group
 
CV в пайплайне распознавания ценников товаров: трюки и хитрости Николай Масл...
Mail.ru Group
 
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidia
Mail.ru Group
 
WebAuthn в реальной жизни, Анатолий Остапенко
Mail.ru Group
 
AMP для электронной почты, Сергей Пешков
Mail.ru Group
 
Как мы захотели TWA и сделали его без мобильных разработчиков, Данила Стрелков
Mail.ru Group
 
Кейсы использования PWA для партнерских предложений в Delivery Club, Никита Б...
Mail.ru Group
 
Метапрограммирование: строим конечный автомат, Сергей Федоров, Яндекс.Такси
Mail.ru Group
 
Как не сделать врагами архитектуру и оптимизацию, Кирилл Березин, Mail.ru Group
Mail.ru Group
 
Этика искусственного интеллекта, Александр Кармаев (AI Journey)
Mail.ru Group
 
Нейро-машинный перевод в вопросно-ответных системах, Федор Федоренко (AI Jour...
Mail.ru Group
 
Конвергенция технологий как тренд развития искусственного интеллекта, Владими...
Mail.ru Group
 
Обзор трендов рекомендательных систем от Пульса, Андрей Мурашев (AI Journey)
Mail.ru Group
 
Мир глазами нейросетей, Данила Байгушев, Александр Сноркин ()
Mail.ru Group
 

Андрей Кондрашов, Банк Москвы. «АБС в крупном Банке. Тестирование PostgreSQL. Опыт применения Ora2Pg. Оценка возможностей»

  • 1. АБС в крупном Банке. Тестирование PostgreSQL. Опыт применения Ora2PG. Кондрашов Андрей Начальник отдела архитектуры АБС «М-Банк»
  • 2. АБС «М-Банк» • Собственная разработка ДИТ Банка Москвы, охватывающая практически все бизнес-процессы Банка. (Oracle + Delphi 7) • Единое фронтальное решение, позволяющее сотрудникам работать в общей интегрированной среде. • Комплексное обслуживание физ. и юр. лиц. в единой базе клиентов, кредитная дорога, зарплатные проекты, кассовое обслуживание, работа с Гос. органами, электронные каналы обслуживания, платежные системы, торговые площадки, смс-провайдеры, валютный контроль, собственный CRM и многое многое другое…
  • 3. СУБД • Oracle – всё хорошо, но вдруг санкции? • Tibero – тоже коммерческий продукт, а вдруг санкции? ) • PostgreSQL – бесплатный, быстрый, амбициозно-развивающийся проект с открытым исходным кодом. • MSSql • MySql
  • 4. Требования к АБС • Эксплуатация – 24/7 • Высоконагруженная система (~2000 IOPS, 22 TB данных) • Удобство администрирования и сопровождения • Наличие специалистов на рынке труда • Работа на имеющимся оборудовании Например: IBM Power 780 64 физических процессора 640 GB RAM
  • 5. Количество основных объектов только в двух основных схемах • Таблицы – ~3700 • Пакеты – 4770 • Много кода с переменными уровня пакета • Автономные транзакции • Использование Oracle Advanced Queues • Линки на другие базы • Пользовательские типы данных • Работа с XML в Oracle
  • 6. Основные цели • Повышение независимости на уровне СУБД • Глубокий рефакторинг. • Смена компонент доступа к базам данных DOA -> FireDac • Миграция на последнюю версию Delphi (xe8) • Изоляция пользовательских форм от компонент уровня доступа к базе (ClientDataSet)
  • 7. Выбор Ora2PG (13 версия) • Произвели настройку Ora2PG под Windows. Установили Perl. • Быстро • Удобно • Наглядно Было перенесено около 30 ядерных таблиц и пакетов: Аутентификация пользователей, документы и архив документов, договора, таблицы проводок и остатков, счетов, таблицы с клиентской информацией, конфигурационная таблица, таблица форм и типов. Большинство форм пользовательского интерфейса хранятся в базе!
  • 8. Возникшие проблемы • Оценка общего времени миграции всей схемы – не удалось получить  • Проблема с глобальными переменными уровня пакета • Автономные транзакции • Системные view (v$instance, v$session…) Поиск аналогов. • Большое количество получающихся схем + проблемы выдачи грантов друг другу. • Партиции в привычном понимании. • Пакетные переменные -> временная таблица уровня сессии • Из общего: • По-началу непривычный синтаксис ) • Нет средства разработки уровня PLSQL DeveloperTOAD.
  • 9. Первое тестирование производительности PostgreSQL • Вставка 1М записей. Какая-то машинка. • • Commit по 1000 записей • "2014-08-11 21:16:56.862075";"2014-08-11 21:24:33.726229" • ~9 минут • • по 50000 записей • "2014-08-11 21:25:56.863602";"2014-08-11 21:33:00.270117" • ~7 минут • • по 250000 записей • "2014-08-11 21:34:56.25054";"2014-08-11 21:40:28.074285" • ~5.5 минут
  • 10. Результат: • Миграция проекта с Delphi 7 на Delphi XE2-XE8 • Полная замена компонент доступа к данным на FireDac
  • 13. • Данный релиз сейчас в тестировании и будет выложен в пром в течение месяца под Oracle с полной функциональностью. • Предпринимаются усилия по переводу запросов к виду ANSI SQL. (либо директивы препроцессора, если невозможно обойти) • Будем продолжать тестировать и развивать функциональность версии под PostgreSQL.
  • 14. Что ждём от PostgreSQL в ближайшее время Автономные транзакции. Мощное партиционирование. Мощное средство разработки. На уровне PLSQL Developer, TOAD Поддержку пакетов 