Крупнейшие внедрения Firebird в России. ЗАО «ПрофитМед»

О компании

С момента своего создания в 1994 году, ПрофитМед (www.profitmed.ru) прошел большой путь  и  сегодня это один из лидеров фармацевтической дистрибуции России, входящий в ТОП-10 ведущих компаний по объёму коммерческих продаж. Головное предприятие ПрофитМед в Москве, филиал в Санкт-Петербурге и 14 региональных представительств обслуживают более 7 тысяч клиентов – аптек и аптечных сетей на всей территории РФ.

Более 600 сотрудников компании обеспечивают круглосуточный режим работы – 24 часа в сутки 7 дней в неделю со складов ПрофитМед выезжают и большие фуры, и юркие коммерческие фургоны, обеспечивая доставку «день в день» для обычных аптек и круглосуточное снабжение для аптек, работающих ночью.
 

Потребности бизнеса

У всех на слуху недавние мировые пандемии «птичьего» и «свиного» гриппа, карантинные мероприятия, связанные с регулярными сезонными эпидемиями ОРЗ и ОРВИ. Неравномерная структура потребления с ярко выраженными сезонными колебаниями предъявляет жесткие требования к фармацевтическому бизнесу – необходимо обеспечивать бесперебойную работу и выполнять взятые на себя обязательства перед партнерами даже в моменты пиковой нагрузки и ажиотажного спроса.

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

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

Проблема

Несмотря экономический кризис 2008-2009 года, объемы бизнеса ЗАО «ПрофитМед» постоянно растут (более 50% роста объемов продаж в 2010 году). Соответственно растет количество пользователей и объемы обрабатываемых данных.

С 2003 года ПрофитМед использует СУБД Firebird для своей ERP-системы. С 2005 года в компании использовалась версия Firebird 1.5, релиз которой вышел в 2004 году. С тех пор объемы данных в компании выросли в несколько раз, и в 2010 году объем базы данных достиг 55 Гбайт, а нагрузка на базу данных центрального офиса достигла 2 миллионов транзакций в сутки от 350 активных пользователей.  В дни пиковых нагрузок пользователи страдали от замедления работы, а бизнес нес убытки. В то же время аналитики и маркетологи требовали возможность выполнять сложные запросы и составлять разветвленные отчеты.

Версия 1.5 Firebird проектировалась и была выпущена в то время, когда и технологический уровень, и объемы данных были значительно меньше, поэтому попытка нивелировать падение производительности путем приобретения мощного сервера с 24 ядрами и 64 Гбайтами ОЗУ принесла лишь частичный результат.
 

Решение

Для разрешения проблемы с производительностью было принято решение о переходе на современную версию СУБД Firebird 2.5. Надо отметить, что, несмотря на формально небольшую разницу в номерах версий (1.5 и 2.5), фактически Firebird 2.5 является третьим основным релизом после 1.5 (после версий 2.0 и 2.1 соответственно), и технологически значительно опережает свою предшественницу.

Среди важных отличий – Firebird 2.5 поддерживает 64-битные версии ОС Windows и Linux, значительно более эффективно работает с индексами и показывает на 30% большую производительность ввода-вывода. Для компании ПрофитМед с быстро растущими объемами данных немаловажен факт улучшенной поддержки больших баз данных (например, тестовая БД в 1Терабайт) в версии Firebird 2.5.

Забегая вперед, сообщим, что поддержка гетерогенных запросов в Firebird 2.5 позволила решить задачу формирования сложных отчетов и проведения OLAP вычислений c использованием специальной программной системы для бизнес-анализа.

Чтобы получить представление о сложности поставленной задачи, следует упомянуть, что база данных ПрофитМед содержит более 5000 хранимых процедур и 1000 триггеров. Приложения для оперативного ввода данных и построения отчетов также содержат сотни SQL-запросов. В процессе миграции необходимо было обеспечить совместимость всех SQL-запросов и хранимых процедур, проверить их на корректность и оптимальную производительность.
 

Партнеры

В проекте миграции ИТ-подразделению ПрофитМед помогала компания iBase (IBSurgeon), которая с 2001 года занимается Firebird и InterBase, тесно сотрудничая с Фондом Firebird (Firebird Foundation), компанией IBPhoenix и разработчиками Firebird. Было проведено обучение, а анализ сложных моментов осуществлялся в тесном контакте с сотрудниками ПрофитМед.

Для поддержки процесса перехода и предупреждения проблем совместимости в ПрофитМед использовался ряд аналитических инструментов IBSurgeon – FBScanner, IBAnalyst, IBTM и других.
 

Результаты

Процесс миграции в центральном офисе начался в октябре 2010 года и был полностью завершен в январе 2011. В феврале на Firebird 2.5 перешел офис ПрофитМед в Санкт-Петербурге. Интересно отметить, что, так как миграция информационной системы компании, работающей в режиме 24x7, в России возможна  только в новогодние праздники, запуск Firebird 2.5 в рабочем режиме был проведен 2 января 2011 года и прошел в штатном режиме.

На текущий момент количество активных пользователей системы достигает 400 подключений, при этом прекратились «провалы» производительности. Значительно улучшилась загрузка оборудования, так как Firebird 2.5 на полную мощность использует возможности современных серверов.

Продвинутые возможности мониторинга в Firebird 2.5 сразу же позволили выявить ряд пользователей, который использовали старые версии клиентских приложений, а также определить другие проблемы.
 

Перспективы

ЗАО «ПрофитМед» уже более 7 лет использует Firebird в качестве основной СУБД для поддержки функционирования своего бизнеса, и переход на версию 2.5 является логичным продолжением этой стратегии. Открытость и мощность СУБД позволяют как быстро реагировать на требования фармацевтического бизнеса, так и в кратчайшие сроки осуществлять даже такие сложные проекты, как миграция на новую версию СУБД.

При этом совокупные затраты на информационную систему (включающие как зарплаты сотрудников ИТ-отдела, так и обучение, лицензии и профессиональную техническую поддержку) составляют небольшую часть от аналогичных решений на базе коммерческих СУБД.

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

Техническая информация

  • Используется СУБД Firebird 2.5, операционная система – Microsoft Windows Server 2008 R2, Enterprise x64 Edition
  • Размер базы данных – 120 Гбайт, рост базы данных – 1-1.5 Гбайт/месяц
  • Количество одновременных пользователей – среднее 380, пиковое свыше 400
  • Оборудование: сервер Dell PowerEdge R900 (4 процессора по 6 ядер, 64 Гбайт ОЗУ), устройство хранения Dell PowerVault MD3220
Внедрение терминалов Casio DT-X7 на складе компании ЗАО «ПрофитМед»
 

Контакты

Firebird Foundation, www.firebirdsql.org – Алексей Ковязин, case@firebirdsql.org
ПрофитМед, www.profitmed.ru – Александр Шапошников, shaposh@profitmed.net

Подпишитесь на новости Firebird в России

Подписаться