
- •1. Введение
- •http://sok.susu.ru
- •Курс "Современные технологии разработки СУБД" http://sok.susu.ru/courses/index.html
- •Подписка на новости курса
- •Курс "Современные технологии разработки СУБД" http://sok.susu.ru/courses/index.html
- •Часть 1. Обработка запросов в системах баз данных http://sok.susu.ru/courses/QueryProc/index.html
- •Презентации лекций http://sok.susu.ru/courses/QueryProc/lectures/index.html
- •Часть 1. Обработка запросов в системах баз данных http://sok.susu.ru/courses/QueryProc/index.html
- •Справочно-библиографический портал «Информационные технологии» http://bit.sp.susu.ac.ru/elib/view/index.php?id=767
- •Поиск
- •Доступ к полному тексту
- •Схема базы данных «Поставки»
- •Отношение П (Поставщики)
- •Отношение Д (Детали)
- •Отношение А (Ангары)
- •Отношение ПД (Поставки деталей)
- •Пример запроса
- •Как СУБД получает ответ?
- •Схема обработки запроса
- •На пути к физическому плану
- •Основные операции реляционной алгебры
- •Проекция
- •Выборка
- •Прямое произведение
- •Тета-соединение
- •Естественное соединение
- •Возникновение дубликатов
- •Удаление дубликатов
- •Группировка
- •Операции реляционной алгебры в SQL
- •Построение реляционного выражения
- •Представление реляционного выражения в виде логического плана
- •Преобразование логического плана в физический
- •Схема компиляции запроса
- •Оптимизация запроса

© Соколинский Л.Б. |
1. Введение |
03.09.2011 |
Прямое произведение
R
|
A* |
|
B |
|
C |
|
1 |
20 |
100 |
|
|||
2 |
40 |
300 |
|
|||
3 |
20 |
100 |
|
|||
4 |
10 |
300 |
|
|||
|
S |
|
|
|
|
|
|
|
|
|
|
|
|
|
D* |
|
A# |
|
E |
|
|
1 |
|
3 |
|
0.2 |
|
|
2 |
|
1 |
|
0.5 |
|
|
3 |
|
1 |
|
0.5 |
|
|
|
|
|
|
|
|
R×S
R.A* |
B |
C |
D* |
S.A |
E |
1 |
20 |
100 |
1 |
3 |
0.2 |
1 |
20 |
100 |
2 |
1 |
0.5 |
1 |
20 |
100 |
3 |
1 |
0.5 |
2 |
40 |
300 |
1 |
3 |
0.2 |
2 |
40 |
300 |
2 |
1 |
0.5 |
2 |
40 |
300 |
3 |
1 |
0.5 |
3 |
20 |
100 |
1 |
3 |
0.2 |
3 |
20 |
100 |
2 |
1 |
0.5 |
3 |
20 |
100 |
3 |
1 |
0.5 |
4 |
10 |
300 |
1 |
3 |
0.2 |
4 |
10 |
300 |
2 |
1 |
0.5 |
4 |
10 |
300 |
3 |
1 |
0.5 |
|
|
|
|
|
|
Обработка запросов в системах баз данных |
27 |

© Соколинский Л.Б. |
1. Введение |
03.09.2011 |
Тета-соединение
R |
|
|
|
S |
|
|
|
|
|
|
|
|
|
A* |
B |
C |
|
D* |
A# |
E |
1 |
20 |
600 |
|
1 |
3 |
0.2 |
2 |
40 |
300 |
|
2 |
1 |
0.7 |
3 |
20 |
250 |
|
3 |
1 |
0.5 |
4 |
10 |
300 |
|
|
|
|
|
|
|
|
|
|
|
R S
R.A=S.A C>E*1000
R.A* |
B |
C |
D* |
S.A |
E |
1 |
20 |
600 |
3 |
1 |
0.5 |
3 |
20 |
250 |
1 |
3 |
0.2 |
|
|
|
|
|
|
Обработка запросов в системах баз данных |
28 |

© Соколинский Л.Б. |
1. Введение |
Естественное соединение
R |
|
|
|
S |
|
|
|
|
|
A* |
B |
C |
|
D* |
A# |
E |
|
|
|
1 |
20 |
100 |
|
1 |
3 |
0.2 |
|
|
|
R S=π*\S.A (R.A=S.AR S ) |
|||||||||
2 |
40 |
300 |
|
2 |
1 |
0.5 |
|
||
3 |
20 |
100 |
|
3 |
1 |
0.5 |
|
|
|
|
|||||||||
4 |
10 |
300 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R S |
R S |
|
R.A=S.A |
A* |
B |
C |
D* |
E |
|
|
|
|
|
1 |
20 |
100 |
2 |
0.5 |
1 |
20 |
100 |
3 |
0.5 |
3 |
20 |
100 |
1 |
0.2 |
|
|
|
|
|
R.A* |
B |
C |
D* |
S.A |
E |
1 |
20 |
100 |
2 |
1 |
0.5 |
1 |
20 |
100 |
3 |
1 |
0.5 |
3 |
20 |
100 |
1 |
3 |
0.2 |
|
|
|
|
|
|
Обработка запросов в системах баз данных |
29 |

© Соколинский Л.Б. |
1. Введение |
03.09.2011 |
Возникновение дубликатов
R
A* |
B |
C |
1 |
20 |
100 |
2 |
40 |
300 |
3 |
20 |
100 |
4 |
10 |
300 |
|
|
|
πB,С(R)
B |
C |
20?100
40 300
20 100
10 300
Обработка запросов в системах баз данных |
30 |