Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Поиск по частичному соответствию

Вторичные индексы (инвертированные файлы).

Структуры данных для организации поиска по не ключевым полям.

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

В FoxPro используют LOCATE– недостаток – большое время доступа.

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

Вторичный индекс по полю F представляет собой связь между доменом D и множеством записей рассматриваемого файла (ранее рассматриваемые индексы связывают значение ключа с записями файла – называется первичным индексом). Файл с вторичным индексом по полю F называется инвертированным по полю F.

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

Значение (запись)*

где «значение»– значение поля F из домена, (запись)*– список ссылок на записи основного файла.

Если в список входят физические указатели на запись (номера записей) следовательно запись основного файла закреплена.

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

Пример: цвет (список инв. номеров с данным цветом).

Требуется найти запись со значением v1 поля F1, v2 поля F2 … vк поля Fк . Эти поля не образуют полного первичного ключа. Если Si есть множество записей, для которой Fi имеет значение vi то требуется найти:

Рассмотрим методы решения.

1) Использование множественного вторичного индекса. Достаточно пересечь вторичные индексы (возможно в оперативной памяти). Недостаток: поддержка индексов при включении и удалении. Пример: система «ADABAS».

2) Функции разделенного хеширования. В хеш – файле число участков 2n. Логический адрес n бит. Разделим n бит на k групп. Одна i-тая группа соответствует одному полю Fi. Для каждой группы построим свою хеш – функцию hi (Vi). В качестве номера участка примем последовательность бит: h1 (V1) h2 (V2)… hk (Vk). Сумма длин всех участков равна h. Каждое значение Vi переведем в часть ключа hi (Vi), построим общий ключ →поиск в построенном номере участка.

 

 

<== предыдущая лекция | следующая лекция ==>
Файлы с записями переменной длины | 
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 332; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.