Мигрируем в PostgreSQL, тестируем OLAP-кубы и разбираемся с валидацией T-SQL-кода: три доклада с митапа ЮMoney
Всем привет от команды ЮMoney ?
В конце апреля мы провели очередной онлайн-митап High SQL, который посвятили работе с данными в DWH на Microsoft SQL Server. Было три докладчика: два эксперта из ЮMoney и один — из компании Monopoly Online. Полтора часа полезной информации для разработчиков, тестировщиков и дата-инженеров прошли незаметно, обязательно повторим в следующем году.
А сегодня делимся видеозаписями и главными мыслями митапа. Если не смотрели его 27 апреля, можно сделать это сейчас.
Кому советуем посмотреть:
Тем, кто планирует перебраться с Microsoft SQL в PostgreSQL, но всё ещё сомневается.
Тем, кто выбирает между ANTLR и DacFx и хочет научиться решать проблемы во время ревью TSQL-кода.
И тем, кто хочет узнать, зачем тестировать OLAP-кубы, что может пойти не так и какой результат дают автотесты силами разработчиков и тестировщиков.
О чём были доклады:
Станислав Флусов из Monopoly Online поделился опытом, который получила их компания за три года миграции приложений из MS SQL в PostgreSQL.
Артём Коршунов из департамента аналитических решений ЮMoney рассказал об инструментах BI, сравнил два парсера TSQL (ANTLR и DacFx) и показал, как написать простейший валидатор.
А Лена Сухих из того же департамента рассказала, как её команда тестировала OLAP-кубы и что из этого получилось.
Миграция с Microsoft SQL в PostgreSQL. Станислав Флусов, Monopoly Online
В своём докладе делюсь опытом, который мы получили за три года миграции наших приложений из MS SQL в PostgreSQL. После того, как мы прошли этот путь на примере трёх больших приложений, все новые мы пишем только на PostgreSQL. Мы смогли выработать стратегию разработки и поддержки, которая по удобству, в случае PostgreSQL, ничуть не отличается от MS SQL.
Таймкоды:
01:28 Стоимость владения и масштабирования коммерческих проприетарных решений. Когда софт в разы дороже железа
06:17 Инструменты для работы с PostgreSQL: Azure Data Studio и DBeaver Community
09:14 Инструменты мониторинга. PGWatch — next-generation PostgreSQL monitoring tool
13:39 Разница в типах данных между PostgreSQL и MS SQL
22:26 Разница в синтаксисе запросов
27:57 Инструменты для миграции схемы и запросов: AWS Babelfish и AWS SCT (Schema Conversion Tool)
34:23 Миграция средствами efCore
41:37 Инструменты для репликации данных
45:44 Оптимизация запросов и результаты нагрузочного тестирования
47:22 Топ-3 совета по миграции на PostgreSQL
Валидация T-SQL кода. Артём Коршунов, программист, департамент аналитических решений ЮMoney
Когда в команде много разработчиков и они пишут много кода, встроенных валидаций для проверки этого кода может быть недостаточно. Из-за этого во время ревью могут возникать проблемы, например при описании таблицы, с порядком сортировки строк или при переключении раскладки клавиатуры, когда русские буквы используются вместо английских и наоборот. В моём докладе подробно разберём эти проблемы и выберем парсер транзакции TSQL-кода, чтобы автоматизировать валидацию и инструменты.
Таймкоды:
01:36 Инструменты BI
08:58 Что не проверить встроенным валидатором и какие проблемы встречаются при ревью кода
15:26 Как мы исправляли эти проблемы и выбирали парсер TSQL: ANTLR vs DacFx
18:01 Разрабатываем анализатор
26:08 Что такое объектная модель
29:13 Итоги и возможные пути развития
30:50 Вывод: использовать DacFx или нет
Автотесты для OLAP-кубов. Елена Сухих, старший разработчик департамента аналитических решений ЮMoney
Представьте себе солнечный день. За большим столом собрались топ-менеджеры, чтобы провести стратегическое планирование по результатам прошлых периодов. Чтобы показать прогресс, докладчик на большом экране открывает куб, а данных нет... Примерно так началась история тестирования OLAP-кубов в ЮMoney. И хорошо, что началась, ведь вот к чему мы пришли:
Стало на 47% меньше ошибок при выкладке релизов.
На 26% увеличилось соблюдение SLA по OLAP-кубам.
На 38% уменьшилось количество обращений к админам по проблемам с OLAP-кубами.
Таймкоды
01:11 Немного обо мне и моём опыте
02:41 Проверяем, насколько редко команды тестируют OLAP-кубы — общение со зрителями в чате
04:00 Как ЮMoney пришли к необходимости тестировать OLAP-кубы и что может пойти не так
05:51 С чем мы подошли к началу тестирования OLAP-кубов и что уже было реализовано
08:56 Что нам нужно было реализовать к началу тестирования OLAP-кубов
09:42 Проблемы и решения
16:38 Автотесты на бизнес-логику силами разработчика
17:21 Автотесты на бизнес-логику силами QA
18:39 Как выглядит текущая схема тестирования OLAP-кубов
20:08 Результаты внедрения тестирования OLAP-кубов
21:22 Выводы
Чтобы не пропустить следующие митапы ЮMoney, следите за нашими новостями в телеграм-канале ЮMoney Tech.