Программирование >>  Реализация баз данных 

1 ... 8 9 10 [ 11 ] 12 13 14 ... 162


Занятне 3

Обзор архитектуре - Server 2000

Клиенты SQL Server 2000

Клиенты SQL Server 7.0

Клиенты SQL Server 6.5, 6.0, 4.21




TDsa.o

TDS 7.0

TDS 4.2

ir 1

г V

Серверные

Net-Library

SQL Serv

ler 2000


Локальная Локальная Локальная БД БД БД

Рис. 1-6. Обработка оператора SQL, полученного от клиента Протокол TDS

Клиенты пос1лают операторы SQL, используя протокол прикладного уровня SQL Server под названием поток табличнсх данных (TDS, Tabular Data Stream). SQL Server 2000 работает со следутошимп версиями TDS:

TDS 8.0 - используется клиентами под управлением клиентских компонентов SQL Server 2000. Клиенты TD S.U поддерживают все функции SQL Server 2000;

TDS 7.0 - используется клиентами под управлением клиентских компонентов SQL Server 7.0. Клиенты TDS 7.0 не поддерживают новые функции SQL Server 2000. что иногда вынуждает сервер соответствующим образом корректировать данные, отсылаемые обратно таким клиентам;

TDS 4.2 - используется клиентами под управлением клиентских компонентов SQL Server версий 6.5, 6.0 и 4.21а. Клиенты TDS 4.2 не поддерживают новые функции, добавленные в SQL Server 2000 и 7.0. Это также вынуждает сервер иногда корректировать данные, отсылаемые обратно этим клиентам.

Пакеты TDS создаются компонентом доступа rosoft OL DB для SQL Server, драйвером ODB pcii Database Connectivity) SQL Server или динамически подключаемой fnir.iiw текой (dynamink library, DLL) DB-Library. После этого пакеты TDS передаются клиентской библиотеке Net-Library SQL Server, которая инкапсулирует их в пакеты сетевого протокола. На сервере серверная библиотека Net-Library получает сетевые пакеты, и вле-



2 ные саедения о aosah SQ 2000 Глава 1

из них пакеты TDS и передает их механизму реляционных баз данных. возврате результатов клиентов этот процесс протекает в обратном направлении.

Каждый сервер способен отслеживать несколько сетевых протоколов одновременно и поддерживать по одной библиотеке Net-Library для каждого отслеживаемого протокола.

Сервер баз данных обрабатывает все запросы, которые передают ему серверные библиоте-ibrary. Затем сервер компилирует все операторы SQL в планы исполнения, которые он использует для доступа к запрошенным данным и построения набора, клиенту.

Механизм реляционных баз данных SQL Server 2000 состоит из двух основных частей: реляционного механизма и механизма хранения. Одно из самых важных архитектурных изменений, внесенных в SQL Server 7.0 (и перешедших к SQL Server 2000). заключается в строгом разделении таких компонентов сервера, как реляционный механизм и механизм хранения, и использовании ими API OLE DB для взаимодействия друг с другом, как показано на рис. 1-7.

Реляционный механизм

тхгттт-

OLE DB !

Механизм хранения


Локальная Локальная Локальная БД БД БД

Рис. 1-7. Компоненты механизма шой базы данных

Архитектура обработчика запросов

Операторы SQL - единственный ви .nui., которые приложения посылают SQL Server 2000. Вся работа, выполняемая экземпляром SQL Server, является результатом обработки им SQL-операторов чеине, интерпретация и непосредственна мненне). SQL Server 2000 исполняет операторы SQL с помощью одного из процессов:

обработки одиночного оператора SQL;

пакетной обработки;

исполнения хранимой процедуры или триггера;

кэширования и повторного использования плана исполнения;

параллельной обработки запросов.

Архитектура памяти

SQL Server 2000 динамически выделяет и освобождает память по мере необходимости. Как правило, администратору не приходится указывать, сколько памяти надо выделить для SQL Server, хотя такая возможность все равно предусмотрена и в некоторых средах она бывает необходима. При работе нескольких экземпляров SQL Server на одном компьюте-



Занятие 3 Обзор архитектур1 Server 2000 27

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

SQL Server 2000 Enterprise Edition подцерживает использование Windows 2000 AWE (Address Windowing Extensions), что позволяет экземплярам таюшим под управлением Windows 2000 Advanced Server, адресовать приблизительно 8 Гб памяти, а работающим под управлением Windows 2000 Data Center - приблизительно 64 Еб. Однако . м,.:. : экземпляр, эту дополнительную память, должен статически выделять необходимую память.

Архитектура ввода-вывода

Главным назначением базы данных является хранение и поиск данных, поэтому выполнение многочисленных дисковые ацим чтения/записи является одним из иеотъсмле-

мых атрибутов механизма баз данных. Дисковые операции ввода-вывода потребляют большой объем ресурсов, а их выполнение занимает относительного много времени. Значительная часть логики ПО реляционных СУБД служит для повышения эффективности операций ввода-вывода.

SQL Server 2000 выделяет значительную часть своей виртуальной памяти под кэш-буфер и использует этот кэш для уменьшения числа операций физического У каждого экземпляра SQL Server 2000 есть собственный кэш-буфер. Данные считывйются из дисковых файлов базы данных в кэш-буфер. Несколько логических операций чтения можно выполнить и без многократного физического считывания данных. Данные ся в кэше, пока в течение определенного времени на них нет ссылок или не понадобится свободная память буфера для считывания порции данных. Они записываются на диск только после модификации. Данные могут быть многократно в результате логических операций записи, прежде чем в физической операции

записи они, обновленные, будут записаны на диск.

Ввод-вывод, экземпляром SQL Server, подразделяется на

и физический. Логическое чтение происходит каждый раз, когда механизм баз данных запрашивает страницу из кэш-буфера. Если в момент страница отсутствует в

кэш-буфере, выполняется физическое чтение, чтобы прочитать страницу в кэш-буфер. Если страница в данный момент находится в кэше, физическая операция чтения не выполняется - кэш-буфер использует ту страницу, которая уже хранится в При модификации данных страницы, которая находится в памяти, происходит логическая операция записи. При записи страницы на диск выполняется физическая операция Страница может оставаться в памяти достаточно долго; так, перед физической записью ее на диск иногда выполняется несколько логических операций

Архитектура полнотекстов1х запросов

Компонент полнотекстовых запросов SQL Server 2000 поддерживает развитые возможности поиска в столбцах с символьными строками. Эта возможности реализуются службой Microsoft Search, которая выполняет две функции: поддержку индексации и поддержку запросов.

адержка индексации. Служба реализует полнотекстовые каталоги и индексы, определенные для базы данных. Microsoft Search принимает определения каталогов, а также таблицы и столбцы, составляющие индексы каждого Этот

инструмент также реализует запросы на заполнение полнотекстовых индексов.

Поддержка запросов. Служба обрабатывает полнотекстовые поисковые запросы и определяет элементы индекса, соответствующие критерию поиска. Для каждого элемента, соответствующего критерию, уникальный идентификатор стро-



1 ... 8 9 10 [ 11 ] 12 13 14 ... 162

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика