Конец архитектурной эпохи

Гостиница Волхов 2

Высокий уровень доступности - часть 2


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

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

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


Начало  Назад  Вперед