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

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

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

Эффективность этой обработки, безусловно, зависит от скорости (иногда все решают секунды) и производительности вычислительных систем. Но немалую роль тут играют и объемы анализируемых данных, и формат хранения, и форма представления результатов. 

В странах Европы распространенной практикой является установка небольшого кластера практически в каждом филиале банка и мощного HPC в центральном офисе — эти компьютеры используются одновременно многими пользователями. Подобное решение уже доказало свою эффективность, ведь, один раз сделав вложение в разработку качественных алгоритмов анализа и создав базу знаний, можно существенно ограничить влияние человеческого фактора на принятие решения, а значит — уменьшить риски при одновременном снижении требований к квалификации персонала.

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

Программная архитектура серверной среды

Программная архитектура кластера ориентирована на работу в среде финансовых организаций (банки, страховые компании и т.п.). В её основе лежат привычные для предприятий бизнес‑среды компоненты Microsoft. Чтобы в системе смогли работать конечные пользователи, должны быть запущены следующие составляющие: 

1. Active Directory. Может быть локальным и включать в себя только компоненты кластера. Однако более эффективным является решение, когда к AD подключены и другие структуры предприятия. 

2. Сервер баз данных MS SQL Server. Для его развертывания задействуют общий либо отдельный сервер в редакции Workgroup (Developer Edition).

3. Microsoft Office SharePoint Server 2007 (Enterprise‑редакция). Он представляет собой интегрированный набор серверных приложений для организации совместной работы. Из всех его компонентов для работы системы используется Excel Services. Эта служба предназначена для обеспечения коллективной работы над файлами Excel.

4. Windows Computе Cluster Server 2003 — специальная версия серверной операционной системы Microsoft для применения в HPC.

Одна из основных задач, стоящих перед разработчиками Windows Compute Cluster Server, — обеспечить простоту установки и настройки системы. В отличие от кластерных операционных систем на основе UNIX, установку которых может осуществить лишь специалист с высоким уровнем знания ОС, для настройки вычислительного кластера на Windows Compute Cluster Server 2003 достаточно базовых знаний Windows Server 2003. К примеру, на отдельный сервер устанавливается обычная операционная система Windows Server 2003 R2 Standard, сервер включается в Active Directory организации (либо этот сервис устанавливается на нем же), и на этот же сервер инсталлируются MOSS 2007 и MS SQL Server. 

Далее устанавливается специализированный пакет Compute Cluster Pack (CCP), и таким образом создается управляющий узел для кластера (Head Node). На остальные — расчетные — узлы кластера (Compute Node) инсталлируется специализированная ОС Windows Computе Cluster Server 2003. 

Балансировка нагрузки 

Основой прикладных вычислений для использования в финансовой области является модель Сluster Excel for Financial Services (ECS). Ее идея заключается в том, чтобы обеспечить защищенный и безопасный доступ к параллельным вычислителям из привычного для работников финансовых организаций инструмента — Microsoft Excel. Такая модель позволяет финансисту обрабатывать в сжатые сроки колоссальные объемы информации и при этом не зависеть от помощи сотрудников – например, программистов.

Возможностей подобного кластерного комплекса достаточно и для вычисления в других финансовых пакетах. Хорошим примером здесь может служить всемирно известный SunGard. Причем задачи пользователей, поставленные в разных средах (Сluster Excel и SunGard), могут обрабатываться на одном и том же HPC.

«Красной линией» через всё решение проходит именно простота использования системы непосредственным заказчиком вычислений. Действительно, ему не приходится заботиться о том, на скольких узлах считается задача, когда она будет запущена и т.д., — все это описывается на уровне политик и прав доступа администратором сети. 

Далее задачи запускаются либо в порядке очередности одновременно на все узлы, чем достигается максимальная скорость при обработке большого количества запросов (например, просчет потребительских кредитов), либо — в зависимости от приоритетов конкретного пользователя, который получает гарантированный уровень обслуживания (допустим, два узла из четырех), а при наличии свободных ресурсов — все ресурсы кластера. 

За распараллеливание задачи также отвечает ПО Microsoft, хотя наличие продуманных алгоритмов расчетов является немаловажным элементом успеха.

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

Аппаратная архитектура серверной среды 

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

 «Стартовый набор» кластера состоит из пяти узлов — четырех вычислительных и одного управляющего. В кластере Entry они строятся на основе специализированного 1U‑шасси Tyan с материнской платой Tyan Теmpest i5000VS. Эта система оснащена двумя процессорными гнездами для 4‑ядерных процессоров Intel Xeon, шестью разъемами под память («по умолчанию» установлено 4 ГБ в каждом узле), двумя сетевыми интерфейсами 1 Gigabit Ethernet и имеет довольно компактные размеры. Дисковая подсистема допускает подключение двух накопителей SATA с возможностью объединения их в RAID уровней 0 и 1. Отличительной особенностью шасси является наличие ЖК‑экрана, отображающего оперативную информацию о состоянии компонентов сервера. Эта модель интересна тем, что предусматривается возможность дооснащения узлов модулями Infiniband, что позволяет наращивать производительность кластера в соответствии с требованиями прикладного ПО. 

Серверы кластера могут быть установлены как в общей серверной комнате, так и в отдельной компактной стойке — со своим блоком бесперебойного питания, скоростным коммутатором, а также системой управления и мониторинга. Подобный выбор оборудования обеспечивает баланс между ценой, производительностью и возможностями дальнейшего развития. В качестве узлов кластера могут применяться и системы с двумя отдельными серверными 2‑процессорными модулями в корпусе 1U, и системы 1U с 4‑мя процессорами на одной материнской плате — тем самым практически достигается плотность более дорогих blade‑систем из 16‑ти расчетных ядер на 1U.

Производительность и возможности масштабирования

Производительность кластерной системы при обработке большого объема статистических данных растет практически линейно с увеличением узлов в системе. Небольшой HPC с 4‑мя расчетными узлами способен выполнять расчеты в 10—20 раз быстрее, чем ПК. И дело не только в аппаратном обеспечении — здесь важна оптимизированность всего комплекса программного обеспечения и непосредственно операционной системы Windows Computе Cluster Server 2003 под расчетные задачи. 

Много это или мало? Например, сотрудник при выдаче кредита или расчете страхового полиса может не только более качественно выполнить свою работу (большую часть оценки рисков берет на себя расчетная система), но и быстрее принять решение о выдаче/не выдаче кредита, сократив время ожидания, что весьма актуально для розничных кредитов. Еще более показательна ситуация с расчетом кредитов под недвижимость, в том числе коммерческую. Расчеты в этом случае нередко занимают 14—18 часов, и сотрудникам приходится оставлять задачу на ночь. А ведь ночью может произойти сбой, задачу придется запускать заново еще раз. А если клиентов будет более одного в день? Таким образом, если оценивать масштабируемость на уровне ПК и HPC, то даже простейший кластер из четырех узлов — это большой шаг «на пути к прогрессу».

В аппаратной составляющей особенно важно правильно выбрать интерконнект. При количестве расчетных узлов от 4 до 12 экономически оправданным для финансовых задач является использование межузловых соединений на основе 1 Gigabit Ethernet. В крупных кластерах с числом узлов более 12‑ти более целесообразно применять Infiniband.

Связь с клиентскими рабочими местами

Связь между кластером и рабочим местом пользователя реализуется полностью прозрачно и практически не требует специальных знаний. Один раз выполнив настройку на странице Excel, при дальнейшем запуске расчет будет осуществляться не на пользовательском ПК, а на HPC. Аналогичный процесс происходит при расчете обычных страниц в Excel. Так же прозрачно работают и системы класса SunGard. В интерфейсах решений для финансистов самое важное — пользователь, а средства, которые задействуются для получения результата, максимально скрываются. При правильном развертывании HPC в организации, пользователь может даже не знать, что его задачи считает суперкомпьютер, и не представлять объемов данных и сложности расчетов, которые он инициирует. И в этом «сила» как методологии Сluster Excel for Financial Services, так и пакетов класса SunGard.

Модели использования

Типичная модель использования сети HPC в банковской и страховой сферах — это скоринговые услуги. Введя определенный набор параметров клиента и проанализировав статистические данные по схожей выборке, можно с высокой степенью вероятности предсказать риск невозврата и рассчитать оптимальные для клиента и банка параметры кредита, залоговые риски и т.д. Это актуально и для страховых компаний: здесь точная настройка параметров под определенного клиента еще более важна. Пример — медицинское страхование. 

Пока норма прибыли финансовых учреждений в Украине позволяют не беспокоиться о технологиях оптимизации и не бороться за «каждую копейку», но рано или поздно и на наших просторах произойдут перемены. И вот тогда те, кто раньше освоил HPC, окажутся в выигрыше. Базы знаний не накапливаются за 1—2 года, а те, что уже существуют, очень дороги и не вполне учитывают «местные реалии». 

Такие мощные финансовые структуры, как UniCredit Group или HVB, согласились поделиться опытом и опубликовать подробные истории внедрения. Но большинство банков, активно использующих эти решения, не раскрывают подобной информации, считая использование технологий HPC своим конкурентным преимуществом.