Системы МРР

Оценить
(1 голос)

Системы МРР (massively parallel processor - процессоров с массовым параллелизмом) построены на независимых узлах, содержащих процессоры, память и устройства ввода/вывода, такие как диски и сети. Узлы могут быть либо компактно объединены в кластеры и соединены посредством коммутатора, как в системе IBM SP, либо свободно объединены в кластеры и соединены при этом посредством стандартных сетей, как это реализовано в схеме кластеров Linux Beowulf.

Отличие систем МРР от систем NUMA состоит в том, что их узлы не способны производить непосредственные обращения к памяти и устройствам всех остальных

узлов. Поскольку совместное использование устройств и памяти исключено, то доступ к дистанционным узлам производится косвенным образом через внутреннее системное соединение. По этой причине архитектура МРР также именуется архитектурой, не предусматривающей совместное использование.

Другое отличие от систем SMP и NUMA состоит в том, что каждый узел содержит независимый экземпляр операционной системы. Соответственно, системное администрирование систем МРР намного сложнее.

В случае архитектур МРР намного сложнее достичь параллелизма приложений, чем в случае SMP или NUMA, если только приложения не будут очень точно разбиты на подзадачи с учетом особенностей внутренней архитектуры. Соответственно, параллелизм в системах МРР, как правило, осуществляется более грубо. Базы данных в системах МРР обычно разделяются по вертикали для разбивки строк данных по различным узлам. Достичь эффективности большинству приложений OLTP (Online Transaction Processing - оперативной обработки транзакций) сложно, поэтому для развертывания приложений OLTP редко применяются архитектуры МРР.

Приложения DSS наиболее пригодны для архитектур, не предусматривающих совместное использование, при условии, что данные могут быть без труда разделены среди множества узлов. Сканирование страниц можно эффективно перепоручать узлам, содержащим таблицы для просмотра; процессы сканирования могут производиться в параллельном режиме на всех узлах, сокращая время выполнения сканирования.

К сожалению, операции объединения могут оказаться малоэффективными. Предположим, Таблица А содержит 800 строк, которые необходимо присоединить к 2000 строк Таблицы В в системе МРР, содержащей 8 узлов. Данные таблицы будут разделены приблизительно поровну между восемью узлами, поэтому в каждом узле 100 .строк ТаблицыА необходимо объединить с 250 строками Таблицы В. Если только объединения совместно не размещены, данные обеих таблиц сначала будут разделены по столбцу объединения, а затем будут перемещаться между узлами для выполнения соединения. Обычно данные, необходимые для соединения, будут экспортироваться из таблицы с меньшим числом данных. В среднем только одна восьмая часть от 100 строк Таблицы А узла I будет объединена с 250 строками Таблицы Б того же узла. Оставшиеся семь восьмых от числа строк Таблицы А узла 1 будут необходимы остальным семи узлам; для завершения объединения эквивалентное количество строк необходимо будет переместить на узел 1 из остальных узлов.

Хотя из диаграммы это не столь очевидно, однако пересылка данных между узлами происходит по внутреннему соединению.

Количество перемещаемых данных
Системы CLMP
SMP-системы
Базы данных, совместно использующие диски в SMP-системах
Базы данных в SMP, не предусматривающие совместное использование

Добавить комментарий


Защитный код
Обновить