Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
физическая модель данных.docx
Скачиваний:
18
Добавлен:
06.03.2016
Размер:
509.04 Кб
Скачать

Структуры хранения данных в sql Server 7.0

В новой версии сервера баз данных фирма Microsoft реализовала абсолютно новый механизм хранения.

SQL Server 7.0 организует следующую иерархию хранения:

  • База данных — некоторый объем физического пространства, на котором размещаются данные, принадлежащие одной логической базе данных.

  • Файл. Каждая база данных содержит не менее двух файлов. Один из них отводится под журнал транзакций. И в отличие от версии 6.5 в новой версии журнал транзакций не может располагаться в одном файле с данными. И еще одно принципиальное отличие — в новой версии каждый файл может принадлежать только одной базе данных, у нас не может быть разделяемых файлов.

  • Страница. Файлы делятся на страницы размером по 8 Кбайт каждая. Логический номер страницы складывается из внутреннего номера базы данных, номера файла и номера страницы в файле. В рамках БД файлы нумеруются, начиная с 1, и так же нумеруются страницы в рамках файла.

  • Блоки (экстенты, extents). Пространство под объекты отводится блоками по 8 следующих друг за другом страниц. Блок является основной единицей отведения пространства. Поэтому при создании БД можно указывать размер файла с точностью до 64 Кбайт. Для суперкомпьютеров заложена возможность увеличения размера блоков до 128 страниц.

В отличие от версии 6.5 объекты БД не обязательно занимают целый блок. На начальном этапе заполнения объект может занимать внутри блока несколько страниц. Поэтому существуют два типа блоков:

  • Однородные (Uniform). Все страницы однородного блока принадлежат одному объекту БД.

  • Смешанные (Mixed). Разные страницы в блоке принадлежат разным объектам.

Когда объект создается, то обычно его первые страницы отводятся в смешанном блоке, по мере роста объекта он уже размещается в однородных блоках.

В SQL 7.0 существуют уже 7 типов страниц:

  • страница данных (Data page);

  • индексные страницы (Index page);

  • страницы журнала транзакций (Log page);

  • текстовые страницы (Text/image page);

  • карты распределения блоков (Global allocation map page);

  • карты свободного пространства (Page free space page);

  • индексные карты размещения (Index allocation map page).

Все страницы имеют заголовок размером 96 байтов. В заголовке хранится общая информация, используемая ядром СУБД для работы со страницами. На странице в отличие от блока хранится однородная информация. Поэтому среди параметров страницы задаются:

  • номер страницы в формате <номер файла, номер страницы>;

  • идентификатор объекта, которому принадлежит страница;

  • номер индекса, которому принадлежит страница;

  • уровень внутри индексного дерева, которому принадлежит страница;

  • количество отведенных строк на странице, количество заполненных слотов;

  • общий объем свободного пространства на странице;

  • указатель на расположение свободного пространства после последней строки на странице;

  • минимальная длина строки на странице;

  • объем зарезервированного пространства.

После заголовка следует информация о статусе страницы в картах распределения блоков и карте свободного пространства.

Новыми в архитектуре дисковой памяти являются страницы размещения. В этих страницах хранятся сведения о размещении данных. SQL Server 7.0 использует три типа страниц размещения: карты распределения блоков, карты свободного пространства, индексные карты размещения. SQL Server 7.0 хранит информацию размещения на разных уровнях: на уровне блоков, на уровне страниц, на уровне объектов. Такой разносторонний мониторинг помогает СУБД оптимизировать работу в соответствии с требованиями конкретного запроса.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]