Поддержка медицинской IT-системы

Восстановление миллионов документов в базе данных

  • DevOps
  • Медицина
  • DevOps

Каждый IT-продукт предназначен для решения определенных бизнес-задач – например, автоматически формировать медицинские документы (справки, рецепты) и обеспечивать удобство докторов и пациентов. Для того, чтобы IT-система выполняла эти задачи, важно выстроить как процессы разработки, так и техническую поддержку. В кейсе рассказываем, как мы помогли восстановить работу и повысить безопасность IT-системы в области здравоохранения.

Проект в цифрах

  • более 4 миллионов файлов
  • менее 10 дней для восстановления системы
  • менее 30 дней для полного восстановления

pasted image 0 (1).png


С чего мы начинали

Наш партнер обратился к нам для тестирования и расширения функций IT-системы, используемой в клиниках Европы для управления документооборотом.

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

В этом проекте мы выполняли большой комплекс задач:

– Заказчику нужно было в сжатые сроки ускорить выпуск новых релизов, и нас подключили к разработке и тестированию продукта.

– Также мы занимались поддержкой его «облака», при этом отдельные клиники самостоятельно устанавливали десктопную программу на своих серверах.


Инцидент в работе системы

После года сотрудничества заказчик обратился к нам для решения новой задачи. В одной из клиник возник сбой в базе данных (БД) IT-системы. Эта ситуация произошла накануне Рождества, и заказчик не успевал восстановить систему, потому что в Европе наступали длительные выходные.

Проблема заключалась в том, что из-за сбоя в базе данных оказались повреждены записи о приемах более 1 000 000 пациентов. Физический диск с виртуальной машиной заказчика тоже был поврежден, а базу резервных копий (бэкапов) клиника не вела. У нас оставалась единственная возможность восстановить данные – из бэкапа жесткого диска.

Анализируя настройки системы, мы столкнулись с новой проблемой. Восстановить данные из резервной копии, как мы предполагали ранее, было невозможно. Бэкапы диска не сохранились, потому что клиника выделила для них всего 500 Gb на сервере, и этого места было недостаточно.

В поисках других вариантов решения мы нашли интересную ошибку. Оказалось, что часть информации из базы клиники дублировалась в ElasticSearch, хотя обычно в этом нет необходимости. В результате именно эта ошибка нам помогла.

Для восстановления файлов мы написали утилиту, которая позволила комбинировать часть данных из базы и ElasticSearch. Мы протестировали ее и убедились, что наш метод работает. Несмотря на частичное повреждение БД, мы использовали несколько разных подходов и смогли сохранить все данные. В течение новогодних праздников мы восстановили все потерянные записи – более 2 миллионов документов. Заказчик был воодушевлен этим результатом и выразил нам благодарность.

Подробнее об этапах решения задачи можно прочитать в нашем блоге на Хабре.


Заключение

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

С помощью SQL Server мы настроили резервное копирование, а также обеспечили дополнительный мониторинг бэкапов на нашей стороне и систему ночных алертов. Сейчас мы продолжаем присматривать за инфраструктурой всех клиник, в которых установлена IT-система.

Благодаря оперативной помощи нашей команды, клиенту удалось в короткие сроки восстановить IT-систему и предотвратить возможные риски. Этот проект — еще один пример того, как мы помогаем нашим заказчикам на всех этапах — от создания IT-продукта до его обслуживания и поддержки.

Этот кейс вдохновил нас на создание специальной «команды быстрого реагирования» – приглашаем узнать больше о технической поддержке разработки и тестирования.

Почувствуйте наш подход и повторите
успех наших клиентов

Напишите нам
ЕЛЕНА ДОДОНОВА
ЕЛЕНА ДОДОНОВА
МАКСИМ БЕЛЯКОВ
МАКСИМ БЕЛЯКОВ