Разделы презентаций


Пример объектно-ориентированной БД

Содержание

5.5. Пример объектно-ориентированной БД (XMLDB). СУБД ИНЕС (для ЕС ЭВМ), НИКА (для РС) Цели разработки:- Объектное проектирование- Снятие ограничений на размеры- БД – произвольный граф-  Единый

Слайды и текст этой презентации

Слайд 1БАНКИ ДАННЫХ
Автор: Емельянов Н. Е.
Правка: Тригуб Н.А.

БАНКИ ДАННЫХАвтор: Емельянов Н. Е.Правка: Тригуб Н.А.

Слайд 25.5. Пример объектно-ориентированной БД (XMLDB). СУБД ИНЕС (для ЕС ЭВМ),

НИКА (для РС)

Цели разработки:
- Объектное проектирование
- Снятие ограничений на размеры
- БД – произвольный граф
-  Единый индекс
- Возможность менять схему БД без перезагрузки базы
- Эффективность хранения и доступа
5.5. Пример объектно-ориентированной БД (XMLDB). СУБД ИНЕС (для ЕС ЭВМ),  НИКА (для РС)

Слайд 35.5.1. База данных – совокупность двух файлов.

ИмяБД.dod (схема БД)
ИмяБД.tree

(данные)

Например. avto.dod и avto.tree
dod – дерево описания данных (ДОД)
tree – дерево данных (ДД)


5.5.1. База данных – совокупность двух файлов.

Слайд 4Назначение схемы БД:
Шифровка имен.
Вместо имен вершин

(до 256 символов), в дереве данных хранятся шифры (1-2 байта).
Обеспечение

целостности БД.
Вводить данные в БД можно будет только в соответствие со схемой (структурой объектов и подобъектов и типами терминальных данных).

Назначение схемы БД: Шифровка имен.   Вместо имен вершин (до 256 символов), в дереве данных хранятся

Слайд 55.5.2. Метод записи деревьев в памяти
В
С
D
E
F
G
H
I
J
Рассмотрим следующую структуру
K
А
N-арное дерево

5.5.2. Метод записи деревьев в памяти ВСDEFGHIJРассмотрим следующую структуруKАN-арное дерево

Слайд 6В
С
D
E
F
G
H
I
J
Преобразование N-арной структуры в
K
А

В
С
D
E
F
G
H
I
J
K
А
Бинарное дерево

ВСDEFGHIJПреобразование N-арной структуры вKАВСDEFGHIJKАБинарное дерево

Слайд 7Разбивка на страницы
БД разбита на страницы. На каждой странице хранится

связный фрагмент дерева. Этот фрагмент превращается из N-арного в бинарный.

В каждой вершине хранятся не более двух ссылок: на первую из подчиненных вершин и на следующую из соподчиненных вершин.
Бинарное дерево записывается в память подряд
(в порядке левого обхода):

 A B C D E F G H I J K

Разбивка на страницыБД разбита на страницы. На каждой странице хранится связный фрагмент дерева. Этот фрагмент превращается из

Слайд 8 Длина данного - ссылка на следующую вершину дерева

в смысле левого обхода.
В каждой не терминальной вершине,

вместо данного, хранится длина подчиненного поддерева.

В

С

D

E

F

G

H

I

J

K

А

Информация, записанная в каждой вершине

Идентификатор данного (шифр)
Значение данного, если вершина терминальная
Длина данного для терминальных вершин
Длина подчиненного поддерева для нетерминальных вершин

Длина данного - ссылка на следующую вершину дерева в смысле левого обхода.  В каждой

Слайд 9 Если на странице внешней памяти есть сводное место

>= ΔМ, то сдвигаются данные J и K на ΔМ.


В освободившееся место помещается данное М.
Длины поддеревьев А и G увеличиваются на ΔМ.

Если на странице свободное место <= ΔМ, то включается алгоритм деления страницы.

В

С

D

E

F

G

H

I

J

K

А

Ввод новых данных

Например, вершины М между I и J (ΔМ - длина М).

 

М

Если на странице внешней памяти есть сводное место >= ΔМ, то сдвигаются данные J и

Слайд 105.5.3. Метод деления страниц.
При вводе данных в пустую

БД открывается 1-я страница, в которую данные записываются в лексикографическом

порядке.
Когда емкость 1-й страницы исчерпана, на диске открывается 2-я, и данные распределяются примерно поровну.
Старшие данные остаются на 1-й, младшие - на 2-й.
На 1-й странице организуется справочная, куда выносятся номера страниц и идентификаторы первых данных.
5.5.3. Метод деления страниц.   При вводе данных в пустую БД открывается 1-я страница, в которую

Слайд 115.5.3. Метод деления страниц (продолжение 1)
Идентификатор следующего вводимого

данного сравнивается с идентификаторами справочной.
Вызывается соответствующая страница и

новое данное записывается в нее.

.

5.5.3. Метод деления страниц (продолжение 1)   Идентификатор следующего вводимого данного сравнивается с идентификаторами справочной.

Слайд 125.5.3. Метод деления страниц (продолжение 2)
Такая организация памяти

позволяет в любое место вставить произвольное количество новых данных.

При переполнении одной из уже существующих страниц открывается следующая страница, куда пересылаются младшие данные; в справочную заносится старший ключ новой страницы.
При переполнении справочной возникает справочная второго уровня, в строках которой хранятся ссылки на справочные первого уровня. В дальнейшем - справочные более высоких уровней.
Это обеспечивает балансировку по вертикали.
5.5.3. Метод деления страниц (продолжение 2)   Такая организация памяти позволяет в любое место вставить произвольное

Слайд 135.5.3. Метод деления страниц (продолжение 3)
На страницах справочных

помещается в среднем примерно одно и тоже число ключей, это

приводит к балансировке по горизонтали.

Освободившиеся при удалении данных страницы поступают в резерв свободных, а освободившаяся память внутри страниц - в резерв свободной памяти страницы.

5.5.3. Метод деления страниц (продолжение 3)   На страницах справочных помещается в среднем примерно одно и

Слайд 14Описатель блока

Данные
Свободная память

Описатель блока            ДанныеСвободная память

Слайд 15Описатель блока




Данные
Свободная

память

Описатель блока

Данные

Свободная память

Справочная
1-го уровня

Описатель блока

Слайд 16Описатель блока




Данные
Свободная

память

Описатель блока

Данные

Свободная память

Описатель блока

Данные

Свободная память

Описатель блока

Данные

Свободная память

Справочная
1-го уровня

Описатель блока

Слайд 17Описатель блока




Справочная

1-го уровня


Свободная память

Описатель блока

Данные

Свободная память

Описатель блока

Данные

Свободная память

Описатель блока

Справочная
1-го уровня

Свободная память

Справочная
2-го уровня

Описатель блока

Данные

Свободная память

Описатель блока

Данные

Свободная память

Описатель блока

Слайд 185.5.4. Доступ к данным
Т.1. Если известен составной (конкатенированный) ключ, то

время доступа минимально.
Док. Доступ проходит за минимальное число обменов,

так как идет по многоуровневой логарифмической справочной.

5.5.4. Доступ к данным Т.1. Если известен составной (конкатенированный) ключ, то время доступа минимально. Док. Доступ проходит

Слайд 19Т.2. Если необходим перебор по всей БД или любому поддереву,

время доступа минимально.
Док. На каждой странице хранится связное поддерево. После

вызова страницы в ОП совершается обход поддерева, страницы вызываются один раз без перевызовов.

5.5.4. Доступ к данным

Т.2. Если необходим перебор по всей БД или любому поддереву, время доступа минимально.Док. На каждой странице хранится

Слайд 205.5.4. Доступ к данным (объем БД)
Т.3. Объем минимален у слабо заполненных

БД и БД со значениями реквизитов разной длины.

Док. Не отводится

место под несуществующие реквизиты, реквизит всегда занимает минимальное место +2 байта (шифр и длина). Эффект может достигать нескольких порядков.

Задание. Привести пример, когда объем реляционной БД меньше?
5.5.4. Доступ к данным (объем БД)Т.3. Объем минимален у слабо заполненных БД и БД со значениями реквизитов

Слайд 21








№ посл.
вершины
Типы
верш.
Имя
вершины
Шифр
вершины
Дескриптор
Имя
Словарь
Шифры
Шифр вершины
Шифр
отца
1
2
3






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

№ посл.вершиныТипыверш.ИмявершиныШифрвершиныДескрипторИмяСловарьШифрыШифр вершиныШифр отца1235.5.5. Структура описания данных

Слайд 22



Автомобили
Гос.
номер
Марка
Цвет



5.5.6. Пример БД
1). Схема БД
Автомобиль

АвтомобилиГос.номерМаркаЦвет5.5.6. Пример БД1). Схема БДАвтомобиль

Слайд 23

Автомобили : массив
Гос. номер : текст (ключ)
Марка : текст
Цвет

: текст
2). Показ Схемы БД на дисплее
Автомобиль : структура

Автомобили : массивГос. номер : текст (ключ)Марка : текст Цвет : текст 2). Показ Схемы БД на

Слайд 24

Автомобили
Марка : ВАЗ 2109
Цвет : синий
2). Показ самой

БД
МНЭ 50 - 25
Марка : ВАЗ 2104
Цвет :

белый

МНЭ 60 - 13

. . . . . . .

АвтомобилиМарка : ВАЗ 2109 Цвет : синий 2). Показ самой БД МНЭ 50 - 25Марка : ВАЗ

Слайд 25

Авто
137 (послед. занятый №)
Автомобили
3). Описание данных ( Авто.dod)
1
2
30
Дескриптор

(30, массив)
Автомобиль
31
Дескриптор (31, структура)
Гос. номер
37
Дескриптор (37, текст, ключ)
Марка
39
Дескриптор (39,

текст)

Цвет

Дескриптор (42, текст)

42

Авто137 (послед. занятый №) Автомобили3). Описание данных ( Авто.dod) 1230Дескриптор (30, массив)Автомобиль31Дескриптор (31, структура)Гос. номер 37Дескриптор (37,

Слайд 26

Автомобили
3
Root
30
Автомобиль
30
31
Гос. номер
31
37
Марка
31
39
Цвет
31
42
137
140
(определение шифра по имени)
(среди соподчиненных
нет одноименных)
……..

Автомобили3Root30Автомобиль3031Гос. номер 3137Марка3139Цвет 3142137140(определение шифра по имени)(среди соподчиненных нет одноименных)……..

Слайд 27

30
39 : ВАЗ 2109
42 : синий
4). Сами данные

( Авто.dod)
31 : МНЭ 50 - 25
39 : ВАЗ

2104

42 : белый

31 : МНЭ 60 - 13

. . . . . . .

3039 : ВАЗ 2109 42 : синий 4). Сами данные ( Авто.dod) 31 : МНЭ 50 -

Слайд 28

5.5.7. Оптимизация времени доступа
Три подхода к реализации доступа:

Интерпретация

(dBASE)
Трансляция (Clipper)
Трансляция при первом обращении (НИКА)
(см. пред. слайд)

5.5.7. Оптимизация времени доступаТри подхода к реализации доступа: Интерпретация  (dBASE) Трансляция (Clipper) Трансляция при первом обращении

Слайд 29

5.5.8. Индексация в ООБД и XML DB


Люди
ФИО
Адрес





ФИО


Люди

R

№ пасп

ФИО
№ пасп
Обычный инверсный

вход

5.5.8. Индексация в ООБД и XML DBЛюдиФИОАдресФИОЛюдиR№ паспФИО№ паспОбычный инверсный вход

Слайд 30

Люди
ФИО
Адрес



Инверсный вход в ООБД
№ пасп






Образов
Работы
Адрес
Адрес



ФИО

А

ФИО


Адр

А

Адр
Индекс

ЛюдиФИОАдресИнверсный вход в ООБД№ паспОбразовРаботыАдресАдресФИОАФИОАдрААдрИндекс

Слайд 31Индекс в СУБД НИКА

Индекс в СУБД НИКА

Слайд 32Индекс в СУБД НИКА

Индекс в СУБД НИКА

Слайд 33INDEX
A . . .
ai . . .
a1 .

. . .
aN
B . . .
A=ai
A=ai

A=ai

A=ai
B=bk
B=bk
B=bk
bk
Пример двух веток индекса:


A = ai
B = bk













Индекс в СУБД НИКА

INDEXA  . . .ai . . .a1  . . . .aNB . . .A=aiA=aiA=aiA=aiB=bkB=bkB=bkbkПример двух

Слайд 34INDEX
A . . .
ai . . .
a1 .

. . .
aN
B . . .
A=ai
A=ai

A=ai

A=ai
B=bk
B=bk
B=bk
bk












Пример выполнения логических операций:
«И»

- объекты ,
«ИЛИ» - и объекты.




Индекс в СУБД НИКА

INDEXA  . . .ai . . .a1  . . . .aNB . . .A=aiA=aiA=aiA=aiB=bkB=bkB=bkbkПример выполнения

Слайд 35Теорема. Такая организация индекса необходима и достаточна для поиска без

перебора любых объектов с любыми условиями на реквизиты.

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

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика