КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Компоненты SQL Server 2000 (2003).
Для профессиональной работы с SQL Server 2000 необходимо понимать принципы его функционирования, знать, какой из компонентов необходимо использовать в том или ином случае. Рассмотрим основные компоненты SQL Server 2000. Microsoft SQL Server 2000 реализован в виде набора служб операционной системы, каждая из которых запускается самостоятельно и отвечает за определенный круг задач. Приведем список служб SQL Server: 1. MSSQLServer; 2. SQLServerAgent; 3. Microsoft Search (MSSearch); 4. Microsoft Distributed Transaction Coordinator (MSDTC). Реализация в виде служб позволяет SQL Server 2000 работать как части операционной системы, иметь собственные права доступа и не зависеть от пользователя, работающего на компьютере в данный момент. Операционная система Windows 95/98 не поддерживает служб, поэтому для работы SQL Server 2000 под управлением этой операционной системы автоматически выполняется эмуляция служб. Это связано с тем, что для работы в любой из поддерживаемых операционных систем SQL Server 2000 применяет единственный программный код. “Microsoft” не стала создавать отдельный продукт для работы в операционной системе Windows 95/98, а просто выполнила эмуляцию служб Windows NT. Рассмотрим более подробно каждую из служб SQL Server 2000. Служба MSSQLServer является ядром SQL Server 2000 и выполняет все основные операции. В задачи службы MSSQLServer входит регистрация пользователей, контроль их прав доступа, установление соединения, обслуживание обращений пользователей к базам данных, выполнение хранимых процедур, работа с файлами баз данных и журнала транзакций и многое другое. К функциям службы MSSQLServer также относится контроль за использованием SQL Server 2000 системных ресурсов. Служба MSSQLServer периодически опрашивает систему о количестве свободных ресурсов и при достаточном их наличии автоматически выделяет SQL Server дополнительную память или процессорное время. Полученные ресурсы наиболее эффективным образом распределяются между всеми подключенными пользователями, и тем самым достигается максимальная производительность обработки запросов. Все остальные службы можно рассматривать как расширения службы MSSQLServer, добавляющие гибкость и функциональность SQL Server 2000. Служба MSSQLServer всегда запускается первой, и уже после ее успешного старта другие службы, например SQLServerAgent, могут быть запущены и начать свою работу. Служба SQLServerAgent прежде всего предназначена для автоматизации администрирования и использования SQL Server 2000. В задачи этой службы входит автоматический запуск заданий и извещение операторов о сбоях в работе сервера. С помощью службы SQLServerAgent можно выполнять запуск различных задач в определенное время, что при грамотном использовании может избавить администратора от большей части рутинной работы. Например, администратор может спланировать автоматическое выполнение операций резервного копирования и проверки целостности информации в базе данных во время наименьшей активности пользователей. При этом администратору не нужно находиться рядом и контролировать ход выполнения операций. Служба SQLServerAgent является зависимой по отношению к службе MSSQLServer. Последняя может успешно работать и без службы SQLServerAgent, в то время как для запуска службы SQLServerAgent необходимо предварительно запустить службу MSSQLServer. Служба Microsoft Search (MSSeareh), также называемая Full-Text Search, используется для поиска символьной информации в таблицах баз данных SQL Server 2000. Эта служба позволяет выполнять полнотекстовый поиск (full-text search). Технология полнотекстового поиска дает возможность находить не только слова и фразы, идентичные указанным, но и близкие к ним по смыслу и написанию. После выполнения поиска пользователь получит результирующий набор, содержащий склоняемые формы глаголов и существительных. Для реализации полнотекстового поиска в SQL Server 2000 существуют полнотекстовые каталоги (full-text catalog) и полнотекстовые индексы (full-text index). Данные полнотекстовых каталогов и индексов хранятся отдельно от основных данных в специальных файлах. Все действия по работе с этими файлами осуществляет служба MSSeareh. Связь между службами MSSQLServer и MSSeareh производится через специального поставщика (full-text provider). Служба MSSearсh периодически анализирует содержание таблиц баз данных и обновляет (repopulation) полнотекстовые каталоги и индексы. Если необходимо создать полнотекстовый индекс заново, следует выполнить перестроение (rebuild) индекса. Результатом такого подхода является то, что данными полнотекстового поиска нужно управлять отдельно от основных данных. Администратор должен настроить интервалы обновления данных полнотекстового поиска. Кроме того, операции резервного копирования и восстановления файлов полнотекстового поиска необходимо выполнять отдельно от основных данных. Служба MSDTC. SQL Server 2000 дает возможность пользователям работать одновременно с несколькими источниками данных. Пользователи в одном запросе могут обращаться к различным базам данных, хранящимся на одном и том же или на разных серверах. Кроме того, пользователи могут обращаться не только к серверам Microsoft SQL Server 2000, но также к любым источникам данных, работающим с технологией OLE DB. Эта технология позволяет обращаться не только к реляционным источникам данных, таким как Oracle, FoxPro, MS Access и т. д., но и к нереляционным источникам данных, таким, как текстовые файлы, книги MS Excel и настольные приложения. Для обращения из тела одной транзакции к множеству источников данных SQL Server 2000 использует распределенные транзакции (distributed transaction). Для управления распределенными транзакциями существует координатор распределенных транзакций (Distributed Transaction Coordinator). В SQL Server 2000 координатор распределенных транзакций реализован в виде службы MSDTC. Эта служба автоматически отслеживает ситуации, в которых необходимо начать выполнение распределенных транзакций. В некоторых ситуациях пользователь может и не подозревать, что его транзакция выполняется как распределенная. Служба MSDTC скрывает от пользователя все действия по обработке распределенных транзакций. Распределенные транзакции реализуются как множество локальных транзакций, открываемых на каждом источнике данных координатором распределенных транзакций. Служба MSDTC синхронизирует все транзакции таким образом, что пользователь может быть уверен в целостности данных на всех участниках распределенной транзакции.
|