Использование мультипроцессорных организаций
Уже довольно давно развитые коммерческие СУБД основываются на архитектуре "клиент-сервер".
При этой организации наиболее трудоемкие операции над базами данных выполняются на
выделенном компьютере-сервере, который должен быть достаточно мощным и обладать
соответствующим набором ресурсов основной и внешней памяти. До поры серверная часть СУБД
обладала простой организацией: запросы, поступающие из клиентских частей системы,
обрабатывались последовательно с небольшой оптимизацией для совмещения процессорной
работы с работой устройств внешней памяти.
Однако с появлением на рынке мультипроцессорных симметричных аппаратных архитектур,
производители СУБД были вынуждены пересмотреть организацию своих серверов, допустив в них
внутреннюю параллельность. Естественно, это требует очень основательного перепроектирования
системы с ее существенным усложнением. Заметим, что в большинстве случаев компании пошли на
это после появления в ОС UNIX механизма "легковесных" процессов (threads).
О серьезности этой работы говорит тот факт, что, например, в компании Informix было
образовано новое подразделение, занимающееся исключительно вопросами распараллеливания
работы серверов.