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

28. Структуры хранения и методы доступа к данным

Индекс – это файл, каждый элемент которого состоит точно из двух значений: значения данных и указателя.

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

Фундаментальное преимущество индекса: ускорение поиска. Недостатки: замедляют операции обновления.

Индексы могут использоваться двумя различными способами:1)-последовательный доступ (индекс позволяет упростить выполнение запросов и с применением диапазона значений) 2)-прямой доступ (индекс позволяет также упростить выполнение запросов с применением списка)

Существует также возможность сформировать индекс на основе значений двух или нескольких полей, составляющих единую комбинацию. Индекс на комбинации полей F1,F2,…,Fn может использоваться в качестве таких индексов:1)-на одном поле F1 2)-на комбинации полей F1F2 3)-на комбинации полей F1F2F3

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

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

Наиболее широко применяемым и важным типом индекса являются B-деревья. Любое B-дерево представляет собой один из конкретных типов древовидного индекса.

Индекс состоит из двух частей: 1)-последовательный набор представляет собой одноуровневый индекс к фактическим данным 2)-индексный набор, в свою очередь, дает возможность получить быстрый прямой доступ к последовательному набору

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

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

Применение сжатия: 1)-для уменьшения объема памяти, необходимого для хранения определенной коллекции данных 2)-сокращение количества операций ввода-вывода на диске

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

Методы сжатия:1)-дифференциальное 2)-префиксное 3)-суффиксное

-иерархическое сжатие (хранимая иерархическая запись состоит из двух частей: постоянной и переменной.)

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

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