Выпуская новый продукт или его версию, вендор всегда подвергает себя определенному риску. Если продукт не будет широко востребован или пользователи предыдущей версии не захотят расставаться с ней, затраты на разработку могут себя и не оправдать. Рискуют и первопроходцы: если заявленные вендором новшества реализованы “криво” или наряду с ними в отдельных функциях появятся ошибки, которых в предыдущей версии не было, то затраты на внедрение лягут тяжелым грузом на бюджет организации. Вот почему так велика роль первых заказчиков, которым вендор передает новый релиз задолго до его официального выпуска на рынок. Пилотная организация должна четко представлять себе цели, достигаемые переходом на новый продукт, иметь команду квалифицированных специалистов, обладающих опытом работы с подобными продуктами и способных освоить новую функциональность. Более того, они должны уметь объективно рассказать о своих первых впечатлениях тем, кто только присматривается к новому решению. Ниже приводится рассказ одной из организаций, применившей для решения практических задач новую версию СУБД Microsoft SQL Server 2012, официальный выход которой на рынок запланирован вендором на первую половину нынешнего года.
Расположенная в Бостоне клиника Beth Israel Deaconess Medical Center (BIDMC), являющаяся также учебной базой для Harvard Medical School. В ее состав входит госпиталь на 600 коек. За год на прием приходит более 250 тыс. пациентов, а в информационной системе хранится свыше 3 млн. медицинских карт. ИТ-департамент BIDMC, широко использующий разнообразные технологии Microsoft для поддержки ответственных медицинских приложений, был признан по результатам исследования InformationWeek 500 в 2011 г. самым инновационным ИТ-департаментом США в учреждениях здравоохранения и занимает почетное 12-е место в аналогичном списке, охватывающем все отрасли.
Для управления большинством из 200 БД, лежащих в основе эксплуатируемых приложений, в BIDMC используются СУБД Microsoft SQL Server 2005 и SQL Server 2008 R2, которые в целом удовлетворяют требования медицинского учреждения к отказо- и катастрофоустойчивости. Тем не менее ознакомившись со спецификациями будущей SQL Server 2012, специалисты BIDMC увидели ряд новых интересных возможностей. Так, до сих пор указанные качества обеспечивались технологиями зеркалирования и отказоустойчивой кластеризации. Однако, хотя многие приложения опираются сразу на несколько БД, процедура автоматического восстановления после сбоя распространяется только на одну БД и поэтому ее приходится проводить поочередно для каждой такой БД. “Во время тренировок нашим администраторам БД приходилось предпринимать дополнительные усилия, чтобы в процессе восстановления каждое приложение было заново подключено ко всем своим БД, — рассказал менеджер BIDMC по администрированию БД Дон Вуд. — А это 2 часа кропотливой ручной работы квалифицированного специалиста”.
Для повышения уровня доступности специалисты BIDMC пытались в меру возможностей изолировать работающие экземпляры SQL Server друг от друга. “Мы инсталлировали по несколько экземпляров СУБД на каждом физическом сервере, но при этом не могли по -настоящему осуществлять выделение каждому экземпляру нужных ресурсов, — продолжил Дон Вуд. — Если один из них испытывает проблемы либо происходит падение операционной системы, все экземпляры, запущенные на этой машине, будут остановлены”. Очень непросто также переносить экземпляры SQL Server с одной физической машины на другую: для корректной обработки SQL-запросов приходится производить дополнительные настройки, на которые может потребоваться несколько дней.
Кроме того, руководство клиники хотело бы более рационально и удобно организовать работу людей, занимающихся бизнес-анализом и построением отчетов. Им приходится дублировать усилия, делая практически одну и ту же работу по извлечению данных из БД, их загрузке в Excel и последующему анализу. На построение запросов, необходимых для подготовки месячных отчетов, и импорт данных нередко уходит несколько рабочих дней.
Все это заставило специалистов BIDMC обратить внимание на новые функции продукта Microsoft SQL Server 2012 с тем, чтобы использовать их для решения упомянутых выше задач. Решаясь на пилотное внедрение, здесь, несомненно, учитывали наличие в ИТ-департаменте квалифицированных специалистов, имеющих большой положительный опыт работы с СУБД Microsoft. Проект стартовал в декабре 2010 г. и был успешно завершен в октябре 2011-го. На новую СУБД было переведено приложение, осуществляющее биллинг и финансовый анализ. “Если пример данного приложения окажется удачным, а у меня пока нет причин сомневаться в этом, мы в ближайшие год-полтора проведем подобную миграцию большинства наших приложений”, — заявил Дон Вуд.
Указанное приложение развернуто в среде частного облака, базирующегося на ОС Windows Server 2008 R2 и платформе виртуализации Hyper-V. Несмотря на то что в клинике в основном применяется технология VMware, в данном случае с целью упрощения выбор был остановлен на Hyper-V. С помощью Hyper-V создаются виртуальные машины, на которых, в свою очередь, развертываются экземпляры СУБД SQL Server 2012. Для построения шаблонов, конфигурирования новых виртуальных машин и балансировки нагрузки между такими машинами, развернутыми на разных физических серверах, применяется инструментарий Microsoft System Center Virtual Machine Manager 2008 R2. Задействуется также механизм “живой миграции” Hyper-V, позволяющий восстанавливать работу виртуальных машин после сбоев без нарушения доступности приложений.
Для обеспечения высокой доступности и катастрофоустойчивости применяется появившаяся в SQL Server 2012 функция AlwaysOn — усовершенствованная технология зеркалирования, поддерживающая до четырех подчиненных БД (две из них зеркалируются синхронно). Все БД, участвующие в работе биллингового приложения, логически объединены в так называемую группу доступности AlwaysOn, которая может быть восстановлена после сбоя как единое целое. Кроме того, с целью повышения катастрофоустойчивости эта группа тиражируется на две географически удаленные площадки. Подчиненные базы, работающие только в режиме чтения, могут исполнять еще одну очень важную роль — служить платформой для оперативной генерации отчетности, снимая подобную нагрузку с основного сервера БД, занятого обработкой транзакций. При таком подходе заметно снижаются требования к основному серверу и оптимизируется использование вычислительных ресурсов.
Аналитические возможности службы SQL Server 2012 Analysis Services существенно расширились благодаря технологии поколоночного хранения и индексирования VertiPaq и семантической модели Business Intelligence Semantic Model. Последняя дает разработчикам возможность выбирать между табличной и многомерной моделью данных и соответствующими языками бизнес-логики (DAX и MDX). Конечные пользователи будут по-прежнему работать в привычном для них интерфейсе, имея дело с теми же аналитическими процедурами, приборными панелями и визуальными представлениями, и им при этом не нужно знать технологические детали структуры анализируемых данных.
Специалисты BIDMC обнаружили, что SQL Server 2012 позволяет оптимизировать использование вычислительных ресурсов. К примеру, за счет поколоночного индексирования ColumnStore Index можно существенно увеличить скорость обработки запросов, особенно тех, где применяется операция JOIN на схеме БД типа “звезда”. А благодаря усовершенствованным функциям компрессии данных удается на 50% снизить требования к емкости системы хранения. Инструмент SQL Server 2012 Resource Governor дает возможность определить, какие вычислительные ресурсы понадобятся, чтобы добиться желаемой производительности БД в условиях той или иной смешанной нагрузки, исходящей из разных конкурирующих между собой приложений.
Каковы же первые результаты и впечатления BIDMC? Развернутое на платформе SQL Server 2012 биллинговое приложение базируется на четырех БД суммарным объемом 125 Гб. Самая крупная таблица содержит несколько сотен миллионов строк. К функциям этого приложения регулярно обращаются 15 сотрудников, выполняющих транзакционные задачи, и около 1000 финансовых аналитиков и биллинг-менеджеров. В качестве аппаратной платформы используются серверы HP ProLiant DL380 G7. Развертывание приложения на частном облаке сделало его более отказоустойчивым и снизило нагрузку на персонал. “Прежде для восстановления после сбоя необходимо было ручное вмешательство администратора БД, — пояснил Дон Вуд. — Теперь это делается гораздо быстрее: время не теряют ни конечные пользователи, ни ИТ-специалисты. Сбой в одном экземпляре СУБД никак не сказывается на функционировании остальных. Мы ожидаем, что благодаря переводу всех наших ответственных приложений на SQL Server 2012 удастся достигнуть 99,999%-го уровня их доступности”.
Технология живой миграции Hyper-V дала возможность перемещать виртуальные машины между хостами или создавать новые, не останавливая приложение. Она обеспечивает также еще один уровень отказоустойчивости. “Мы используем кластеризацию в среде виртуальных машин, благодаря чему при выходе из строя одного хоста все запущенные на нем виртуальные машины быстро восстанавливаются на другом”, — рассказал Дон Вуд.
Существенно упростилась работа сотрудников, использующих и анализирующих информацию. Теперь у них гораздо меньше времени уходит не только на формирование запросов и отчетов, но и на их поддержку. Автоматизированные процессы, заложенные в соответствующие службы SQL Server 2012 (Analysis Services и Reporting Services), позволили снизить ежемесячные временные затраты на такую поддержку с одного-двух дней до нескольких часов. Отчет, спроектированный в одном из подразделений, легко передать в SQL Server 2012 Analysis Services, после чего с ним могут работать все остальные сотрудники.
Заметно повысилась производительность. “Мы начали с переноса БД из SQL Server 2008 R2 в SQL Server 2012 и сразу же после этого зафиксировали увеличение скорости обработки, — сказал Дон Вуд. — Тестируя функцию поколоночного индексирования ColumnStore на таблице с 160 колонками, мы обнаружили, что операция, на которую раньше уходило 53,8 мс, теперь выполняется за 6,3 мс”.
Отмечается также, что благодаря богатому опыту работы специалистов ИТ-департамента BIDMC с технологиями Microsoft, им было довольно просто осваивать и поддерживать новую версию СУБД. По этой же причине было принято решение о применении технологии виртуализации Microsoft Hyper-V. По словам Дона Вуда, такой подход полностью себя оправдал и будет использован при переносе остальных приложений на платформу SQL Server 2012.
“Microsoft SQL Server 2012 уже на стадии тестовых внедрений завоевал признание заказчиков, и медицинский центр BIDMC — яркий тому пример. В этой организации очень высокий уровень развития информационных технологий, она тщательно изучает новые решения, тем более, если дело касается баз данных — критически важной составляющей бизнес-процессов. Поэтому их положительные отзывы очень много значат для нас. Уверены, что широкомасштабное развертывание финальной версии нашей СУБД оправдает ожидания клиентов, повысив эффективность их деятельности”, — сказал Вячеслав Архаров, менеджер "Microsoft в России" по продуктам SQL Server и BizTalk Server.
СПЕЦПРОЕКТ