Обзор
Цель настоящего виртуального сервиса– познакомить ИТ-специалиста со средой создания высокоуровневых композитных приложений, которая позволяет решать реальные задачи, охватывающие несколько прикладных областей.
В современной науке подавляющее большинство задач находятся на стыке научных направлений. Если мы решаем задачу в химии, то можем коснуться физики и математики. Если же задача требует повышения эффективности функционирования экономической системы, то она охватывает как минимум экономику и математику.
Решение задач, охватывающих несколько областей прикладной науки, требует привлечения специалистов разных областей, применения разного программного обеспечения, начиная от традиционных средств разработки, и заканчивая специализированными пакетами в узких областях науки и инженерии. В задаче оценки экономического ущерба от прорыва нефтепродуктопровода используются: пакет MATLAB для математических расчётов разлива нефтепродуктов на рельефной местности, геоинформационная система ESRI ArcView для оцифровки данных рельефа местности и визуализации расчётов разлива, пакет Fuzzy Calc для оценки экономического ущерба на основе нечетких исходных данных. Поэтому решение этой задачи потребовало достаточно длительного времени (несколько месяцев).
Используемые для решения комплексных задач пакеты имеют разную архитектуру и далеко не все из них используют суперкомпьютерные технологии. Формат входных, выходных и, возможно, промежуточных данных у них также разный. Некоторые пакеты, разработанные в 80-х, в начале 90-х готов, очень хорошо себя зарекомендовавших в научном и инженерном сообществе и по-прежнему востребованные, не обновлялись в силу ряда причин, одной их которых является прекращение деятельности фирмы-разработчика. В связи с этим данные пакеты не могут использовать современные аппаратные решения на полную мощность. Вышеприведённые факты создают серьезные препятствия при решении жизненно важных комплексных задач.
В разделе "Методические материалы" описан язык скриптов EasyFlow, который встроен в среду (платформу) разработки распределённых композитных программных решений, позволяющая решать комплексные задачи, сосредотачиваясь на самой проблеме. Более того, данная платформа не требует какой либо установки на ПК пользователя, т.к. она создана на базе облачных технологий, а также позволяет максимально эффективно задействовать ресурсы суперкомпьютеров, применяя даже те пакеты, которые не поддерживают соответствующие технологии. Название языка говорит само за себя – простой поток. Скрипты, создаваемые для решения задач содержать небольшое количество строк, которые определяют настройку и вызов пакетов, интегрированных в CLAVIRE. Слово Flow указывает на то, что с помощью EasyFlow описывается поток вычислений (WorkFlow - WF) в распределённой среде.
Язык описания композитных приложений WF EasyFlow (далее – Язык или EasyFlow) предназначен для описания инструкций выполнения композитных приложений в распределенной вычислительной среде. Он предоставляет конечному пользователю гибкие возможности по заданию различных форм потоков вычислений, в рамках которых происходит выполнение различных прикладных пакетов, генерация выходных данных, их получение, конвертация и обработка. В целом получаемый пользователем поток определяет решение сложной задачи пользователя.
Основной идеей Языка является полное абстрагирование от особенностей распределенной вычислительной среды, в которой работает пользователь. Это делает описание задания полностью независимым от той вычислительной среды, которой управляет CLAVIRE. Такой подход можно кратко выразить так: EasyFlow – это высокоуровневый язык описания абстрактных workflow (WF).