40125

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

Доклад

Менеджмент, консалтинг и предпринимательство

Предполагается что для доступа к iой записи нужно просмотреть все i1 записи. Последовательный доступ с фиксированной длиной записи. Картинка i = 0 i 1L Если записи располагаются в оперативной памяти то это массив. Если записи расположены на диске то порядок ввода вывода данных зависит от языка программирования.

Русский

2013-10-15

78 KB

19 чел.

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

Методы доступа – совокупность отношений о физической организации данных и алгоритмов выполнения.

Существуют три группы методов доступа:

  1.  Последовательные;
  2.  Индексные;
  3.  Адресные.
  4.  Последовательные методы доступа. Предполагается, что для доступа к i-ой записи нужно просмотреть все i-1 записи. Первая запись имеет фиксированный адрес имеются несколько разновидностей этого метода. Первые три характеризуются тем что данные располагаются на смежных участках памяти, остальные используют понятие списков.

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

  1.  Последовательный доступ с фиксированной длиной записи.

Картинка

Ai = A0 + (i - 1)L

Если записи располагаются в оперативной памяти, то это массив. Если записи расположены на диске, то порядок ввода/вывода данных зависит от языка программирования. Обычно допускается перебор записей от начал до конца.

  1.  Последовательный доступ с записями переменной длины. В этом случае каждая запись содержит значение длины записи.

  1.  Последовательный доступ с записями неопределенной длины. В этом случае в конец каждой записи помечается определенным символом.

  1.  Простой линейный список.
    •  Со встроенными указателями

Картинка

 

  •  С внешними указателями

Картинка

  1.  Циклический однонаправленный список. Связь от последней записи идет к первой, поэтому доступ можно получить к любой записи начиная с любой записи

Картинки

  1.  Двунаправленный список. Каждая запись имеет два указателя.

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

Картинка

Основной файл

Индексный файл

Замечания: Если надо упорядочить исходный файл по нескольким ключам, то для него создается столько же индексных файлов. Т.к. значения вторичных ключей не уникальны, то индексный файл организуется по методу b) или c) последовательного доступа. Основной эффект с инвертированным массивом (вторичные ключи) применяется при поиске файлов по нескольким условиям. Алгоритм поиска строится так чтобы обращаться к индексным файлам. Наибольший эффект достигается тогда, когда индексный файл помещается в оперативной памяти.

  1.  Индексно-последовательный. Основной файл всегда упорядочен по первичному ключу, индексный файл содержит не на каждую запись как c) или d), а на группу или блок записей, т.е. на значение одного из ключей группы. Повторение ключей в группе недопустимо. В группе должно быть одинаковое число записей. Обычно при таком подходе индексный файл ещё меньше.

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

  1.  Адресные методы доступа. В этих методах значение ключа с помощью специальной функции преобразуется в значение адреса записей такой функции называется адресной. Существует два вида адресной функции:
    1.  Реализует взаимнооднозначное соответствие Адрес ↔ Ключ (прямой доступ).

Прямой доступ к записи. Физический адрес записи непосредственно определяется из самой записи.

  1.  Реализует однозначное соответствие Ключ ↔ Адрес (хеширование - перемешивание).

Хэширование.

Этот метод используется тогда, когда все множество ключей заранее известно и на время обработки может быть размещено в оперативной памяти. В этом случае строится специальная функция, однозначно отображающая множество ключей на множество указателей, называемая хеш-функцией (от английского "to hash" - резать, измельчать). Имея такую функцию можно вычислить адрес записи в файле по заданному ключу поиска. В общем случае ключевые данные, используемые для определения адреса записи организуются в виде таблицы, называемой хеш-таблицей.

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

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

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

Существует два способа разрешения:

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

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


 

А также другие работы, которые могут Вас заинтересовать

65816. Недостатки произношения свистящих звуков «С» - «Сь», «З» - «Зь», «Ц» (сигматизм, парасигматизм) 15.74 KB
  Правильная артикуляция: При произнесении свистящих звуков губы имеют тенденцию растягиваться в улыбке зубы сближены широкий кончик языка упирается в нижние резцы. Передняя часть спинки языка выгарбливается к верхним резцам при произнесении звука Ц она в первый момент образует смычку во второй щель.
65817. Государственная антимонопольная политика - ее цели и задачи 14 KB
  Для недопущения таких негативных процессов государственное антимонопольное регулирование осуществляется в двух направлениях: формирование антимонопольного законодательства; создание системы антимонопольных органов призванных осуществлять регулирование и контроль монополистической деятельности.
65818. Инвентаризация основных средств 21.5 KB
  Инвентаризация основных средств это проверка соответствия основных средств учетным записям о них. Одновременно с инвентаризацией собственных основных средств проверяются основные средства находящиеся в аренде.
65819. Интерполирование 344 KB
  Цель: Применяя методы интерполяции найти аппроксимацию функции заданной таблично. значения этой функции при указанных значениях аргумента х. Выполнить интерполирование и построить график зависимости интерполирующей функции от х на отрезке определенном крайними узлами таблицы.
65820. Исследование модели шинной ЛВС с маркерным доступом 810.5 KB
  Цель работы: Исследование особенностей построения и функционирования шинной ЛВС с маркерным методом доступа и определение основных характеристик сети. Определить основные характеристики ЛВС шинной топологии с маркерным методом доступа на основе исследования аналитической модели сети.
65821. Управление функциональностью ядра операционной системы 20.82 KB
  Основной частью модуля является процедура выдачи разрешения на доступ. Изначально файл полностью доступен всем пользователям, так как основное распределение доступа происходит позже. В процедуре определения возможности предоставления доступа...
65822. Настройка точки доступа 41.5 KB
  Внимание Во избежание помех между точками точки подключать по одной Соединяем точку доступа сетевым кабелем с сетевым адаптером подаем питание. Сбрасываем настройки точки.
65823. ВИМІРЮВАННЯ ПОТУЖНОСТІ В КОЛАХ ПОСТІЙНОГО ТА ОДНОФАЗНОГО ЗМІННОГО СТРУМІВ 701.5 KB
  Вимірювання потужності з допомогою амперметра вольтметра та ватметра Потужність та енергія є основними характеристиками більшості фізичних об'єктів процесів та явищ. У сучасній практиці доводиться вимірювати потужності від часток вата потужність сигналів мобільних телефонів...
65824. Итерационные алгоритмы 68 KB
  Условие задачи Спецификация программы(SRS) Тест план с результатами выполнения тестов Текст программы 1)Условия задачи: Реализовать программу: В одномерном массиве размерностью N, состоящем из чисел: 1) Найти среднее арифметическое элементов, попадающих в заданный интервал...