Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
FIZIChESKAYa_ORGANIZATsIYa_BAZ_DANN_Kh.docx
Скачиваний:
31
Добавлен:
04.03.2016
Размер:
49.95 Кб
Скачать

1.3. Функции Диспетчера файлов и Диспетчера дисков в процессе доступа к базе данных

Для хранения данных могут быть использованы различные структуры, обладающие разной производительностью. Идеального способа хранения данных не существует. Основные этапы процесса доступа к базе данных следующие:

  СУБД определяет искомую запись в БД, для чего в оперативную память помещается набор записей, в котором ищется запрашиваемая, а для извлечения записи запрашивается так называемый Диспетчер файлов;

  Диспетчер файлов определяет страницу, на которой находится искомая запись, а затем для извлечения этой страницы запрашивается диспетчер дисков;

  Диспетчер дисков определяет физическое расположение страницы на устройстве хранения информации и посылает запрос на ввод-вывод данных.

Таким образом, СУБД рассматривает базу данных как множество записей, просматриваемых при помощи Диспетчера файлов. Диспетчер файлов рассматривает базу данных как набор страниц, просматриваемых с помощью диспетчера дисков, который непосредственно работает с устройствами хранения информации.

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

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

Основные операции, выполняемые Диспетчером дисков с наборами страниц по запросу со стороны диспетчера файлов следующие:

  извлечь страницу S из набора страниц N;

  заменить страницу S из набора страниц N;

  добавить новую страницу в имеющийся набор страниц N;

  удалить страницу S из набора страниц N.

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

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

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

К основным операциям с файлами, выполняемыми Диспетчером файлов, по запросу со стороны СУБД, относятся:

  извлечь хранимую запись Z из хранимого файла F;

  заменить хранимую запись Z в хранимом файле F;

  добавить новую хранимую запись Z в хранимый файл F;

  удалить хранимую запись Z из хранимого файла F;

  создать новый хранимый файл F;

  удалить хранимый файл F.

При хранении данных используют принцип кластеризации данных, в основе которого находится подход как можно более близкого физического размещения на диске логически связанных между собой и часто используемых данных. Физическая кластеризация данных является важным условием высокой производительности. Различают:

  внутрифайловую кластеризацию, которая осуществляется в рамках одного хранимого файла;

  межфайловую  кластеризацию, которая охватывает сразу несколько файлов.

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

         Основная функция диспетчера дисков – управлением страницами при котором осуществляется скрытие от Диспетчера файлов всех деталей физических дисковых операций ввода-вывода и замена их логическими страничными операциями ввода-вывода.

         Аналогично Диспетчер файлов скрывает все подробности операций ввода-вывода на основе страниц от СУБД и предоставляет ей возможность вести работу только с хранимыми записями и файлами. Такая работа, выполняемая Диспетчером файлов, называется управлением хранимыми записями.

Хранимые записи идентифицируются с помощью идентификационного номера записи Z, который состоит из двух частей: номера страницы S, на которой данная запись находится, и информации о смещении записи от конца страницы S. Если известен идентификационный номер записей, доступ к требуемой записи осуществляется достаточно быстро, поскольку используется только доступ к данной странице.

Для некоторого хранимого файла всегда можно осуществить последовательный доступ ко всем хранимым записям, т. е. доступ согласно последовательности записей внутри страницы и последовательности страниц внутри набора страниц, чаще всего, в порядке возрастания идентификационных номеров записей. Такая последовательность называется физической, хотя она не обязательно соответствует физическому расположению данных на диске.

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

Существуют более совершенные способы упорядочения записей и способы доступа по сравнению с физической последовательностью: использование индексирования, хеширования, а также технологии сжатия.

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