
- •1. 1)Общие сведения о бд и субд
- •2) Основные функции субд
- •4) Уровни представления данных в субд
- •3) Обобщенная архитектура субд
- •5) Sql: история, стандарты
- •6) Языки баз данных
- •7) Язык qbe
- •8) Функциональная зависимость и нормализация отношений
- •9) Использование функций агрегирования в построении запросов
- •10) Модели данных
- •11) Форматирование результатов запросов
- •12) Иерархическая модель
- •13) Ограничения целостности
- •14) Сетевая модель
- •15) Создание, изменение и удаление таблиц средствами sql
- •16) Реляционная модель
- •17) Sql server. Характеристика объектов бд
- •18) Структура реляционных данных
- •19) Системные базы данных
- •1. Отношения: определение, свойства.
- •20) Создание бд в sql server
- •21.Реляционные ключи.
- •22.Основные типы данных.
- •23.Реляционная целостность.
- •24.Индексы: типы, назначение, создание.
- •25.Реляционные языки.
- •26.Подключение бд к sql server.
- •27.Связанные запросы.
- •28.Этапы обработки запросов.
- •29.Поддержка основных правил целостности данных.
- •30.Основные этапы проектирования баз данных.
- •31.Sql server. Характеристика объектов бд.
- •32.Вторая нормальная форма
- •33.Реляционная алгебра. (Унарные операции).
- •34.Концептуальное проектирование.
- •35.Управление транзакциями
- •36.Основные операции реляционной алгебры.
- •37.Обзор процесса нормализации.
- •38.Методология физического проектирования реляционных баз данных.
- •39.Методология концептуального проектирования.
- •40.Методология логического проектирования.
- •41.Обновляемые представления
- •42.Концепция er-модели.
- •43.Представления. Изменение значений с помощью представлений.
- •44.Избыточность данных и аномалии обновления.
- •45. Структура современной субд на примере Microsoft sql Server.
- •46.Защита баз данных.
- •47.Оптимизация запросов.
- •48.Эвристические правила преобразования операций реляционной алгебры.
- •49.Уровни представления данных в субд.
- •50.Подсистема типичной обработки транзакций.
48.Эвристические правила преобразования операций реляционной алгебры.
Операндами операций реляционной алгебры являются отношения, поэтому для их выполнения необходимо просмотреть все кортежи исходного отношения (или отношений). Следствием этого является большая размерность реляционных операций. Уменьшения размерности операций можно достичь, изменяя последовательность выполняемых операций. В качестве примера приведём отношения R1 и R2, содержащие по 1000 кортежей, причём только 10 кортежей в каждом отношении удовлетворяют условию F. Если выполнять следующую последовательность операций:
sF (R1 U R2),
то после выполнения объединения получится 2000 кортежей (если отношения не содержат одинаковых кортежей), а после селекции останется 20 записей. Если изменить последовательность выполнения операций:
sF (R1) U sF (R2),
то после селекции останется по 10 записей из каждого отношения, объединение которых даст 20 требуемых кортежей. Следовательно, не потребуется хранить промежуточный результат в 2000 кортежей и просматривать его для поиска кортежей, удовлетворяющих условию.
Оптимизация выполнения запросов реляционной алгебры основана на понятии эквивалентности реляционных выражений. Два выражения реляционной алгебры считаются эквивалентными, если они описывают одно и то же отображение.Существуют законы, которые в соответствии с этим определением позволяют выполнять эквивалентные преобразования выражений реляционной алгебры:
Закон коммутативности для декартовых произведений:
R1 ґ R2 = R2 ґ R1
Закон коммутативности для соединений (F – условие соединения):
R1 ><F R2 = R2 ><F R1
Закон ассоциативности для декартовых произведений:
(R1ґ R2 ) ґ R3 = R1 ґ (R2 ґ R3)
Закон ассоциативности для соединений (F1,F2 – условия):
(R1 ><F R2 ) >< F R3 = R1 ><F (R2 >< F R3)
Комбинация селекций (каскад селекций):
sF1 (sF2 (R)) = s F1/\F2(R)
Комбинация проекций (каскад проекций):
p A1,A2,...,Am (p B1,B2,...,Bn(R)) = p A1,A2,...,Am (R)
где {Am} М {Bn}.
Перестановка селекции и проекции:
sF (p A1,A2,...,Am (R)) = p A1,A2,...,Am (sF (R))
Перестановка селекции с объединением:
sF (R1 U R2)=sF (R1) U sF (R2)
Перестановка селекции с разностью:
sF (R1 - R2)=sF (R1) - sF (R2)
Перестановка проекции с декартовым произведением:
p A1,A2,...,Am ( R1 ґ R2 ) = p C1,C2,...,Cn(R1) ґ p B1,B2,...,Bk(R2)
где {Cn} М {Am}, {Bk} М {Am} и атрибуты Cn представлены в отношении R1, а атрибуты Bk - в отношении R2.
Перестановка проекции с объединением:
p A1,A2,...,Am ( R1 U R2 ) = p A1,A2,...,Am (R1) U pA1,A2,...,Am (R2)
Перестановка селекции с декартовым произведением:
sF (R1 ґ R2) = sF (R1) ґ R2
если F содержит атрибуты, присутствующие только в R1;
sF (R1 ґ R2) = R1 ґ sF (R2)
если F содержит атрибуты, присутствующие только в R2;
sF (R1 ґ R2) = sF1(R1) ґ sF2 (R2)
если F=F1/\F2, и F1 содержит атрибуты, присутствующие только в R1, а F2 содержит атрибуты, присутствующие только в R2;
sF ( R1 ґ R2 ) = sF2 ( sF1( R1) ґ R2 )
если F=F1/\F2, и F1 содержит атрибуты, присутствующие только в R1, а F2 содержит атрибуты, присутствующие и в R1, и в R2.