Freigeben über


Excel на стероидах

Наверное всем известно что у нас есть два продукта – MOSS 2007 и Windows Compute Cluster Server.

В состав MOSS входит технология Excel Services, это фактически «вычислительный движок» excel, который позволяет обрабатывать электронные таблицы на сервере.

Но мало кто знает что есть решение которое кластеризует Excel. Как то так сложилось что это решение называют «Параллельный Excel» (“Parallel Excel”).

 

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

 

Для того чтобы все это работало, требуется совсем не много, а именно:

· Кластер на базе Windows Compute Cluster Server Edition

· На каждый из узлов кластера установлен MOSS с включенным Excel Services

· На управляющий узел установлены специальные дополнения которые интегрируются с клиентом

· На клиентский компьютер так же установлен небольшой плагин к Excel.

 

  • вычисления должны представлять собой множество независимых задач которые могут выполнятся параллельно, например:
    • Таблица с множеством независимых формульных вычислений
    • Таблица, одни и те же вычисления в которой множество раз происходят с различными данными (Симуляция Монте-Карло, параметрические вычисления)
    • Пакетные задания которые обрабатывают множество файлов Excel последовательно
  • Ограничения
    • Плагины третьих сторон и дополнения разработанные своими силами могут потребовать дополнительной доработки серверного окружения
    • Макросы VBA не работоспособны на Excel Services
  • Программное обеспечение
    • Office Excel 2007
    • Office SharePoint Server 2007 с работающими Excel Services
    • Windows Compute Cluster Server 2003

Slide13

Сценарий работы этого решения таков:

1. Конечный пользователь имеет задачу запрограммированную в Excel и большой набор данных в этой же таблице.

2. С помощью плагина он обозначает границы вычислений и запускает эти вычисления.

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

4. И затем результаты возвращаются клиенту, причем сразу в открытую на рабочем компьютере таблицу

 

 

Очевидно, что при таком сценарии можно решать множество задач из различных предметных областей, например

• Симуляция

• Алгоритмический трейдинг

• Портфельное моделирование

• Анализ рисков

• Бизнес моделирование

• Планирование бюджетов

• Статистический анализ

• Обработка данных

 

И при этом скорость вычисления результатов будет фактически зависеть только от количества вычислительных узлов. Представте себе трейдера который получает анализ портфеля акций не за 8 часов работы компьютера а за 15 минут! А ведь такие результаты может выдать 32 узловой кластер!

Никакой десктоп никогда не выдаст такой скорости в силу не только процессорной мощности но и ограниченности ресурсов памяти.

 Slide6

Подробную статью и пример можно скачать с нашего сайта по адресам

· https://msdn2.microsoft.com/en-us/library/bb693433.aspx

· https://www.microsoft.com/downloads/details.aspx?familyid=513d97da-34b7-4346-a9e5-b8998170aade&displaylang=en