Регистрация / Вход
Прислать материал

14.607.21.0090

Аннотация скачать
Общие сведения
Номер
14.607.21.0090
Тематическое направление
Информационно-телекоммуникационные системы
Исполнитель проекта
Федеральное государственное бюджетное учреждение науки Институт системного программирования Российской академии наук
Название доклада
Разработка комплекса научно-технических решений предназначенных для хранения и обработки сверхбольших объемов данных в задачах механики сплошной среды
Докладчик
Калугин Михаил Дмитриевич
Тезисы доклада
Цели и задачи исследования
Цели исследования:
1) Разработка комплекса научно-технических решений, предназначенных для создания быстродействующей кластерной системы хранения и обработки сверхбольших объемов данных в распределенных облачных системах;
2) Создание научно-технических решений, предназначенных для обработки больших объемов данных, возникающих при численном решении задач механики сплошной среды.
Для достижения этих целей были решены следующие задачи:
1) Разработаны методы построения распределенной архитектуры обработки и хранения больших данных с использованием технологии виртуализации обработки данных поверх узлов хранения для повышения производительности обработки.
2) Разработаны методы оптимизации скорости доступа за счет разделения данных на оперативные и архивные на основе частоты их использования.
3) Разработана математическая модель оптимизации обработки данных и повышения эффективности передачи данных, основанная на оценке времени выполнения программ обработки и выборе оптимальных параметров кластера обработки данных.
4) На основе математической модели разработаны алгоритмы ускорения доступа к данным и их обработки с использованием виртуализации.
5) Разработана программная архитектура обработки больших объемов данных с использованием средств виртуализации, на основе которой выполнена программная реализация.
6) Разработаны методы построения технологии виртуализации обработки данных непосредственно на узлах хранения данных.
7) Разработана методика обработки больших объемов данных, возникающих при численном решении задач механики сплошной среды.
8) На основе разработанных решений построена web-лаборатория обработки больших объемов данных в задачах механики сплошной среды.
Актуальность и новизна исследования
Последние 5 лет активно развивались высокопроизводительные кластеры, их количество с 2009 по 2014 год выросло в 1,5 раза, а количество вычислительных ядер почти в 4 раза. Статистика использования высокопроизводительных кластеров, собранная компаниями Cray и IDC, показывает, что 67% от общего числа высокопроизводительных кластеров используются для выполнения задач обработки данных. Производители и пользователи высокопроизводительных кластеров ищут новые направления для эффективного решения прикладных задач.
Трудность реализации подобного подхода заключается в отсутствии единой инфраструктуры для высокопроизводительных вычислений и обработки больших данных. Оба типа вычислительных систем имеют сложившийся набор программного обеспечения, которое разрабатывалось с учетом архитектуры и классов решаемых задач и решает вопросы управления ресурсами и их распределения. Эта проблема может быть решена разработкой инструментов, учитывающих особенности вычислительных структур.
Актуальной является задача разработки инструментов и методик анализа больших данных в задачах механики сплошной среды, позволяющих эффективно использовать различные инфраструктуры, предназначенные для распределенной обработки больших данных и для высокопроизводительных вычислений.
В рамках работ получены результаты, не имеющие аналогов:
1. Алгоритмы оптимизации обработки данных с использованием виртуализации и скорости доступа к данным на основе разделения данных на оперативные и архивные.
2. Математическая модель оценки времени выполнения программ, предназначенных для обработки больших данных.
3. Методика обработки больших данных, возникающих при численном моделировании задач механики сплошной среды.
Описание исследования

Для оптмизации скорости обработки данных за счет виртуализации поверх узлов хранения, разработанные решения используют облачную платформу OpenStack и функционируют в ее составе как один из сервисов. Например, интерфейс управления кластерами обработки данных и задачами обработки данных встроен в интерфейс платформы, что позволяет обеспечивать единый веб-интерфейс доступа к функциям ЭО ПК и всей облачной платформы, а также добавлять новые сервисы по мере необходимости.

Разработанная программная реализация предоставляет возможности обработки данных в виртуальной среде поверх узлов хранения с использованием подхода Platform as a Service (PaaS). Это значит, что хотя предметной областью текущего исследования является обработка данных в задачах механики сплошной среды (МСС), решение может быть расширено практически на любые другие предметные области, в которых применимы методы и алгоритмы обработки больших данных. Для этого потребуется только подготовить программы и алгоритмы обработки данных, характерные именно для этой области.

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

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

Взаимодействие между быстрой и медленной файловой системой обеспечивается специальным приложением, которое отслеживает запросы на чтение/запись данных, к которым относятся: входные данные задачи, промежуточные данные вычислений и результаты вычислений. Это специальное приложение обеспечивает распределение данных между локальным хранением (оперативные данные) и объектным хранилищем (архивные данные) таким образом, что прикладное приложение, работающее над своей задачей, будет считать все файлы, находящиеся на обоих уровнях системы, локальными.

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

Предложенный подход позволяет оперировать всем доступным объемом данных прозрачно для прикладного приложения так, что вся задача выполняется в один проход.

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

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

Разработанная методика предназначена для постобработки данных с использованием Apache Spark, полученных при решении задач механики сплошной среды, с использованием численного моделирования. Использование Apache Spark позволяет проводить распределенную обработку данных в оперативной памяти, что значительно повышает производительность анализа, по сравнению с Apache Hadoop. В рамках методики используются различные методы анализа данных:
1) Собственное ортогональное разложение (POD);
2) Динамическое разложение мод (DMD);
3) Акустическая аналогия Ффоукс-Вильямса и Хоукингса.

Результаты исследования

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

Стенд позволяет:

1) обеспечивать запуск:
    - 512 виртуальных машин типа 1 (1 CPU, 4 ГБ ОЗУ), 
    - 64 виртуальных машин типа 2 (8 CPU, 32 ГБ ОЗУ), 
    - 32 виртуальных машины типа 3 (16 CPU, 128 ГБ ОЗУ).

2) Обеспечить скорость сетевого соединения между виртуальными машинами не менее 20 Гб/с.

3) обеспечить блочное хранение данных объемом 100ТБ доступного дискового пространства на базе интерфейса iSCSI и сервис объектного хранения данных, в котором доступно суммарно 60ТБ.

4) Скорость сетевого соединения между виртуальными машинами и системой хранения данных 10 Гбит/с.

Уровень предоставляемых машин соответствует уровню Amazon EC2 M4, а по отдельным параметрам (скорость сетевого соединения между виртуальными машинами, скорость сетевого соединения с хранилищем) превосходит.

На основе этого стенда реализована возможность автоматического развертывания виртуальных кластеров обработки данных с предустановленным и настроенным ПО Apache Spark и Apache Hadoop для обработки данных в задачах механики сплошной среды и других предметных областях. 

Наиболее близким к решению, предлагаемому в рамках работ, является Cloudera Manager — проприетарная разработка
компании Cloudera. Данное программное решение позволяет разворачивать на кластере утилиты, относящиеся к дистрибутиву
CDH от компании Cloudera. Однако сценарии, предложенные в указанном программном продукте, подразумевают только
базовое использование (для целей разработки) и не содержат каких-либо оптимизаций, основанных на знаниях о
вычислительной среде. Также не производится никаких проверок, связанных с оптимальностью выделяемых ресурсов. Кроме того в этом инструменте отсутствует поддержка для версий Apache Spark начиная с 1.4.

Разработанная методика предназначена для постобработки данных с использованием Apache Spark, полученных при решении задач механики сплошной среды, с использованием численного моделирования. Методика ориентирована на 2 основных направления:
а)    Анализ турбулентных течений и выделение когерентных структур;
б)    Расчет шума с использованием акустической аналогии.

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

 

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

Для задачи расчета шума механизации крыла летательного аппарата 30P30N был выполнен газодинамический расчет с использованием OpenFOAM и проведен расчет шума по акустической аналогии Ффокс-Вильямса и Хоукингса с использованием Apache Spark.

Аналогичные работы проводится в Center of Turbelence Research (CTR) в университете Стенфорда. Отличие заключается в том, что в своих работах исследователи из CTR используют Apache Hadoop, производительность которого уступает предложенному решению на Apache Spark.

Практическая значимость исследования
В настоящем исследовании получены результаты в области оптимизации скорости доступа к сетевым файловым хранилищам и обработки данных с использованием виртуализации поверх узлов хранения. Полученные результаты могут быть непосредственно использованы при решении задач обработки данных в различных предметных областях.
Подход, примененный при разработке стенда и программной реализации разработанных алгоритмов, может быть использован при разработке и построении облачных инфраструктур на основе OpenStack, в частности при построении инфраструктуры для виртуальных кластеров обработки данных.
Внедрение результатов, полученных в области обработки больших объемов данных в задачах механики сплошной среды, позволит:
1) Снизить расходы на проведение анализа когерентных структур в потоках жидкостей и газа и повысить качество прогноза их
развития;
2) Снизить время обработки данных в аэроакустических расчетах при решении задач аэродинамики и аэроакустики;
3) Повысить производительность труда междисциплинарных групп специалистов при решении наукоемких научно-
исследовательских и прикладных задач.
Еще одним важным направлением использования результатов исследования является обеспечение эффективной поддержки учебного процесса в рамках научно-образовательных курсов на профильных кафедрах Университетов по специальностям, связанных с вопросами
системного программирования, численного моделирования, компиляторных технологий и других близких специальностях.