SMP-системы

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

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

Ряд требований остается прежним. На практике доступ и пересылка данных на дисках происходят значительно медленнее, чем в памяти. В свою очередь, для достуна к памяти и пересылки данных необходимо значительно больше времени, чем для кэша (специальная подсистема быстродействующей памяти) ЦП. Для минимизации доступа к диску базы данных должны обеспечивать продуктивное кэширование своих страниц. Программный код должен быть оптимизирован для эффективного применения кэшей ЦП. Ответственность за кэширование страниц баз данных несут их поставщики; ответственность же за рациональный код программы распределена между СУБД и операционной системой.

Компиляторы Sun обладают целым рядом усовершенствованных особенностей, помогающих оптимизировать код программы, например, оптимизация профиля обратной связи (сводящая вместе наиболее часто используемые блоки кода для улучшения использования кэша ЦП), развертка цикла (повторение команд, составляющих тело цикла, внутри единственной итерации цикла для уменьшения потерь скорости и общих накладных расходов в цикле), а также применение mapfiles - преобразований файлов программ, группирующих наиболее часто используемые функции.

Oracle является отличным примером архитектуры БД, оптимизированной для эффективного управления как оперативными обработками транзакций, так и рабочими нагрузками поддержки принятия решений в SMP-системах. Кроме того, даже 32-разрядные версии Oracle и Solaris способны эффективно использовать гораздо больше 4 Гбайт памяти, поскольку 4-гигабайтный предел адресного пространства действует для каждого процесса, но не для всей системы в целом.

Несмотря на то, что другие крупные базы данных также рационально управляют рабочими нагрузками OLTP в SMP-системах, некоторые из них построены на базе более сложных архитектур для связи с системами DSS. Это обусловлено попыткой оптимизировать обработку в системах, которые не предусматривают совместное использование (например, диска).

Базы данных, совместно использующие диски в SMP-системах
Базы данных в SMP, не предусматривающие совместное использование
Характеристики логических узлов
Масштабируемость очереди
Делить на разделы или нет?

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


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