Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

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

Читайте также:
  1. I) Найдитев тексте все придаточные предложения, которые вводятся союзом que,и выполняют функцию дополнения.
  2. II РАЗЛИЧНЫЕ ФОРМЫ МОЛИТВЫ, КОТОРЫЕ мы МОЖЕМ ПРИМЕНЯТЬ
  3. II. Место и умственная образность, которые предписываются
  4. IV. Головоломки, которые использует в интервью Microsoft
  5. IV. ИНТЕГРИРОВАНИЕ НЕКОТОРЫХ ИРРАЦИОНАЛЬНОСТЕЙ
  6. Quot;В то время царь Ирод поднял руки на некоторых из принадлежащих к церкви, чтобы сделать им зло... ". - (Деяния 12:1).
  7. Quot;И собрали, и наполнили двенадцать коробов кусками от пяти ячменных хлебов, оставшимися у тех, которые ели". - (Иоанна 6:13).

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

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

В зависимости от организации индексной и основной областей различают 2 типа файлов:

а) с плотным индексом

б) с неплотным индексом.

Эти файлы имеют дополнительные названия, которые напрямую связаны с методами доступа к произвольной записи.

Файлы с плотным индексом называются также индексно-прямыми файлами, a файлы с неплотным индексом называются также индексно-последовательными файлами.

Файлы с плотным индексом, или индексно-прямые файлы

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

Значение ключа Номер записи (адрес)   Таб ном ФИО Оклад
100 *   122 Иванов 1200
110 *   126 Петров 1400
120 *   100 Борисов 1500
122 *   120 Лыков 1400
125 *   110 Павлова 1350
126 *   125 Митина 1500

Здесь значение ключа — это значение первичного ключа, а номер записи — это порядковый номер записи в основной области, которая имеет данное значение первичного ключа.

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

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

Наиболее эффективным алгоритмом поиска на упорядоченном массиве являет­ся логарифмический, или бинарный поиск. Максимальное количество шагов поиска опре­деляется двоичным логарифмом от общего числа элементов в искомом про­странстве поиска:

Tn=log2 N,

где N — число элементов.

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

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

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

Файлы с неплотным индексом, или индексно-последовательные файлы

Попробуем усовершенствовать способ хранения файла: будем хранить его в упо­рядоченном виде и применим алгоритм двоичного поиска для доступа к произ­вольной записи. Тогда время доступа к произвольной записи будет существенно меньше. Однако и поддержание основного файла в упорядоченном виде также операция сложная.

Неплотный индекс строится именно для упорядоченных файлов. Для этих фай­лов используется принцип внутреннего упорядочения для уменьшения количе­ства хранимых индексов. Структура записи индекса для таких файлов имеет следующий вид:

 

Значение ключа первой записи блока Номер блока с этой записью

 

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

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

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

Специальные расчеты показывают, что при переходе к неплотному индексу время доступа уменьшил практически в 1,5 раза. Поэтому можно признать, что организация неплотного индекса дает выигрыш в скорости доступа.


Дата добавления: 2015-08-02; просмотров: 144 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Индексные файлы.| Индексирование баз данных в СУБД Fox Pro

mybiblioteka.su - 2015-2024 год. (0.008 сек.)