Введение в BackOffice 2.5

Архитектура SQL Server, взаимодействие компонентов


Архитектура

SQL Server построен на принципах, так называемой "истинно параллельной" архитектуры баз данных, когда сервер для выполнения большинства операций использует родной механизм сред операционной системы, что позволяет достичь высокой производительности и масштабирования на системах с несколькими процессорами.

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

Принудительное переключение нитей исполнения (preemptive scheduling) обеспечивает более гладкое исполнение заданий, возможность параллельного выполнения ряда операций и изоляцию сбоев в процессе исполнения. За счет механизма динамического распределения сред по процессорам, осуществляется автоматическая балансировка нагрузки. Поддержка в SQL Server маски использования процессоров, позволяет явно указывать на каких CPU будет исполняться сервер.

На рисунке 1 приведена схема реализации типичного SQL сервера и схема реализации SQL сервера Microsoft, названная Symmetric Server Architecture (симметричная архитектура сервера).

Рис. 1. Схема реализации типичного SQL сервера и симметричного сервера Microsoft

Сетевой доступ

Как уже упоминалось, SQL Server поддерживает весьма широкий набор сетевых протоколов. Для каждого из них поддерживается режим прямого доступа с использованием "стандартных" для каждого протокола средств (например, Sockets для TCP/IP или IPS/SPX; Named Pipes для NetBios), что дает возможность обращаться к серверу не только из среды Windows и OS/2, но и с платформ Mac и Unix. Набор компонентов, обеспечивающих доступ к серверу с клиента, называют также сетевой библиотекой (network library).

Дополнительно для протоколов TCP/IP, IPX/SPX и Named Pipes поддерживается доступ через защищенные вызовы RPC. Данный тип соединений называют trusted connection, или доверительные соединения, а протокол, соответственно, trusted protocol. Указанные типы соединений поддерживаются только на Windows платформах. Для поддержки trusted протокола в комплект поставки сервера входит сетевая библиотека Multi-Protocol Network Library.



Содержание раздела