В числе альтернативных SMP-технологий можно назвать архитектуры NUMA (Non-Uniform Memory Access), системы с массивной параллельной обработкой и кластеризацию.
SMP-серверы позволяют относительно просто и недорого задействовать совокупную мощность нескольких процессоров. Пользователь может начать с небольшого их числа и постепенно масштабировать систему, просто добавляя новые процессоры.
На SMP-системах может работать одновременно по нескольку приложений; все процессоры при этом используют единый пул памяти. При добавлении процессоров не требуется модификации ни базы данных, ни приложений.
Самое слабое звено такой системы - это шина памяти. По мере увеличения числа процессоров возрастает нагрузка на нее. Со временем это приводит к резкому снижению пропускной способности системы.
"Это можно сравнить с автострадой. Пока число машин на дороге не превышает определенного порога, все нормально. Но случись стихийный наплыв автомобилей в одном месте, как сразу же образуется пробка", - объясняет Кен Рудин, президент консультационного агентства по хранилищам данных Emergent.
Одним из способов устранения описанного недостатка является кластеризация систем с целью повышения их общей производительности и работоспособности.
Например, связав друг с другом два 16-процессорных SMP-сервера, или "узла", можно получить кластерную 32-процессорную систему, отличающуюся очень высокой производительностью. Кроме того, она будет стоить меньше, чем простая 32-процессорная система.
Благодаря кластеризации максимальное число процессоров в системе может быть значительно больше, чем в обычных SMP-серверах. DEC уже много лет выпускает VMS-кластеры, в которые можно связывать десятки узлов, любой из которых может быть SMP-сервером.
Каждый новый узел способен значительно повысить производительность системы, по крайней мере в теории. Однако все узлы имеют свой пул памяти и системную шину, поэтому при разработке приложений следует учитывать необходимость разделения нагрузки между различными узлами кластера.
Таким образом, производительность растет при кластеризации нелинейно, а пропускная способность каналов, соединяющих узлы, зачастую оказывается слишком низкой, чтобы сохранить общий прирост. Для преодоления этого недостатка компании Digital Equipment и Tandem предлагают специализированные технологии - Memory Channel Interconnect и ServerNet соответственно.
По мнению обозревателей, в большинстве случаев кластеризация используется все-таки не для повышения производительности, а из-за своей высокой работоспособности. При наличии двух и более связанных узлов, в случае если в одном из них происходит сбой, нагрузка автоматически переносится на другие, что гарантирует высокую работоспособность аппаратного и программного обеспечения.
NUMA - это нечто вроде гибрида SMP и кластеризации. Все процессоры сервера объединяются в небольшие группы. Например, 16-процессорный сервер можно превратиться в кластер из четырех узлов по четыре процессора.
Этот метод позволяет устанавливать в одну систему большее число процессоров, чем при SMP. Например, серверы NUMA компании Sequent способны поддерживать до 252 процессоров Intel.
Как и в случае с SMP, при увеличении числа процессоров нет необходимости проводить модификацию приложений.
NUMA не допускает перегрузки шины памяти, подразделяя ее на несколько малых шин. Процессоры каждого узла общаются друг с другом посредством этих шин. Узлы же связаны между собой с помощью технологий высокоскоростного соединения компонентов.
"Преимущество NUMA в том, что она не заставляет переходить на новую модель программирования. Приложения для SMP будут работать на NUMA без изменений", - говорит Кевин Либерт, директор по маркетингу NCR.
Проблема в том, что NUMA еще не столь развита, как SMP. Успех NUMA зависит от того, насколько быстро каждый из узлов системы будет передавать данные другим узлам.
По мнению обозревателей, добиться производительности, близкой к линейной, скорее всего можно при помощи систем с массивной параллельной обработкой (MPP). Они стоят гораздо дороже (минимальная цена некоторых - 500 тыс. долл.; для сравнения, начальная стоимость Sequent NUMA-Q 2000 - 240 тыс. долл.) и являются более сложными в управлении, чем другие архитектуры. Зато MPP предоставляет возможность практически неограниченного увеличения числа процессоров в системе.
Проблема перегрузки шины и каналов соединения компонентов решается в MPP методом "грубой силы" - с помощью технологии сверхбыстрой коммутации.
В MPP-систему можно установить сотни, если не тысячи процессоров. Каждый из них имеет свой пул памяти и собственную шину. Любой процессор способен выполнять собственную задачу и общаться с другими посредством специализированных каналов связи и коммутаторов.
Однако для работы на MPP-системах приложения и базы данных нуждаются в сильной модификации.
Основные поставщики
|
|
|
|
|
|
|
|
АППАРАТНОЕ ОБЕСПЕЧЕНИЕ ХРАНИЛИЩА ДАННЫХ
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Системы NUMA на пути к пользователю
Производители мощных серверов начали выпуск систем, использующих технологию NUMA. Потенциальные потребители высоко оценивают перспективы, которые сулит использование таких систем, однако вместе с тем высказывают опасения, что при работе с ними могут возникнуть сложности с поддержкой приложений, надежностью и производительностью.
Компания Sequent Computer Systems возлагает большие надежды на версию West Coast архитектуры NUMA-Q. Как полагают в компании, данная архитектура может сыграть роль альтернативы мэйнфрейму и полностью вытеснить машины с массовым параллелизмом (massively parallel processing - MPP).
Считается, что большой вклад в разработку недавно появившейся технологии NUMA внесли как компания Sequent, так и ее конкурент - Data General. Появление этой технологии обеспечит масштабируемость не только на уровнях традиционных серверов c симметричной многопроцессорной архитектурой (symmetric multiprocessing, SMP), но и вне этих уровней.
Компании Sun Microsystems, Hewlett-Packard и Digital используют технологию NUMA для построения крупных SMP-серверов. При этом еще до появления систем на рынке компании надеются устранить задержки, возникающие при организации переменного доступа к памяти.
Технология NUMA позволит добиться лучшей масштабируемости и более высокой производительности приложений для работы с базами данных, однако многие потребители пока не решаются использовать эту технологию на своих центрах обработки данных, поскольку им еще не вполне ясно, каким именно образом можно будет организовать работу с упомянутыми приложениями и как перенести их на данную платформу.
Представители компании Sequent заверили, что архитектура NUMA позволит работать со всеми приложениями, причем в них не придется вносить никаких изменений; что же касается операционных систем, то для того, чтобы они могли работать с системой или кластером, использующими NUMA, придется соответствующим образом переписать их. Технология NUMA будет поддерживаться всеми основными производителями бизнес-ПО, в том числе компаниями Oracle, Informix, SAP, Baan и PeopleSoft, хотя пока только продукты Oracle приспособлены к работе с архитектурой NUMA компании Sequent.
Кластеры NUMA отличаются от систем МРР тем, что они работают с единственным экземпляром записи операционной системы и приложений. Это, возможно, позволит снизить расходы на лицензирование серверных приложений, но в то же время приводит к тому, что в продукте возникает единственная точка сбоя.
К августу компания Sequent обещает решить эту проблему путем организации возможностей жесткого разделения.
Как сообщили представители Sequent, компания планирует организовать в своей операционной системе Dynix/ptx поддержку 64-разрядной адресации и файлов размером вплоть до 1 Тбайт. Эта поддержка будет организована в 1999 году, когда, по всей вероятности, появится архитектура, использующая 64-разрядный процессор компании Intel.
InfoWorld, США