Физическая модель данных MS SQL Server.

SQL Server одновременно может поддерживать до 32767 баз данных, которые могут иметь связи друг с другом или внешними базами данных. После установки пакета создаются четыре системы базы данных: master – системные хранимые процедуры и системные таблицы, msdb– репликация и восстановление баз данных, tempdb – временные объекты для пользователей и промежуточные результаты выполнения запросов, model – модельная база данных (вновь создаваемые базы данных используют данную базу как шаблон, включая набор объектов и прав), и две пользовательских: pubs – использованную в данном учебном пособии, Northwind – аналог базы «Борей» для MS Access, предназначенные для обучения и экспериментов.

 

Для хранения данных используется:

(1) обычный дисковый раздел ОС. В этом случае база данных хранится как минимум в двух файлах, физический доступ к которым для пользователей в NTFS запрещён (в том числе блокируется копирование этих файлов). В файле с расширением .mdf хранится системная информация о базе данных и её объекты. С ростом базы длина файла автоматически увеличивается на фрагменты заданного размера. В файле с расширением .ldf хранится журнал транзакций. По желанию разработчика база данных может состоять более чем из двух файлов, обычно объединённых в группы. Вторичные файлы данных имеют расширение .ndf и не используются для хранения системной информации.

(2) Неформатированный (RAW) раздел жёсткого диска. База на таком разделе сразу занимает объём всего раздела, при этом возможно организовать только одну базу в разделе. Доступ к этому разделу будет иметь только SQL Server. При этом никакой возможности доступа к этим данным средствами ОС нет, реплицирование будет возможно только средствами SQL Server.

 

Основная единица хранения данных на уровне файла базы данных – страница (page). При дисковых операциях чтения-записи страница обрабатывается целиком. В SQL Server размер страницы равен 8192 байт. Первые 96 байт отводятся под заголовок, в котором хранится системная информация о типе страницы, объёме свободного места на странице и идентификационном номере объекта базы данных, которому принадлежит эта страница. Базовые типы страниц: data, index, text/image. После заголовка идёт область данных, а в конце страницы – таблица смещений строк, в которой указывается начало каждой записи относительно начала страницы. При удалении строки пустое пространство помечается и потом его может занять новая строка, но перемещения строк не происходит.

 

Для более эффективного управления страницами SQL Server использует объединения страниц – экстенты (extent – непрерывная область). Каждый экстент содержит 8 страниц и занимает 64 Кбайт. Для управления экстентами используются страницы специального типа GAM – Global Allocation Map, каждая из которых может хранить информацию о заполнении 64 000 экстентов. Специальные страницы типа PFS (Page Free Space) – используются для сбора информации о свободном месте не страницах. Это намного убыстряет процесс записи в базу, так как серверу для поиска оптимального варианта записи достаточно перебрать только страницы PFS. Для сбора информации о том, какому объекту принадлежит страница, используются страницы специального типа IAM – Index Allocation Map. Для объекта-владельца создаётся собственная страница IAM, в которой указываются принадлежащие ему экстенты. Если одной IAM не хватает, создаётся цепочка страниц этого типа.








Дата добавления: 2015-07-30; просмотров: 1905;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.