В таблице 2 указано количество вариантов использования, обладавших определенными признаками. Выбор этих признаков был сделан на основе анализа, описанного в публикациях [2], [3] и [4].
Таблица 2 - Признаки вариантов использования
Аббревиатура | # | Описание |
PP | 26 | Хорошо распараллеливаемая задача или задача Map-Only в парадигме Map/Reduce |
MR | 18 | Классический Map/Reduce (добавьте данные по MRStat ниже для полного подсчета) |
MRStat | 7 | Простая версия Map/Reduce, в которой ключевые вычисления представляют собой простое редуцирование, подобное вычислению статистических средних величин, таких как гистограммы и средние значения |
MRIter | 23 | Итеративный Map/Reduce |
Graph | 9 | Для анализа необходима сложная структура данных в виде графа |
Fusion | 11 | Интеграция разнообразных данных в интересах выявления/принятия решений; может включать сложные алгоритмы или быть просто порталом |
Streaming | 41 | Некоторые данные поступают порциями и таким же образом обрабатываются |
Classify | 30 | Классификация: разделение данных по категориям |
S/Q | 12 | Индексирование, поиск и выполнение запросов |
CF | 4 | Использование совместной фильтрации рекомендательной системой |
LML | 36 | Локальное машинное обучение (независимое для каждой параллельной сущности) |
GML | 23 | Глобальное машинное обучение: глубокое обучение, кластеризация, LDA, PLSI, MDS, оптимизация большой размерности, как в вариационном байесовском методе, MCMC, алгоритм с распространением доверия "с подъемом" (Lifted Belief Propagation), стохастический градиентный спуск, L-BFGS, алгоритм Левенберга-Марквардта. Может вызывать алгоритм эффективной глобальной оптимизации (Efficient Global Optimization, EGO) или оптимизация сверхбольшой размерности (Exascale Global Optimization) вместе с масштабируемым параллельным алгоритмом. |
51 | Управление потоками рабочих процессов - универсальное свойство, поэтому без идентификатора | |
GIS | 16 | Данные с геопривязкой часто отображаются с использованием ESRI, Microsoft Virtual Earth, Google Earth, GeoServer и т.д. |
HPC | 5 | Классическое крупномасштабное моделирование космоса, материалов и т.д., производящее данные (например, для визуализации) |
Agent | 2 | Моделирование с использованием моделей управляемыми данными макрообъектов, представленных в виде агентов |
С учетом этого дополнительного анализа данная таблица была расширена [3]. В итоге были выделены 50 свойств, сгруппированных в четыре представления, приведенные в таблицах 3-6.
Таблица 3 - Фасеты ракурса "архитектуры проблемы" концепции Ogres (мета/макрошаблон)
Pleasingly Parallel, PP (хорошее распараллеливание) | Можно найти в BLAST, в моделировании белково-белковых взаимодействий (белковом докинге), в некоторых вариантах обработки (био) изображений, включая локальную аналитику или локальное машинное обучение с хорошо распараллеливаемой фильтрацией |
Classic Map/Reduce, MR (классический Map/ Reduce) | Алгоритмы индексирования, поиска, выполнения запросов и классификации, такие как совместная фильтрация ("вычислительные задачи-гиганты": G1 для MRStat в таблице 2, G7) |
Map Collective | Встречается в машинном обучении - особенно в случае ядра на основе линейной алгебры |
Map P2P | Прямая связь между узлами (Point to Point Communication), наблюдаемая в параллельном моделировании и графовых алгоритмах |
Map Streaming (архитектура работы с потоковыми данными) | Комбинация (параллельных) длительно выполняемых процессов отображения (картирования - maps), принимающих потоковые данные |
Shared Memory | Общая память - в отличие от распределенных данных (памяти). Используется в задачах, где важна реализация совместно используемой памяти. Имеет тенденцию быть динамически асинхронной |
SPMD | Хорошо известный метод распараллеливания "Единая программа, множество данных" (Single Program Multiple Data) |
BSP | Массовая синхронная обработка (Bulk Synchronous Processing, также расшифровывается как Bulk Synchronous Parallel model - массовая синхронная параллельная модель): четко определенные этапы вычислений/обмена информацией |
Fusion (объединение) | Процесс выявления знаний часто включает в себя объединение ряда методов или источников данных |
Dataflow (потоки данных) | Составная структура, в рамках которой ряд компонентов связан друг с другом посредством обмена данными |
Agents (агенты) | Используется в эпидемиологии, при моделировании дискретных событий и т.д."Роевые" подходы |
Workflow (потоки рабочих процессов) | Во многих приложениях часто используется "аранжировка" (orchestration)/управление потоками рабочих процессов многих компонентов |
Таблица 4 - Фасеты ракурса "Особенности исполнения" концепции Ogres
Метрики производительности (эффективности) | Измеряются в рамках сопоставительного анализ на основе эталонных показателей |
Отношение флоп/байт | Важно для производительности |
Среда исполнения | Облако или среда высокопроизводительных вычислений; нужны ли базовые библиотеки, такие как библиотеки матричной/векторной алгебры, метода сопряженного градиента, редукции, трансляции и т.д.? (Задача "гигант" G4) |
Объем | Обширность данных, доступных для анализа с целью извлечения ценной информации |
Скорость обработки | Скорость потока, с которой данные создаются, передаются, хранятся, анализируются или визуализируются |
Разнообразие | Разнородность массива данных, полученных из нескольких предметных областей и/или объединяющих несколько их типов. См. также фасет "объединение" (fusion) |
Достоверность | Полнота и точность данных, влияющие на процесс необходимой предварительной обработки и надежность результатов |
Структура информационного обмена | Какова структура соединений? Является ли информационный обмен синхронным или асинхронным? В последнем случае может оказаться привлекательным использование общей памяти |
Статическое или динамическое? | Изменяется ли приложение (граф) во время исполнения? |
Регулярность | Большинство приложений состоит из набора взаимосвязанных объектов; является ли этот набор регулярным, как набор пикселей, или же представляет собой сложный нерегулярный граф? |
Алгоритм итеративный или нет? | Важная характеристика алгоритма |
Абстрактная модель данных | Пары "ключ-значение", пиксели, графы, вектора, файлы формата HDF5, "мешок слов" и т.д. |
Является ли пространство данных метрическим? | Находятся ли точки данных в метрическом или неметрическом пространстве? (Задача "гигант" G2) |
Сложность | Является ли сложность алгоритма порядка O(N) или O(N) включая log(N), для N элементов, обрабатываемых за итерацию? (Задача "гигант" G2) |
Таблица 5 - Фасеты ракурса "Источник данных и стиль обработки данных" концепции Ogres
SQL, NoSQL или NewSQL | NoSQL включают в себя хранилища документов, столбцы, пары "ключ-значение", графы, Triplestore (хранилище триплетов, или RDF-хранилище) |
Корпоративные системы управления данными | В 10 вариантах использования из публикации NIST [1] интегрируются SQL/NoSQL-решения |
Файлы и объекты | Файлы в том виде, в каком они управляются в iRODS, чрезвычайно распространены в научных исследованиях. Объекты наиболее часто встречаются в стеке программного обеспечения для обработки больших данных Apache Big Data Stack (ABDS) |
HDFS/Luster/GPFS | Располагаются ли данные и вычисления в одном месте? |
Архивация/пакетная обработка/потоковая обработка | Потоковая обработка представляет собой процесс постепенного обновления наборов данных, при этом внедряются новые алгоритмы для достижения отклика в реальном времени (Задача "гигант" G7) |
Виды систем хранения | Виды включают "коллективное использование" (shared), "выделение" (dedicated), "постоянное хранение" (permanent) и "временное хранение" (transient) |
Метаданные/ | Описывают общие характеристики данных, историю и особенности их обработки |
Интернет вещей | К 2020 г. Интернет вещей будет охватывать от 24 (см. [6]) до 50 млрд устройств (см. [7], [8]) |
Данные, создаваемые в ходе высокопроизводительных вычислений | В результате математического моделирования генерируется визуализация, для формирования которой часто требуется проводить интеллектуальный анализ данных моделирования |
Геоинформационные системы (ГИС) | Географические информационные системы обеспечивают доступ к геопространственным данным |
_______________
Исправлена ошибочная ссылка.
Таблица 6 - Фасеты ракурса "Обработка/реальное время" концепции Ogres
Микро-рейтинги (micro benchmarks) | Простое ядро или мини-приложение, используемое для измерения производительности базовой системы |
LML | Локальная аналитика или локальное машинное обучение |
GML | Глобальная аналитика или машинное обучение, требующее итеративной среды выполнения (задачи "гиганты" G5, G6) |
Базовая статистика | Простая статистика, представленная в таблице 2 как MRStat |
Рекомендации | Совместное фильтрование и другие аналитические методы, используемые в рекомендательных системах |
Индексирование, поиск и выполнение запросов | Богатый набор технологий, используемых для индексирования данных, поиска и выполнения запросов к данным |
Классификация | Технологии для маркировки/тегирования данных (SVM, Байес, глубокое обучение, кластеризация) |
Обучение | Обучение алгоритмов |
Методы оптимизации | Машинное обучение, нелинейная оптимизация, метод наименьших квадратов, линейное/квадратичное программирование, комбинаторная оптимизация, EM-алгоритм, метод Монте-Карло, вариационный байесовский анализ, глобальный вывод |
Потоковая обработка | Расширяющийся класс быстрых онлайн-алгоритмов сложности O(N) |
Согласование (alignment) | Вариант поиска, используемый при сопоставлении последовательностей (как, например, в BLAST) |
Линейная алгебра | Многие алгоритмы машинного обучения основаны на ядрах вычислений линейной алгебры |
Граф | Задача представлена в виде графа, а не вектора, сетки и т.д. (задача "гигант" G3) |
Визуализация | Важный компонент многих конвейеров аналитической обработки |