- •Лекция №1 Введение. Основные понятия.
- •Субд ms Access
- •Лекция 2. Системы управления бд
- •1. Файловые системы.
- •2. История развития.
- •3. Функции субд
- •4. Типовая организация современной субд
- •5. Архитектура многопользовательских субд.
- •Лекция №3 Процесс разработки бд.
- •Логическая структура бд преобразуется в физическую с учетом аспектов производительности. Элементы модели "сущность-связь"
- •Основные понятия er-диаграмм
- •Пример разработки простой er-модели
- •Концептуальные и физические er-модели
- •Лекция №4 Реляционная модель данных
- •Аномалии отношений
- •Лекция №5 Нормализация отношений
- •4Нф (Четвертая Нормальная Форма)
- •Лекция №6 Реляционная алгебра.
- •Типы данных.
- •Создание таблиц.
- •Команды модификации.
- •Встроенные функции
- •Группировка и агрегаты.
- •Связи между таблицами.
- •Операторы работы с множествами
- •Подзапросы.
- •Условная логика
- •Представления и хранимые процедуры и триггеры.
- •Конструкция while
- •Транзакции и типы хранилищ бд.
- •Тестирование производительность InnoDb и MyIasm
- •Применение
- •Индексы.
- •1. Чтение данных с диска
- •2. Поиск данных в MySql
- •3. Сортировка данных
- •4. Выбор индексов в MySql
- •Уникальные индексы
- •5. Составные индексы
- •Устройство составного индекса
- •Поиск по диапазону
- •Сортировка
- •6. Использование explain для анализа индексов
- •Когда создавать индексы?
- •Администрирование сервера.
- •Разделение прав пользователей;
Лекция №1 Введение. Основные понятия.
Пример1. Мария Иванова. Профессиональный маляр, владеет и управляет небольшой компанией состоящей из нее самой и, когда это необходимо, наемных работников. Она занимается этим уже 10 лет. Однажды Марии позвонил Петр и говорит: «Здравствуйте Мария, вы красили мой дом три года назад!» Мария была в ужасе. Она красит по 50 домов в год, к тому же иногда занимается покраской дворовых территорий, рисует в детских садах и делает ремонты в подъезде. Но Петр продолжил: «Моя соседка хочет, чтобы вы сделали в ее доме что-то подобное». Для того, чтобы разгрузить свою память и организовать учет своей деятельности, Мария наняла консультанта для разработки БД, чтобы она могла хранить ее на своем компьютере.
Записью и получением этих данных занимается специальная программа, называемая системой управления базами данных (СУБД). К сожалению, эти данные представлены в форме таблиц и не слишком полезны и понятны Марии. Ей хотелось бы знать кому, когда и что она выполняла, какие материалы использовала, где заказывала и т.п. Для этого разработчик создает для нее прикладную программу, которая обрабатывает формы ввода-вывода и формирует необходимые отчеты.
База Марии является однопользовательской, поскольку в каждый конкретный момент времени к ней обращается один человек. Иногда этого недостаточно, требуется, чтобы одновременно к базе могли обращаться несколько человек.
Пример2. Бюро проката инструментов использует БД для учета сдаваемых в аренду строительных инструментов. В этой фирме работает несколько менеджеров, каждый из которых, в тот или иной момент времени занимается выдачей инструмента в прокат. Каждый менеджер должен иметь доступ к данным и не должен мешать выдавать инструмент другому менеджеру. Здесь потребуется многопользовательская БД. Бюро проката имеет локальную сеть, соединяющую несколько персональных компьютеров с сервером на котором находится БД. У каждого из служащих есть доступ к прикладной программе, позволяющей работать с тремя видами форм: информация о клиентах, об инструментах и договор аренды.
Пример3. Рассмотрим еще более обширное приложение технологии баз данных – государственное бюро регистрации автомобилей и выдачи водительских удостоверений. В него входит 52 центра, где принимают экзамены и осуществляют выдачу и продление водительских удостоверений и 37 офисов, занимающиеся регистрацией транспорта. Персонал этих офисов использует в своей работе БД. Прежде чем конкретному лицу будут выданы права, в БД просматривается информация об этом лице на предмет наличия нарушений ПДД. Точно также просматриваются транспортные средства. У такой БД сотни пользователей. База является большой и сложной. Также есть несколько видов сотрудников, каждый из которых имеет различный доступ к информации, следовательно, прикладная программа содержит ряд интерфейсов.
Пример4. Небольшой курортный остров на западном побережье Канады. Для продвижения на мировой туристический рынок остров разработал сайт. Сайт преследует три цели: реклама острова, его достопримечательностей, мест отдыха и развлечений; регистрацию посетителей для последующей рассылки им рекламной информации; прием запросов на бронирование мест в гостиницах, отелях и т.п. Для поддержки этого сайта используются две БД. Одна БД рекламная – содержит фото, видео материалы, у этой базы два типа пользователей. Обычные посетители сайта имеют доступ к этой базе только для чтения, пользуясь стандартными браузерами, они могут исследовать сайт. В этом им помогает прикладная программа, извлекающая данные из рекламной БД. Другой тип пользователей рекламной БД – это сотрудники, которые осуществляют поддержку сайта. Кроме рекламной БД, прикладная программа также обращается к БД клиентов. В ней хранятся сведения о клиентах, их запросы на бронирование и обслуживание. Когда посетитель сайта вводит запрос на бронирование, прикладная программа отправляет этот запрос соответствующей фирме
Три аспекта отличают эту БД от всех остальных:
Хранение мультимедийных данных.
Использование браузера для отображения информации из БД.
Применение web-ориентированной технологии для передачи данных между браузером, приложением и БД.
Приведенные примеры демонстрируют возможные варианты использования технологий баз данных.
Итак, давайте подведем итоги. Что же такое база данных?
Можно сказать, что БД – это набор сведений, которые каким-то образом структурированы и где-то хранятся. Но мы можем то же самое сказать о библиотеке, например, или об обычном шкафе. Поэтому мы будем использовать данный термин в более конкретном значении.
База данных – это самодокументированное собрание интегрированных записей.
Что значит самодокументированность? Это значит, что БД хранит не только данные пользователя, но и также информацию о том, как эти данные хранятся, т.е. описание собственной структуры или метаданные.
Метаданные хранят информацию о том, какие объекты есть в БД, какого они типа данных, из чего они состоят, как они между собой взаимосвязаны.
В
се
примеры, которые мы с вами рассмотрели,
имеют общую структуру:
Пользователь взаимодействует с прикладной программой, которая взаимодействует с СУБД, которая обращается к БД.
На сегодняшний день возможности и функции многих СУБД расширились и они могут самостоятельно выполнять многие задачи прикладных программ.
СУБД – это совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями.
Х
арактеристики
и функции СУБД можно разделить на три
подсистемы: подсистема средств
проектирования, подсистему средств
обработки и ядро СУБД.
Подсистема средств проектирования – это набор инструментов, упрощающих проектирование и реализацию БД и их приложений. Как правило, это средства для создания таблиц, форм, запросов и отчетов. (Создание запроса)
Подсистема обработки занимается обработкой компонентов приложения, созданных с помощью средств проектирования. (Выполнение запроса)
Ядро СУБД – посредник между данными и подсистемами средств проектирования и обработки. Ядро преобразует запросы в команды операционной системы, выполняющие запись и чтение данных с физического носителя. Ядро также участвует в управлении блокировками, транзакциях, резервном копировании и восстановлении.
В настоящее время все СУБД делят на две большие категории: файл-серверные и клиент-серверные.
Дадим краткую характеристику этим системам.
MS SQL Server
Является программной системой, предназначенной не для разработки приложений, а для управления многопользовательскими БД с архитектурой клиент-сервер (объем базы – несколько Тбайт). Система позволяет управлять базами данных (тиражировать данные, вести их параллельную обработку, получать и передавать данные по ЛВС, Интернет), обеспечивает взаимодействие с клиентскими приложениями, функционирующими на разной технической платформе.
Oracle
Является программной системой, предназначенной для разработки корпоративных БД и информационных систем, объемы информации в которых превышают Тбайт. Основу системы составляет SQL. Для данной СУБД характерна высокая степень защиты данных.
