
- •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.Подсистема типичной обработки транзакций.
46.Защита баз данных.
Защита БД должна охватывать след. моменты:
1)используемое оборудование; 2)ПО; 3)Персонал; 4)Данные;
Целью защиты БД является БД д/б предотвращение таких нарушений, как:
1.похищение и фальсификация инфы;
2.утрата конфиденциальности;
3.нарушение неприкосновенности личных данных;
4.утрата целостности данных;
5.потеря доступных данных.
Комп. средства контроля в многопользовательской системе включают:
1)авторизированных пользователей; 2)создание представлений; 3)средства копирования, восстановления данных; 4)инструмент поддержки целостности данных; 5) шифрование.
Авторизация пользователей заключается в предоставлении им определенных прав, кот. позволяют получить доступ к системе или отдельных ее объектов.
Аутентификация – это проверка, явл. Ли пользователь тем, за кого себя выдает. Представление явл. Динамическим результатом одной или нескольких реляционных операций, кот. выполняются над базовыми отношениями с целью создания нового отношения.
При создании приложения пользователя необходимо осуществить резервное копирование инфы, что представляет процесс создания копии БД и ее файлы журналов. Важный момент в организации защиты БД – создание средств целостности данных, чтобы не возникло противоречий. В СУБД имеются встроенные средства для обеспечения целостности данных: создание схем данных и специальные операторы в SQL-языке.
Шифрование или кодирование организовывается с использованием спец алгоритмов, кот. делают данные непригодными для чтения с пом. любой программы, кот. не имеет ключа шифрования.
Некомп. средства контроля включают разраб-ку специальных мер обеспечения безопасности, контроль за персоналом, контроль за физическом доступом, заключением гарантийных договоров и сопроводительных договоров.
Создание //-но статической БД также используется для обеспечения защиты БД. Статическая БД генерирует статистику про работе с БД. Основной проблемой по работе с БД заключается в иск возможности получить ответы на недопустимые запросы.
Неприкосновенные личные данные определяют право каждого человека на защиту его личных данных от сбора, хранения и опубликовании.
Защита БД меры по защите БД реализовывается в соот. с требованиями заказчика. В Access поддерживается 2 традиционного метода защиты БД:
1)установка пароля на открытую БД;
2)организация защиты на уровне пользователь.
По умолчанию в системе имеется 2 рабочих групп: админы и пользователи. При необходимости м создать дополнительные группы. Чтобы определить, как пользователи и члены рабочей группы м работать с тем или иным об-том БД, используется окно User and Group Permissions. В этом окне задаются права доступа к об-там БД.
Заключительным моментом является мониторинг системы и определения ее кач-ва ее функц-ти.
К этому этапу м приступать, когда БД реализовать и некоторое время эксплуатируется. В ходе эксплуатирования системы м выявить сбойные ситуации ее функц-ния или возникновенияе новых требований к процессу функц-ния системы.
47.Оптимизация запросов.
Оптимизация запросов — это 1) функция СУБД, осуществляющая поиск оптимального плана выполнения запросов из всех возможных для заданного запроса, 2) процесс изменения запроса и/или структуры БД с целью уменьшения использования вычислительных ресурсов при выполнении запроса. Один и тот же результат может быть получен СУБД различными способами (планами выполнения запросов), которые могут существенно отличаться как по затратам ресурсов, так и по времени выполнения. Задача оптимизации заключается в нахождении оптимального способа.
В реляционной СУБД оптимальный план выполнения запроса — это такая последовательность применения операторов реляционной алгебры к исходным и промежуточным отношениям, которое для конкретного текущего состояния БД (её структуры и наполнения) может быть выполнено с минимальным использованием вычислительных ресурсов.
В настоящее время известны две стратегии поиска оптимального плана:
грубой силы путём оценки всех перестановок соединяемых таблиц;
на основе генетического алгоритма путём оценки ограниченного числа перестановок.
Планы выполнения запроса сравниваются исходя из следующих факторов:
потенциальное число строк, извлекаемое из каждой таблицы, получаемое из статистики;
наличие индексов;
возможность выполнения слияний (merge-join).
В общем случае соединение выполняется вложенными циклами. Однако этот алгоритм может оказаться менее эффективен, чем специализированные алгоритмы. Если у сливаемых таблиц есть индексы по соединяемым полям, или одна или обе таблицы достаточно малы, чтобы быть отсортированными в памяти, то исследуется возможность выполнения слияний.
Стратегии оптимизации: как уже отмечалось, суть оптимизации заключается в поиске минимума функции стоимости от перестановки таблиц. Независимо от стратегии, оптимизатор обязан уметь анализировать стоимость для произвольной перестановки, в то время как сами перестановки для анализа предоставляются другим алгоритмом. Исследуемое множество перестановок может отличаться от всего пространства перестановок. Исходя из этого, обобщённый алгоритм работы оптимизатора можно записать так: ТекущийПорядокТаблиц := НайтиИсходныйПорядокТаблиц;
ЛучшийПорядокТаблиц := ТекущийПорядокТаблиц;
НаименьшаяСтоимость := МаксимальноВозможнаяСтоимость;
Выполнять
Стоимость := ОценитьСтоимость(ТекущийПорядокТаблиц);
Если Стоимость < НаименьшаяСтоимость То
ЛучшийПорядокТаблиц := ТекущийПорядокТаблиц;
НаименьшаяСтоимость := Стоимость;
КонецЕсли;
ТекущийПорядокТаблиц := НайтиСледующийПорядокТаблиц;
Пока (ДоступенСледующийПорядокТаблиц);