2. Цель и актуальность работы Цель работы Создание масштабируемой и легко расширяемой системы обработки данных Актуальность работы Требуется при использовании методов computational science. Интеграция уже существующих подсистем обработки. 2
3. Требования к системе Пользовательские требования Легкость использования Широкая доступность Минимальные требования к пользовательскому оборудованию Системные требования Масштабируемость (вычислительная) Расширяемость (функциональная) 3
4. Существующие решения Google Public Data Explorer Gapminder Нет функциональной расширяемости Узкоспециализированные (только визуализация) Statsoft STATISTICA Проприетарный продукт Платформо-зависим 4
5. Выбор архитектуры Клиент-серверная архитектура Облачные вычисления Software-as-a-Service (SaaS) Service-oriented architecture (SOA) Разрозненные, слабосвязанные службы Веб-службы SOAP Web-services Протокол передачи: SOAP RESTful web-services Протокол передачи: HTTP 5
7. Входной скрипт Входной скрипт – это последовательность команд вида: resID = [подсистема].[команда][inID] На месте входных данных могут быть константы Идентификаторы могут быть представлены: В явном виде Переменной При повторном использовании переменной, связанные данные уничтожаются Скрипт проходит стадии: Пользовательский вид -> XML пользовательского вида -> XML с идентификаторами 7
8. Подсистемы У каждой системы есть XML-описатель, содержащий: Название системы Список команд, состоящий из описатель команд: Название команды XSD (XML Schema Definition) для валидации входных параметров входных параметров Интерфейсы всех подсистем единообразны: Функция запроса описателя (для регистрации подсистемы) Функция выполнения команды принимающая: Название команды Идентификатор входных данных 8
10. Подсистема управления данными Диспетчер хранит перечень всех доступных хранилищ и данных Диспетчер хранит список актуальных данных в таблице: [URI данных] :[URL хранилища] Каждая служба имеет локальный диспетчер данных, который: Размещает данные в локальном хранилище Размещает данные в удаленном хранилище, через запрос к Диспетчеру До стадии фактической обработки данных, система оперирует исключительно описателями 10
11. Внутренние типы данных Все данные передаются в виде XML-сообщений Валидация всех типов данных может происходить при помощи XSD-схем (XML Schema Definition) Одиночные поля передаются в виде полей XML-документа Массивы и таблицы передаются в виде описателя и двоичного (Base64)представления. Описатель содержит: Размерность передаваемого массива/таблицы Тип ячеек массива/таблицы 11