Индекс как объект базы данных, создаваемый с целью повышения производительности выполнения запросов. Реализация индексов структурой В-дерева. Создание программы-приложения, реализующей операцию селекции с помощью индексов. Примеры работы приложения.
Аннотация к работе
Индекс - объект базы данных , создаваемый с целью повышения производительности выполнения запросов. Таблицы в базе данных могут иметь большое количество строк, которые хранятся в произвольном порядке, и их поиск по заданному значению путем последовательного просмотра таблицы строка за строкой может занимать много времени. Индекс формируется из значений одного или нескольких столбцов таблицы и указателей на соответствующие строки таблицы и, таким образом, позволяет находить нужную строку по заданному значению. В данной курсовой работе индексы реализованы структурой В-дерева.Необходимо разработать приложение, позволяющую реализовывать операцию селекции с использованием индекса, представляющего собой В-дерево.С точки зрения внешнего логического представления B-дерево - это сбалансированное сильно ветвистое дерево во внешней памяти. Для удобства В-дерево строится в отдельном файле и содержит в своих узлах значения ключей, а также адреса записей в основном файле, что обеспечивает возможность доступа к данным записи. Все узлы X содержат поля: а) N, количество ключей, хранящихся в настоящий момент в узле X. б) Ключи, количество которых равно N. в) Логическое значение ISLEAF, равное True, если X является листом, и FALSE, если X - внутренний узел. Эти границы могут быть выражены с помощью одного фиксированного целого числа t ? 2 (в программе эту величину обозначает константа MD), называемого минимальной степенью В-дерева: а) Все узлы, кроме корневого, должен содержать как минимум (t-1) ключей. Если дерево не является пустым, корень должен содержать как минимум один ключ. б) Каждый узел содержит не более (2t - 1) ключей.Пустое дерево создается с помощью процедуры create_tree. Для внесения в дерево новых ключей предназначена процедура insert_tree. Алгоритм вставки ключей в В-дерево представляет собой следующее: Поиск листовой страницы. Если в B-дереве не содержится ключ с заданным значением, то будет получен номер страницы, в которой ему надлежит содержаться, и соответствующие координаты внутри страницы. Если после выполнения вставки новой записи размер используемой части буфера не превосходит размера страницы, то на этом выполнение операции занесения записи заканчивается.Для выполнения операции селекции необходимо задать интервал выборки, в диапазоне которого будут выбраны необходимые записи. Блок-схема процедуры обработки события нажатия клавиши "Выбрать записи" представлена на рисунке 2. индекс программа селекция операцияПри запуске приложения, пользователь может добавлять запись, задавать размер выборки данных. Если требуется найти записи с каким-либо конкретным значением ключа, то достаточно задать одинаковые значения правой и левой границ отбора.Практическая реализация задачи, поставленной в курсовой работе подтвердила эффективность использования индексов для повышения скорости поиска в БД, и удобство представления структуры данных в виде В-дерева. Можно выделить следующие основные достоинства организации данных в виде В-дерева: 1) Во всех случаях полезное использование пространства вторичной памяти занимает свыше 50%.{$R *. dfm} function insert_data (var D: TDATA): Integer; procedure read_tree (N: Integer); ISLEAF) then begin for i: =1 to Node. Seek (DATAFILE, Node. end else begin read_tree (Node.
План
Содержание
Введение
1. Постановка задачи
2. Понятие В-дерева
3. Создание В-дерева и вставка ключа
4. Реализация селекции
5. Примеры работы приложения
Заключение
Список литературы
Введение
Индекс - объект базы данных , создаваемый с целью повышения производительности выполнения запросов. Таблицы в базе данных могут иметь большое количество строк, которые хранятся в произвольном порядке, и их поиск по заданному значению путем последовательного просмотра таблицы строка за строкой может занимать много времени. Индекс формируется из значений одного или нескольких столбцов таблицы и указателей на соответствующие строки таблицы и, таким образом, позволяет находить нужную строку по заданному значению. Ускорение работы с использованием индексов достигается в первую очередь за счет того, что индекс имеет структуру, оптимизированную под поиск.
В данной курсовой работе индексы реализованы структурой В-дерева.
B-деревья - это сбалансированное сильно ветвистое дерево во внешней памяти, обеспечивающих эффективное хранение информации на магнитных дисках и других устройствах с прямым доступом. Сбалансированность означает, что длина пути от корня дерева к любому его листу одна и та же. Ветвистость дерева - это свойство каждого узла дерева ссылаться на большое число узлов-потомков.
Выбранная для курсовой работы структура данных используются при построении индексов отношений, которые в свою очередь применяются в различных операциях языка запросов, в частности - операции селекции.
Целью данной работы является создание программы, реализующей операцию селекции с помощью индексов. Индекс должен представлять собой В-дерево. Актуальность данной работы заключается в том, что В-деревья значительно ускоряют время выполнения запросов и широко используются в современных СУБД. Задача курсовой работы - создание приложения, позволяющего добавлять записи в отношение, а также осуществлять селекцию по заданному условию.
Вывод
Практическая реализация задачи, поставленной в курсовой работе подтвердила эффективность использования индексов для повышения скорости поиска в БД, и удобство представления структуры данных в виде В-дерева. Можно выделить следующие основные достоинства организации данных в виде В-дерева: 1) Во всех случаях полезное использование пространства вторичной памяти занимает свыше 50%. С ростом степени полезного использования памяти не происходит снижения качества обслуживания.
2) Произвольный доступ к записи реализуется посредством малого количества подопераций (обращения к физическим блокам).
3) В среднем достаточно эффективно реализуются операции включения и удаления записей; при этом сохраняется естественный порядок ключей с целью последовательной обработки, а также соответствующий баланс дерева для обеспечения быстрой произвольной выборки.
4) Неизменная упорядоченность по ключу обеспечивает возможность эффективной пакетной обработки.
Задача, поставленная в курсовой работе выполнена, цель достигнута.
Список литературы
1. Конноли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. [Текст]: Пер. с. англ. - М.: Издательство Вильямс, 2003. - 296 с.
2. Рыженков, Д.В. Курс лекций по дисциплине "Базы данных", 2009.
3. Швецов, В.И., Визгунов, А.Н., Мееров, И.Б. Базы данных [Текст]. - Учебное пособие. - Нижний Новгород: Издательство ННГУ, 2004. - 217 с.