Модель распределенной гетерогенной мультиоблачной вычислительной системы и платформы автоматизации распределенных вычислений для обработки больших данных
Структура и взаимоотношения элементов схемы, логические уровни для детализации модели. Описание структуры одного сегмента, поверх которой разворачивается комплекс приложений Hadoop. Изучение работы платформы автоматизации обработки больших данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 21.12.2019 |
Размер файла | 904,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Модель распределенной гетерогенной мультиоблачной вычислительной системы и платформы автоматизации распределенных вычислений для обработки больших данных
Ушаков Ю.А.
В данной работе будет рассматриваться структурная модель современного центра обработки данных (ЦОД), построенного по иерархической модели, с учетом последних тенденций по построению таких сетей: сети без границ (Borderless), применение VXLAN, виртуализация сетевого оборудования, программное управление хранилищами и сетями.
Поскольку с внедрением виртуализации повсеместно стали виртуализироваться маршрутизаторы, брандмауэры, шлюзы VPN, коммутаторы, то в работе для всех описываемых узловых элементов будет введена ссылка на родительский граф/узел для возможности описания вложенных систем (например, шлюз в контейнере в виртуальной машине на сервере). Для сетевой связности информация о вложенности требуется для описания каналов связи по причине того, что множество соединений с виртуальными устройствами будет проходить через одно и то же физическое подключение со своими ограничениями, в то же время для коммутации и маршрутизации информация о вложенности не требуется.
Для каждого элемента структурной модели будет использован уникальный однобуквенный индекс , для краткости введем обозначение - максимальное значение.
- s - индекс сегмента Segment;
- p - индекс провайдера ISP;
- k - индекс сетевого узла любого типа Node, Switch, Storage;
- d - индекс ЦОД Datacenter;
- e - индекс сетевого интерфейса p;
- l - индекс связи Links, ExtLinks.
Для упрощения описания вложенных элементов будем использовать объектный метод представления структуры через указатель на родительский элемент, например , для краткости может использоваться верхний набор индексов в порядке иерархии вложенности, например, означает, что сетевой интерфейс расположен в контейнере c, который расположен в узле i, который расположен в сегменте k, который находится в ЦОД s. Каждый индекс в схеме является глобальным и может быть использован, как глобальный индекс множества для прямого доступа к элементу.
Для схемы всей сети будут верными следующие утверждения:
- вся схема, относящаяся к сетевой инфраструктуре будет разбита по уровням OSI: 1 (физический), 2 (канальный), 3 (сетевой), 4 (транспортный) и 7 (приложения). Это позволит согласовать видение сети с традиционными схемами и более гибко подходить к описанию сложных структур;
- каждое сетевое устройство будет представлено как элемент Node, для дополнительного описания которого используются отдельные расширяемые классы устройств (например, Storage для описания особенностей сетевых хранилищ или Switch для описания коммутатора);
- каждое сетевое устройство имеет хотя бы один сетевой интерфейс физического уровня, в том числе виртуальные и подинтерфейсы p;
- каждый сетевой интерфейс должен быть соединен с другим сетевым интерфейсом через канал связи Link, иначе он считается отключенным;
- виртуальные каналы связи VirtualLink также должны начинаться и заканчиваться в сетевых интерфейсах, но могут иметь дополнительную привязку по 2 и 3 уровням интерфейсов;
- путь Path - это набор пар интерфейсов, опционально дополненных интерфейсами верхних уровней, вплоть до 4 (транспортного) - для потока приложения, балансировщиков, прокси.
Пример описания взаимосвязи и зависимости элементов сети показан на рисунке 1.
Рисунок 1 - Структура и взаимоотношения элементов схемы
Структура распределенной мультиоблачной системы может быть определена в виде ориентированного мультиграфа вида:
Формула(1)
где вершины - множество отдельных территориально разделенных облачных сегментов (автономных систем, ЦОД), связанных между собой через глобальные сети;
- дуги, представляющие направленные связи (VPN каналы) между сегментами через глобальные сети, , где - порты устройств, осуществляющих соединение между разными ЦОД и провайдерами или напрямую между разными ЦОД виртуальным каналом (VirtualLink).
Для дальнейшей детализации схемы необходимо провести несколько шагов декомпозиции физической связности:
- до уровня соединений между ЦОД;
- до уровня иерархической сетевой модели ЦОД;
- до уровня сегмента ЦОД;
- до уровня конечных сетевых устройств.
После этого необходимо добавить логические уровни для детализации модели:
- канальный уровень, содержащий логику коммутации, виртуальные сети VLAN, VPLS, мосты, коммутаторы L2, очереди, QoS, механизмы multicast, предотвращения петель, безопасности портов, агрегации;
- сетевой уровень, содержащий маршрутизацию, фильтрацию, преобразование адресов;
- транспортный уровень, содержащий фильтрацию, преобразование адресов;
- уровень приложения, содержащий приложения, которые работают с сетью.
Все задачи обеспечения логики работы возлагаются на уровень приложений, остальные уровни лишь содержат необходимую информацию для реализации технологий и протоколов.
Поэтому необходимо представлять подробную схему соединений на каждом уровне декомпозиции. На рисунке 2 показана общая схема соединения ЦОД с указанием некоторых элементов, для верхнего ЦОД указаны сетевые интерфейсы.
Рисунок 2 - Схема соединений верхнего уровня
Центры обработки данных с помощью граничных VPN шлюзов соединяются друг с другом. Каждая дуга соответствует маршруту между граничными шлюзами двух различных ЦОД. Шлюзы присоединяются к сети провайдеров чаще всего через коммутатор с поддержкой VLAN, в который подключается канал провайдера. Часто один и тот же коммутатор, но разные VLAN и/или порты используются для подключения и канала провайдера и канала в сеть ЦОД.
Внутренняя структура ЦОД может быть представлена в виде аналогичного мультиграфа:
(2)
где вершины - множество отдельных сегментов (автономных систем, внутренних подсетей, VLAN, VXLAN и других логических сегментов сети) ЦОД, связанных между собой через уровень распределения или ядра сети;
- дуги, представляющие направленные связи между сегментами. Это результат маршрутизации внутренних сегментов, куда входит, в том числе, маршрутизация BGP, OSPF и L3 коммутация. Программно-конфигурируемая передача данных будет отображаться в L3 коммутацию.
Сегмент вычислительного ЦОД может быть описан в форме взвешенного неориентированного мультиграфа:
(3)
где - вершины, представляющие собой разбиение множеств всех сетевых устройств;
- ребра мультиграфа, представляющие собой двусторонние сетевые связи между портами i и j устройств k1 и k2 сети, причем допускается наличие нескольких параллельных связей между двумя устройствами через разные пары портов или . Поскольку речь идет о конвергентных сетях, связи подсистем хранения также включены в эту структуру;
- множество коммутаторов, в том числе виртуальных;
- множество контролеров программно-конфигурируемой сети системы;
- множество граничных шлюзов,
- множество хранилищ данных;
- множество серверов;
Логическую структуру сегмента ЦОД можно представить по уровням OSI отдельно:
- уровень 2 (L2) для программно-конфигурируемой сети, VLAN и коммутации;
- уровень 3 (L3) для маршрутизации.
Каждый сетевой порт узла имеет следующие параметры и динамические характеристики:
(4)
где - максимальная пропускная способность передачи порта в кбит/с;
- максимальная пропускная способность передачи порта в кбит/с;
- тип интерфейса;
- носитель;
- протокол L1.
- удельная загрузка исходящей связи порта в момент времени ;
Если порт используется как канальный, то будет присутствовать сущность L2port для хранения параметров L2:
(5)
где - MAC-адрес;
- набор очередей, ассоциированных с портом, и их состояния в момент времени ;
- набор допустимых для интерфейса VLAN, в случае порта доступа - один, со временем могут меняться, особенно в виртуальных средах.
обозначает набор очередей пакетов, ассоциированных с конкретным портом вычислительного узла . Они используются, чтобы обеспечить согласно QoS минимальную гарантированную пропускную способность и максимальную гарантированную задержку для заданных сетевых связей.
С каждой подобной очередью связаны следующие параметры и динамические характеристики:
(6)
где представляет собой минимальную пропускную способность (в Кб/с);
- максимальная задержка для соответствующей очереди порта (в мкс), которая была установлена механизмом обеспечения QoS;
- тип очереди;
{params} - набор параметров, для каждого типа очереди свой набор, общим является размер очереди.
Виртуальная сеть канального уровня определяется как набор интерфейсов на канальном уровне:
(7)
Openflow потоки данных внутри сегмента ЦОД можно представить в виде взвешенного неориентированного мультиграфа такого вида:
(8)
- набор потоков, появившихся в сегменте к моменту времени .
Поток может быть описан следующим образом:
Формула (9)
где - IP-адрес источника потока;
- MAC-адрес источника потока;
- IP-адрес получателя потока;
-MAC-адрес получателя потока;
- время, на которое установлена запись о потоке;
- минимальная гарантированная пропускная способность потока;
- максимальная гарантированная задержка потока;
- динамическая характеристика пути на момент времени , по которому спланирован поток;
- предыдущий момент времени, когда обрабатывался хотя бы один пакет потока;
- состояние потока на момент времени .
Путь на соответствующем уровне модели (L1, L2, L3) может быть определен в виде совокупности портов:
(10)
(11)
(12)
Итоговый путь может содержать объединение всех видов путей или только некоторые, при этом если используется L2Path, то L1Path можно получить через наследование L2port от p:
(13)
Такой подход в случае, если два сетевых устройства имеют несколько параллельных связей, позволяет указывать конкретную связь, входящую в путь. Если получатель и отправитель потока находятся внутри одного сегмента, то путь полностью проходит внутри него. Если получатель потока находится в другом сегменте, то путь ведет к одному из граничных шлюзов, имеющих префикс целевого сегмента. В случае, когда отправитель потока находится в другом сегменте, то путь прокладывается от граничного шлюза к получателю.
Каждый вычислительный узел характеризуется следующими параметрами и динамическими характеристиками:
(14)
где - размер его оперативной памяти в мегабайтах;
- размер его дисковой памяти в мегабайтах;
- количество его вычислительных ядер;
- величина их производительности относительно самого медленного ядра во всем распределенном ЦОД;
- множество сетевых портов;
- удельная доля загруженности оперативной памяти вычислительного узла в момент времени t;
- удельная доля загруженности дисковой памяти вычислительного узла в момент времени ;
- вектор загруженностей каждого из вычислительных ядер узла в момент времени , причем ;
- состояние вычислительного узла в момент времени .
Все вычислительные узлы являются SMP-узлами, состоящими из однотипных многоядерных процессоров. Вычислительные ядра могут относиться как к отдельным процессорам (по одному ядру на каждом), так и к нескольким многоядерным процессорам. Они рассматриваются, как единое множество равноправных и симметричных вычислительных ядер узла . Данные ядра разделяют общую оперативную память размера и дисковую память размера , а также способны обмениваться данными с другими вычислительными узлами через сетевую подсистему.
Тип сетевого узла Server имеет особенность - возможность запуска виртуальных машин, контейнеров, контейнеров в виртуальных машинах, которые являются сетевыми узлами и, соответственно, имеют сетевые интерфейсы. Для работы виртуальных машин требуются виртуальные коммутаторы, которые также являются сетевыми узлами и имеют интерфейсы. Серверы содержат компоненты (приложения) для доступа к системам хранения, оркестраторы, контроллеры. Эти элементы будут использованы при описании конкретных приложений или систем доступа. На рисунке 3 показан пример схемы сервера.
Рисунок 3 - Пример схемы сервера
Сетевые хранилища содержат образы экземпляров виртуальных машин, вычислительные задачи, базы данных приложений, а также инфраструктурные компоненты вычислительного облака. В системах обработки больших данных обычно содержатся элементы HDFS.
Каждое хранилище сегмента имеет следующие параметры и динамические характеристики в дополнении к Node:
Формула
где - максимальный объем хранилища в килобайтах;
- доступный объем хранилища в килобайтах в момент времени ;
- средняя установившаяся к моменту времени скорость чтения данных;
- средняя установившаяся к моменту времени скорость записи данных.
Коммутаторы L3 Switch имеют в дополнении к модели узла компоненты очередей, различных фильтров, интерфейсы всех видов, в том числе вложенные (например, логический интерфейс для задания адреса на VLAN). Схема такого коммутатора показана на рисунке 4.
Рисунок 4 - Пример схемы коммутатора
Разработанная структурная модель распределённого ЦОД позволяет формализовать структуру нескольких ЦОД в виде ориентированного взвешенного мультиграфа его сегментов, каждый сегмент определяется в виде неориентированного взвешенного мультиграфа сетевых устройств, к которым относятся: вычислительные узлы, коммутаторы, контроллеры облака, граничные шлюзы, балансировщики коммутаторов и сетевые хранилища.
Для реализации автоматизации распределенных вычислений для обработки больших данных необходимо описать структуру одного сегмента, поверх которой разворачивается комплекс приложений Hadoop, поверх которого работает диспетчер YARN, с которым взаимодействует фреймворк Spark, в котором реализуется конкретный функционал. Данные хранятся в вычислительных узлах с системой хранения, поверх которой реализовано хранилище HDFS, поверх которой используется один из совместимых способов хранения данных, например HBase или чистая система HDFS.
На рисунке 5 показана схема соединений сегмента ЦОД. Для реализации Hadoop важно то, что в ней выделены коммутаторы стоек TOR(Top Of Rack) и их соединение с основной сетью и системой хранения. В большинстве случаев недорогие, но конвергентные решения используют соединения iSCSI с системой хранения, более производительные системы используют FC. hadoop автоматизация детализация приложение
Рисунок 5 - Структура сегмента ЦОД
Сегмент представлен стандартной архитектурой Ядро-Распределение-Доступ для ЦОД, в нем содержится еще подсистема хранения, а уровень доступа использует минимум два соединения к каждому серверу.
На рисунке 6 показана схема работы платформы обработки больших данных. На нижнем уровне располагаются подсистема хранения и подсистема выполнения, размещенная на узлах. Подсистемой хранения управляет NameNode и система размещения данных HDFS. Узлы хранения могут быть совмещены с узлами выполнения, но это не рекомендуется для больших данных из-за высоких накладных расходов на работу системы хранения. Узлы выполнения имеют запущенный сервис-мастер, который при получении задания на размещение в контейнер приложения обращается к ресурсному менеджеру для выделения ресурсов на узле, и запускает приложение. Прямой доступ к системе хранения обеспечивает более высокую производительность, для приложений, поддерживающих WebHDFS, имеется отдельный модуль взаимодействия через REST API.
Ключевым элементом для взаимодействия всех внутренних компонентов системы является система централизованного хранения и взаимодействия ZooKeeper, через которую компоненты находят друг друга, считывают конфигурацию и синхронизируются.
Рисунок 6 - Платформа автоматизации обработки больших данных
Таким образом, в рамках статьи разработана комплексная модель для исследования работы распределенных систем обработки больших данных. Исследование выполнено при финансовой поддержке РФФИ в рамках научных проектов № 18-07-01446, 18-47-560017, и 18-37-00460.
Размещено на Allbest.ru
Подобные документы
Структура автомата для сбора данных. Программы, реализующие заданный пользователем алгоритм автоматизации процедуры обработки журнальных данных. Описание микропроцессорной системы, ее упрощенная модель, система команд, блок-схема алгоритма обработки.
контрольная работа [65,8 K], добавлен 14.11.2010Обработка текстовых данных, хранящихся в файле. Задачи и алгоритмы обработки больших массивов действительных и натуральных чисел. Практические задачи по алгоритмам обработки данных. Решение задачи о пяти ферзях. Программа, которая реализует сортировку Шел
курсовая работа [29,2 K], добавлен 09.02.2011Разработка базы данных учета и хранения заявок пользователя. Создание программного средства на основе клиент/серверной технологии. Описание возможностей платформы Tandem Framework. Апробация программы автоматизации процессов подачи и обработки заявок.
дипломная работа [3,6 M], добавлен 08.03.2013Принципы построения, действия и проектирования средств автоматизации математических вычислений и обработки информации. Моделирование работы принципиальной цифровой схемы "Тринадцатиразрядный логический регистр со сдвигом влево на базе D-триггера".
курсовая работа [278,4 K], добавлен 03.06.2017Обеспечение устойчивости грузоподъемных машин - важнейшее условие при разработке систем управления их рабочими операциями. Физическая модель платформы. Краткие технические характеристики элементов. Схема автоматизации и электрическая принципиальная схема.
курсовая работа [4,2 M], добавлен 09.12.2013Описание платформы Deductor, ее назначение. Организационная структура аналитической платформы Deductor, состав модулей. Принципы работы программы, импорт и экспорт данных. Визуализация информации, сценарная последовательность и мастер обработки.
курсовая работа [3,7 M], добавлен 19.04.2014Системы управления базами данных и их использование для решения задач автоматизации предприятия. Разработка информационного и программного обеспечения для автоматизации хранения и обработки информации при организации работы агропромышленного предприятия.
курсовая работа [607,1 K], добавлен 07.05.2011Классификация информационных систем, назначение ИС с Web-доступом. Анализ узких мест работы учреждения, нуждающихся в автоматизации. Выбор платформы разработки, физической и логической модели данных, настройка и тестирование информационной системы.
дипломная работа [5,2 M], добавлен 10.09.2013Системно-комплексный анализ выбранного объекта автоматизации. Структура пользовательского интерфейса автоматизированной системы. Функциональный аспект информационной страты объекта. Концептуальная модель базы данных. Нормализация полученных отношений.
курсовая работа [64,9 K], добавлен 25.02.2014Проблемы, связанные с продуктивным распределением и систематизированием больших потоков информации. Основные виды распределенных баз данных, анализ процессов их функционирования. Стратегии распределения данных. Распределение сетевого справочника данных.
курсовая работа [397,5 K], добавлен 09.08.2015