- •Оглавление
- •Занятие 1. Знакомство с sql Server 2000
- •Что такое sql Server 2000
- •Базы данных
- •Реляционные базы данных
- •Возможности sql Server 2000
- •Масштабируемость
- •Хранилища данных
- •Редакции sql Server 2000
- •Занятие 2. Компоненты sql Server 2000
- •Механизм реляционных баз данных
- •Компоненты sol Server 2000
- •Обзор Microsoft sql Server
- •Репликация
- •Инструменты sql Server 2000
- •Инструменты командной строки
- •Инструменты с графическим интерфейсом
- •Утилита Client Network
- •Утилита Server Network
- •Встроенные мастера sql Server 2000
- •Занятие 3. Архитектура базы данных
- •Логические компоненты базы данных
- •Физическая структура базы данных
- •Страницы и экстенты
- •Страница данных Microsoft sql Server
- •Файлы и группы файлов баз данных
- •Распределение и повторное использование памяти
- •Структура таблиц и индексов
- •Структура журнала транзакций
- •Архитектура механизма реляционных баз данных.
- •Протокол tds
- •Архитектура обработчика запросов
- •Архитектура памяти
- •Архитектура ввода-вывода
- •Архитектура полнотекстовых запросов
- •Организация транзакций
- •Принципы администрирования
- •Инфраструктура распределенного управления sql
- •Графические инструменты
- •Резервное копирование и восстановление
- •Импорт/экспорт данных
- •Проверка целостности данных
- •Принципы репликации
- •Хранилища данных и оперативная аналитическая обработка (olap)
- •Oltp-системы
- •Olap-системы
- •Архитектура разработки приложений
- •Язык баз данных
Архитектура полнотекстовых запросов
Компонент полнотекстовых запросов SQL Server 2000 поддерживает развитые возможности поиска в столбцах с символьными строками. Эта возможности реализуются службой Microsoft Search, которая выполняет две функции: поддержку индексации и поддержку запросов.
• Поддержка индексации. Служба реализует полнотекстовые каталоги и индексы, определенные для базы данных. Microsoft Search принимает определения полнотекстовых каталогов, а также таблицы и столбцы, составляющие индексы каждого каталога. Этот инструмент также реализует запросы на заполнение полнотекстовых индексов.
• Поддержка запросов. Служба обрабатывает полнотекстовые поисковые запросы и определяет элементы индекса, соответствующие критерию поиска. Для каждого элемента, соответствующего критерию, возвращается уникальный идентификатор строки, а также ранжирующее значение для службы MSSQL Server, которая использует эту информацию для построения результирующего набора. Типы поддерживаемых запросов включают поиск слов и фраз, приблизительного соответствия слов, а также различных склонений и спряжений глаголов и существительных.
Полнотекстовые каталоги и индексы хранятся вне базы данных SQL Server в отдельных файлах, управляемых службой Microsoft Search. Файлы полнотекстового каталога не восстанавливаются во время операции восстановления SQL Server. Их также нельзя резервировать и восстанавливать с помощью операторов Transact-SQL BACKUP и RESTORE. По завершении операций восстановления необходимо отдельно синхронизировать полнотекстовые каталоги.
Файлы полнотекстового каталога доступны только службе Microsoft Search или системному администратору Windows NT или Windows 2000.
Организация транзакций
SQL Server 2000 управляет согласованностью и целостностью каждой базы данных при появлении ошибок. Любое приложение, обновляющее информацию в базе данных SQL Server, делает это с помощью транзакций. Транзакция — логическая единица работы, состоящая из последовательности операторов (выборки, добавления, обновления или удаления). Если во время транзакции не возникли ошибки, все изменения базы данных, сделанные в результате выполнения транзакции, становятся постоянными. Если ошибки есть, то в базу данных не вносится никаких изменений.
Транзакция имеет несколько фаз.
1. Перед началом транзакции база данных находится в согласованном состоянии.
2. Приложение объявляет о начале транзакции. Этот процесс может быть инициированявно с помощью оператора BEGIN TRANSACTION. В качестве альтернативы приложение может установить параметры для работы в неявном режиме транзакций. Первый же оператор Transact-SQL, исполняемый после завершения предыдущей транзакции, автоматически запускает новую транзакцию. В начале транзакции в журнал не заносится никаких записей; первая запись в журнале появляется при модификации данных.
3. Приложение начинает модификацию данных. Модификации в таблицах производятся по очереди. Если выполняется серия модификаций, то в результате база данных может какое-то время оставаться в несогласованном промежуточном состоянии.
4. Когда приложение достигает этапа, на котором все модификации успешно завершены, и база данных снова находится в согласованном состоянии, приложение фиксирует транзакцию. На этом этапе все сделанные модификации базы данных становятся постоянными.
5. Если приложение обнаруживает ошибки, которые предотвращают завершение транзакции, оно выполняет отмену (откат) всех модификаций данных. Этот процесс возвращает базу данных к той точке согласованности, в которой она находилась до начала транзакции.
Приложения SQL Server также могут работать в режиме автоматической фиксации. В этом режиме исполнение каждого оператора Transact-SQL фиксируется, если оно успешно, или автоматически откатывается, если возникает ошибка. Приложению, работающему в режиме автофиксации, нет необходимости использовать специальные операторы для начала и завершения транзакции.
Все операторы Transact-SQL выполняются в составе транзакций: явных, неявных или с автоматической фиксацией. Все транзакции SQL Server, включающие в себя операции по модификации данных, достигают новой точки согласованности и фиксируются или откатываются к исходной точке согласованности. Транзакции не остаются в промежуточном состоянии, в котором база данных не согласована.