Физическая организация файлов в БД. Индексация

Автор: Пользователь скрыл имя, 28 Января 2013 в 20:26, курсовая работа

Описание работы

Физическая организация баз данных определяет способы размещения данных в среде хранения и способы физического доступа к этим данным. Исторически первыми системами хранения и доступа были файлы, являвшиеся частью операционной системы. СУБД создавала над этими файламинадстройку, которая позволяла организовать их так, чтобы они работала как единое целое – база данных. Доступ осуществлялся на уровне файловых операций. По мере роста объема данных и требований, предъявляемых к СУБД, механизмы буферизации и управления файлами оказались неэффективны.

Содержание

Введение 3
1 Физическая организация файлов в БД. Индексация 4
1.1 Файловые структуры, используемые для хранения информации в базах данных 4
1.2 Организация стратегии свободного замещения 11
1.3 Индексные файлы 12
1.4 Файлы с плотным индексом, или индексно-прямые файлы 13
1.5 Файлы с неплотным индексом, или индексно-последовательные файлы 17
1.6 Организация индексов в виде B-tree (В-деревьев) 19
1.7 Индексирование в базах данных 22
1.7.1 Типы индексов 22
1.7.2 Индексно-последовательные файлы 23
1.7.3 Вторичные индексы 23
1.7.4 Многоуровневые индексы 24
1.7.5 Усовершенствованные сбалансированные древовидные индексы 24
Практическая часть 26
Выводы 30
Библиография 31

Работа содержит 1 файл

Курсовая работа.doc

— 983.00 Кб (Скачать)

1.7.5 Усовершенствованные сбалансированные древовидные индексы

Сбалансированное  дерево

Во многих СУБД для хранения данных или индексов используется структура  данных, называемая деревом. Дерево состоит  из иерархии узлов (node), в которой  каждый узел, за исключением корня (root), имеет родительский (parent) узел, а также один, несколько или ни одного дочернего (child) узла. Корень не имеет родительского узла. Узел, который не имеет дочерних узлов, называется листом (leaf).

Глубиной дерева называется максимальное количество уровней между корнем и листом. Глубина дерева может быть различной для разных путей доступа к листам. Если же она одинакова для всех листов, то дерево называется сбалансированным, или В-деревом (В-Тгее). Степенью (degree) (или порядком (order)) дерева называется максимально допустимое количество дочерних узлов для каждого родительского узла. Большие степени обычно используются для создания более широких и менее глубоких деревьев. Поскольку время доступа в древовидной структуре зависит от глубины, а не от ширины, обычно принято использовать более "разветвленные" и менее глубокие деревья. Бинарным деревом (binary tree) называется дерево порядка 2, в котором каждый узел имеет не больше двух дочерних узлов.

Усовершенствованные сбалансированные древовидные индексы определяются по следующим правилам.

  • Если корень не является лист-узлом, то он должен иметь, по крайней мере, два дочерних узла.
  • В дереве порядка n каждый узел (за исключением корня и листов) должен иметь от n/2 до n указателей и дочерних узлов. Если число n/2 не является целым, то оно округляется до ближайшего большего целого.
  • В дереве порядка n количество значений ключа в листе должно находиться в пределах от (n-1)/2 до (n-1). Если число (n-1)/2 не является целым, то оно округляется до ближайшего большего целого.
  • Количество значений ключа в не листовом узле на единицу меньше количества указателей.
  • Дерево всегда должно быть сбалансированным, т.е. все пути от корня к каждому листу должны иметь одинаковую глубину.
  • Листы дерева связаны в порядке возрастания значений ключа.

 

 

 

 

 

 

Практическая часть

Создание  БД без использования Transact-SQL

Создать новую  БД можно с помощью окна Object Explorer или используя язык Transact-SQL. С помощью окна Object Explorer мы можем управлять всеми объектами БД сервера. Дерево папок окна Object Explorer содержит несколько объектов, включая Databases. Эта папка содержит несколько подпапок: одна для системных БД – System Databases, другие папки представляют отдельные БД, созданные пользователем.

Для того чтобы  создать новую БД, используя Object Explorer, щелкните правой кнопкой мыши на объекте Databases и выберите пункт меню New Database. В появившемся диалоговом окне New Database задайте имя создаваемой БД в поле Database Name и нажмите кнопку OK.

Рисунок 10 – Диалоговое окно New Database.

 

Для удаления БД из системы необходимо выбрать пункт Delete из контекстного меню окна Object Explorer, предварительно выбрав удаляемую БД из списка.

Каждая БД имеет  несколько различных свойств, такие  как тип файла, начальный размер и другие. Свойства БД могут быть выбраны в левой панели диалогового окна New Database, где расположены несколько страниц или групп свойств:

    • General
    • Files (появляется только в уже созданной БД)
    • Filegroups
    • Options
    • Permissions (появляется только в уже созданной БД)
    • Extended Properties (появляется только в уже созданной БД)
    • Mirroring (появляется только в уже созданной БД)
    • Transaction Log Shipping (появляется только в уже созданной БД)

Группа свойств General диалогового окна New Database содержит, кроме всех прочих, имя БД, владельца БД, а также свойства файлов БД. Свойства файлов БД включают в себя имя (FileName), путь (Path) к файлу (то место, где будет храниться БД), начальный размер (Initial size), тип файла (Type) – Data (файл данных) или Log (файл журнала транзакций), файловую группу (FileGroup), а также возможность задания автоматического увеличения размера файла данных или журнала транзакций при достижении лимита использования (Autogrowth).

База данных может состоять из нескольких файлов, а файлы, в свою очередь, могут принадлежать различным файловым группам (или  файловой группе по умолчанию – PRIMARY).

 

Конфигурирование  файлов журнала и файлов данных

В базах данных SQL Server 2008 используется два типа файлов операционной системы: файлы данных и файлы журнала. Файлы данных (data files) содержат данные и объекты, такие как таблицы и индексы, а в файлах журнала (log files) хранится журнал транзакций для восстановления транзакций базы данных. Для упрощения администрирования и повышения производительности файлы данных можно объединять в файловые группы.

Файлы данных. В  базе данных SQL Server 2008 можно создавать файлы данных двух типов.

  • Первичный файл данных (primary data file) является обязательным. В нем хранится загрузочная информация каталога базы данных и указатели на другие файлы базы данных. Первичный файл данных может также содержать объекты и пользовательские данные. Для имени первичного файла рекомендуется расширение mdf.
  • Вторичные файлы данных (secondary data files) не являются обязательными и определяются пользователем. В них содержатся объекты и пользовательские данные. Для повышения производительности вторичные файлы рекомендуется размешать на разных дисках. В базе данных может быть не более 32 766 вторичных файлов данных. Для имени вторичного файла данных рекомендуется расширение ndf.

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

 

Файловые  группы

Файловая  группа (filegroup) — это логическая структура, с помощью которой администратор баз данных может группировать файлы данных и управлять ими как логической единицей. Чтобы повысить производительность, объекты базы данных (например, таблицы) можно выделить в отдельные файловые группы. Распределение объектов базы данных по разным файловым группам позволяет реализовать преимущества разных дисковых подсистем и разрешить SQL Server выполнять параллельные дисковые операции. Кроме того, создав несколько файловых групп, вы сможете выполнять резервное копирование и восстановление файлов независимо друг от друга.

В SQL Server поддерживается два типа файловых групп: первичные и пользовательские.

  • Первичная файловая группа (primary filegroup) содержит первичный файл данных и все вторичные файлы данных, не входящие ни в какую другую файловую группу. Все системные таблицы помещаются в первичную файловую группу.
  • В каждой базе данных есть файловая группа по умолчанию (default filegroup). Если при создании объекта базы данных не указать файловую группу. SQL Server поместит его в файловую группу по умолчанию.
  • Файловой группе можно присвоить атрибут «только для чтения». Файловые группы только для чтения (read-only filegroups) можно использовать для объектов базы данных, которые нельзя изменять, например хронологических таблиц. Все файловые группы, за исключением первичной, можно отметить как поддерживающие только чтение.

 

Процесс конфигурирования файлов данных и файлов журнала

С помощью среды SQL Server Management Studio можно добавлять файлы данных и файлы журнала транзакций, а также задавать их свойства и изменять динамические параметры роста размера файлов при достижении ими предельных размеров. Для добавления нового файла данных (журнала транзакций), выберите БД в окне Object Explorer и откройте диалоговое окно свойств (пункт Properties из контекстного меню), перейдите на страницу свойств Files (рисунок 11). Для добавления нового файла в БД необходимо нажать кнопку Add в правом нижнем углу.

 

Рисунок 11 – Создание нового файла данных

 

После добавления файла можно назначить ему  файловую группу из списка имеющихся (выпадающий список в столбце Filegroup). Здесь же можно определить первоначальный размер файла в столбце Initial Size (в MB). Для управления свойствами роста размера файла при его заполнении необходимо открыть диалоговое окно нажатием кнопки в столбце Autogrowth (рисунок 12).

Рисунок 12 – Изменение свойств файла данных

 

 

 

 

Выводы

На данной курсовой работе была изучена информация о  физической организации файлов в  базе данных. Для организации и доступа к данным используется два метода: последовательный и прямой. В последовательных файлах записи хранятся в порядке возрастания или убывания их первичного ключа (например, номера клиента от 00001 до 99999). В файлах прямого доступа записи не хранятся в каком-то определенном порядке.

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Библиография

1  Peter Tarassenko, Цикл обработки данных [Электронный ресурс], 2011

 Адрес: http://ich.tsu.ru/~ptara/project/course/bis/text/unit2/Unit2.html

2  Kudsar.ru, Физическая организация баз данных [Электронный ресурс], 2011

  Адрес: http://kudsar.narod.ru/exambdsql/73-91.htm

3  И.П.Карпова,  Физическая организация данных [Электронный ресурс], 2011

 Адрес: http://www.rema44.ru/resurs/study/dblectio/dblect3.html

4  ipm.kstu.ru, Физические модели баз данных [Электронный ресурс], 2011

 Адрес: http://ipm.kstu.ru/ud/lec/lec9/index.php

 

 


Информация о работе Физическая организация файлов в БД. Индексация