Общество с ограниченной ответственностью Страховая компания «ВТБ Страхование» (ООО СК «ВТБ Страхование»)
Предпосылки

ООО СК «ВТБ Страхование» работает на страховом рынке с 2000 года, с ноября 2018 года входит в группу СОГАЗ, являющуюся лидером страхового рынка России.

Одна из важных корпоративных учетных систем «ВТБ Страхование» построена на платформе 1С 8 + MSSQLServer. Её объём уже давно превысил 2 терабайта и продолжает расти. С течением времени она испытывала всё большую нагрузку: как транзакционную, так и аналитическую. Что в конце 2017 года привело к решению свернуть «исторический хвост» данных по конец 2016 года. Для базы 1С такого размера это очень нетривиальная задача: как разработка алгоритма свёртки, так и его непосредственное применение в продуктивной системе. Ключевым вопросом при этом является: как свернуть базу данных без простоя системы? Ведь процесс свёртки таких объёмов очень длительный и ресурсоёмкий. И его нельзя выполнять на горячую в продуктивной БД.

Решение

Для решения этой задачи была выбрана методика, предложенная компанией Softpoint. Предлагалось следующее. Создать копию продуктивной базы и настроить между этой копией и оригинальной базой 1С технологию быстрого обмена DB Replication. Свёртку проводить в копии, а пока длится свёртка, актуальные изменения данных будут автоматически подгружаться в базу-копию из основной базы посредством DB Replication. Технология DB Replication известна своей очень высокой пропускной способностью и скоростью, поэтому она гарантированно синхронизирует даже очень большие объёмы изменений.

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

Для реализации алгоритма свёртки было решено привлечь специалистовSoftpoint. Они уже имели неоднократный опыт успешных аналогичных проектов, поэтому их участие в разработке давало дополнительную гарантию успеха. Особенностью их подхода является широкое применение средств TSQL, это позволяет выполнять свёртку многократно быстрее, чем средствами только 1С. А на базах таких объёмов это очень ценное подспорье.

В ходе обследования и формализации задачи было детально исследовано распределение данных по объектам и периодам, проанализированы контуры учета с точки зрения допустимой глубины хранения данных каждого из них. Анализировались пустые итоги регистров и неиспользуемые индексы, а также было исследовано множество других вопросов. В результате был выделено ключевое ядро данных, которые можно было свернуть по конец 2016 года.

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

Результаты

Проект реализован успешно, цели достигнуты, все задачи решены.Команда от Софтпоинт не подвела, всё сделано на высоком уровне, системно и методично. Стоит особо отметить управляемость и контролируемость проекта на всех этапах - от обследования до продуктивного применения. Предложенная методика с применением DB REPLICATION полностью себя оправдала, всё прошло именно так, как задумывалось.Суммарный объем БД уменьшился примерно на 33%, а ряд важных с точки зрения быстродействия таблицы уменьшился ещё сильнее - в 2-3 раза.

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