КАТЕГОРИИ: Архитектура-(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) |
Лекция №25
Название лекции: В– деревья. План: 1. Иерархия индексов как дерево. 2. Соглашения, принятые для организации В–деревьев. 3. Поиск в B- деревьях. 4. Модификация. 5. Включение. 6. Удаление.
1. Иерархия индексов как дерево. Дать определение – сбалансированные деревья. Рассмотрим случай незакрепленных записей главного файла. Индекс – это файл с незакрепленными записями. Таким образом, для этого файла можно построить индекс индекса. Далее индекс этого индекса и т.д. пока индекс не поместится в один блок. Такая схема может быть более эффективна, одноуровневый индекс, и называется иерархией индексов. Общая схема для очень больших файлов основана на иерархии индексов, соответствующей иерархической природе устройств внешней памяти. Иерархию индексов можно организовать и независимо от иерархии структуры внешних устройств. Иерархию индексов можно рассматривать как дерево (см. рисунок). Операции поиска, модификации, включения, и удаления над многоуровневыми индексами являются простым обобщением ранее рассмотренных методов. Проблема – если индекс первого уровня превышает размер 1-го блока. Очевидно, что можно добавить ещё один уровень (что не меняет алгоритмов доступа). Таким образом, мы получим сбалансированное дерево, с неопределённым (переменным) числом уровней. Дерево сбалансированное: длина пути от корня до любого листа одинакова. Для дальнейших рассуждений предполагаем, что записи главного файла не закреплены. Хотя если записи закреплены, то можно, как и в предыдущем случае, считать, что листья в дереве являются первыми блоками участков. Как и раньше будем считать, что в листе дерева стоит указатель на блок главного файла (случай, когда в листе стоит ссылка на запись главного файла, а не на блок, называется плотным индексом, название от того, что в блоках главного файла нет свободных мест (записи плотно распределены)). Для операций включения и удаления над В–деревьями можно было бы использовать туже стратегию, что и в предыдущем разделе, применяя операции включения и удаления к узлам (блокам) дерева на всех уровнях. Тогда узлы содержали бы от одной записи до максимально возможного их числа. Для В–деревьев обычно применяется другая стратегия включения и удаления, которая обеспечивает наполняемость всех узлов (за исключением корня) не менее чем на половину.
Соглашения, принятые для организации В–деревьев. Для удобства организации индексных файлов в виде В–деревьев положим: a) число записей индекса, которые могут содержатся в одном блоке, является числом нечетным, и равным 2d-1≥3; b) максимальное число записей главного файла в одном блоке также нечетное число, равное 2е-1≥3; c) для экономии пространства в блоках индекса В–дерева значения ключа в первой записи опускается. При поиске будем считать, что все значения ключей, меньше значения ключа во второй записи, покрывается его первым значением. Рассмотрим функции доступа к главному файлу при использовании В–деревьев.
Дата добавления: 2014-01-05; Просмотров: 375; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |