КаталогИндекс раздела

          

Архитектура NUMA-Q изнутри

Terry Mason, Darren Thomas
IBM Gold Consultant Program
IBM EESC in Weybridge, U.K.

Inside the NUMA-Q Architecture
Опубликовано в: DB2 Magazine, quarter 4, 2000, pp. 57-59.

Заинтересованность в архитектуре NUMA-Q растет как грибы по мере того, как компании стремятся к повышению производительности и увеличению возможности серверов для поддержки растущих требований электронного бизнеса, управления отношениями с потребителями и планирования ресурсов предприятия. NUMA-Q, операционная среда класса data center на базе платформы Intel, теперь вдобавок к базам данных Informix и Oracle поддерживает DB2 Universal Database, начиная с v.6. NUMA-Q с DB2 UDB v.7 недавно достигла высших показателей производительности в категории 300 GB по тестам TPC-H - по результатам, полученным из Transaction Processing Performance Council (TPC) 3 мая 2000г. (См. www.tpc.org/new_result/h-ttpperf.idc). Такой уровень производительности в сочетании с масштабируемостью и простотой в программировании является движущей силой растущего интереса к NUMA-Q. Каркас NUMACenter, который мы вкратце рассмотрим ниже, предлагает и другие преимущества: он позволяет компаниям совмещать серверы NUMA-Q с другим оборудованием IBM для обеспечения исчерпывающего соответствия требованиям их информационных технологий. В этой статье мы рассмотрим DB2 в среде NUMA-Q. В другой статье "DB2 с NUMA-Q - быстрый старт", доступной на www.db2mag.com, рассматривается быстрый способ, как сделать DB2 доступной в системах NUMA-Q.

Архитектура промышленного сервера

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

До сих пор компании в обычно выбирали между двумя архитектурными вариантами:

  1. Симметричная мультипроцессорная архитектура (symmetric multiprocessing - SMP) или "все используется совместно". SMP обеспечивает производительность путем предоставления возможности многим ЦП выполнять свои задачи параллельно. SMP - популярный выбор потому, что она содействует совместному использованию данных и легко поддерживает многих пользователей.
  2. Обработка с массовым параллелизмом (massively parallel processing - MPP) или "ничего не используется совместно". Эта модель обеспечивает высокую производительность для процессов складирования данных путем разделения данных между многими процессами в назначенной каждому из них памяти и разделяет экземпляры операционных систем.

NUMA-Q предлагает третий подход, который комбинирует в себе элементы SMP и MPP. Фирма Sequent Corp. (ныне входящая в IBM) ввела кеш-когерентный неединообразный доступ к памяти (CC NUMA) под названием NUMA-Q в 1996г. Сейчас, в своем третьем поколении, NUMA-Q предлагает такую же легкость в программировании, как SMP архитектуры, и такую же производительность, как MPP архитектуры.

Для того, чтобы получить наивысшую скорость вычислений, NUMA-Q формирует в "четверки" (quad), ограничивая количество процессоров, соединенных одной шиной, четырьмя (рис.1). Тесная связь с высокобыстродействующей памятью и очень короткая шина с высокой пропускной способностью максимизирует общую производительность такого устройства. Множество таких "четверок" используются в качестве строительных блоков для формирования одного узла NUMA-Q, на котором выполняется один экземпляр операционной системы. Эти "четверки" совместно используют общесистемную память через IQ-связь.

Рис.1. Архитектура NUMA-Q

IQ-связь, имеющаяся в каждой "четверке" - мост, соединяющий все внутренние SMP шины "точка в точку" на основе протокола SCI. Такая конфигурация обеспечивает гораздо более короткий путь для сигналов обращения к памяти, чем общепринятая архитектура общей шины, которая требует, чтобы сигнал прошел весь путь по шине. Подавляющее большинство обращений к памяти при выполнении любой транзакции происходит внутри самой "четверки". Архитектура, таким образом, легко масштабируется добавлением новых четверок с увеличением числа ЦП, памяти и пропускной способности ввода-вывода. Для обеспечения совместного использования дисков любое устройство ввода-вывода доступно для любой "четверки" через быстродействующий переключатель ввода-вывода.

Наислабейшим местом в производительности MPP-конфигураций является связь между серверами разделов баз данных, которая может требовать передачи больших объемов данных между серверами при обработке сложных запросов. NUMA-Q использует для этих целей архитектуру IQ-связи, IQ-связь в сочетании с высоким использованием параллелизма в DB2 повышает производительность.

Промышленная поддержка для DB2 на NUMA-Q

Архитектура NUMA-Q позволяет реализовать некоторые свойства операционных систем промышленного класса, такие как: логическое разделение, управление рабочей нагрузкой, динамическое конфигурирование дисковой памяти и управление центром данных из единой точки. Давайте подробнее рассмотрим каждое из этих свойств и связанные с ними преимущества.

Логическое разделение: Application Region Manager (ARM). Программное разделение в DYNIX/ptx позволяет вам разделить единственный экземпляр операционной системы на отдельные программные разделы, называемые областями (region). В зависимости от требований производительности, региону могут быть выделены системные ресурсы, такие как ЦП, память и таблица процессов, выделенные ресурсы могут охватывать одну или несколько "четверок".

Функции ARM позволяют разнообразить рабочую нагрузке, выполняющуюся в экземплярах операционной системы. Например, в единственной системе запросы к складу данных DB2 могут выполняться в собственной области и не оказывать влияния на производительность приложения оперативной обработки транзакций DB2, выполняющегося в другой области.

Эти области могут динамически реконфигурироваться, следовательно, если в какой-то день требования оперативной обработки транзакций выше, то ресурсы могут быть заимствованы от области склада данных. Заимствование может происходить в интерактивном режиме или по каким-то заранее определенным правилам (например, если в области A загрузка процессора достигает 85% или больше, то заимствуются ресурсы у области B).

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

Планирование дисковой памяти: IBM Storage Volume Manager (ptx/SVM). Программное обеспечение ptx/SVM обеспечивает расширенное управление дисками и повышает готовность системы. Оно позволяет конфигурировать физические диски как логические устройства, чем обеспечивается производительность и надежность. Файловые системы, поддерживающие базы данных DB2, могут объединять физические дисковые устройства, уменьшая время поиска и обеспечивая "вырезание" части диска, сцепление дисков и оперативное управление дисками. SVM позволяет работать с дисковыми томами как с файловыми системами или как со строчными устройствами, что делает его ключевым инструментом в повышении производительности ввода-вывода в системе. Дисководы под управлением ptx/SVM могут динамически синхронизироваться с одним или несколькими "зеркалами", независимо от дисковых контроллеров, без выключения системы.

Программное обеспечение ptx/SVM позволяет производить замену в ходе работы дисков и лент на периферийных устройствах NUMA-Q. Устройства могут быть выключены, заменены и затем восстановлены, пока система продолжает работать. Способность зеркалирования дисков в ptx/SVM сокращает время восстановления, обычно требуемое при программных и аппаратных ошибках в дисковых подсистемах. Поддержка избыточных загрузочных дисков и способность дублировать корень и менять устройства также минимизирует время восстановления системы.

Единая точка управления: NUMACenter. NUMACenter - многоуровневая вычислительная система, которая интегрирует сервер баз данных DYNIX/ptx DB2 с серверами Microsoft Windows NT или Windows 2000 в единую среду. NUMACenter предоставляет масштабируемую производительность, высокую готовность и управляемость центра данных для удовлетворения требований, предъявляемых к промышленным серверам, поддерживающим популярные технологии электронного бизнеса (такие как WebSphere) и потребности пользователей для глобального, безостановочного доступа к приложениям и сервисам. В сложной промышленной среде технология NUMACenter упрощает управление путем предоставления единой точки управления системной нагрузкой и системной инфраструктурой, включая ресурсы ЦП, ресурсы памяти и ресурсы резервирования.

Рис.2. Конфигурация NUMACenter

Вдобавок NUMACenter поддерживает сеть областей памяти, многопутевой ввод-вывод и Enterprise Storage Server, раньше называвшийся Shark.

Три свойства, которые мы сейчас обсудили - логическое разделение для управления загрузкой, динамическое реконфигурирование дисковой памяти и единая точка управления центром данных - дают DB2 возможность получить крепкую промышленную поддержку на NUMA-Q

Гибкость и сила

Как показывает тест TPC, среда NUMA-Q является крепкой, гибкой и экономичной платформой для выполнения приложений DB2. И начать работу по внедрению DB2 в NUMA-Q очень легко. Как показано в упомянутой выше статье, даже включая время на обучение и исследования, мы смогли завершить проект "быстрого старта" всего за 4 недели, имея одного специалиста по DB2 и двух (частично занятых) специалистов по ptx, даже без поддержки от IBM. Мы надеемся, что большинство компаний смогут внедрить такой проект меньше, чем за две недели.


КаталогИндекс раздела