Автор работы: Пользователь скрыл имя, 19 Декабря 2011 в 22:47, контрольная работа
Система с базой данных – это любая информационная система на базе компьютера, в которой данные могут совместно использоваться многими приложениями.
Информационная система – автоматическая система, организующая данные и выдающая информацию.
1. Понятие базы данных.
2. Трехуровневая архитектура базы данных.
3. Жизненный цикл базы данных.
4. Архитектура СУБД.
5. Реляционная модель данных.
6. Проектирование реляционных баз данных.
7. Нормальные формы отношений.
8. Реляционная алгебра.
4) Заполнение базы данных.
5) Создание прикладных программ, контроль управления.
6) Обучение пользователей.
6. Оценка и усовершенствование схемы БД. Включает опрос пользователей с целью выяснения функциональных неучтенных потребностей. При необходимости вносятся изменения, добавление новых программ и элементов данных по мере изменения и расширения потребностей.
Таким образом, ЖЦБД включает в себя:
· Изучение предметной области и представление соответствующей документации (1-3).
· Построение инфологической модели (4).
· Реализация (5).
· Оценка работы
и поддержка БД (6).
4.
Архитектура СУБД.
Рис. Главные компоненты
СУБД
Данные, метаданные — содержат не только данные, но и информацию о структуре данных (метаданные). В реляционной СУБД метаданные включают в себя системные таблицы (отношения), имена отношений, имена атрибутов этих отношений и типы данных этих атрибутов.
Часто СУБД
поддерживает индексы данных. И
Менеджер памяти — получает требуемую информацию из места хранения данных и изменяет в нем информацию по требованию расположенных выше уровней системы.
В простых системах БД менеджером памяти может служить система файлов операционной системы. Однако для повышения эффективности, СУБД обычно осуществляет прямой контроль памяти. Менеджер памяти состоит из двух компонентов:
· Менеджер файлов контролирует расположение файлов на диске и получает блок или блоки, содержащие файлы, по запросу менеджера буфера (диск в общем случае делится на дисковые блоки — смежные области памяти, содержащие от 4000 до 16000 байт).
· Менеджер буфера управляет основной памятью. Он получает блоки данных с диска через менеджер файлов и выбирает страницу основной памяти для хранения конкретного блока. Он может временно сохранять дисковый блок в основной памяти, но возвращает его на диск, когда страница основной памяти нужна для другого блока. Страницы также возвращаются на диск по требованию менеджера транзакций.
Процессор «запроса» — обрабатывает запросы и запрашивает изменения данных или метаданных. Он предлагает лучший способ выполнения необходимой операции и выдает соответствующие команды менеджеру памяти.
Процессор (менеджер) запросов превращает запрос или действие с БД, которые могут быть выполнены на очень высоком уровне (например, в виде запроса SQL), в последовательность запросов на хранимые данные типа отдельных кортежей отношения или частей индекса на отношении. Часто самой трудной частью обработки запроса является его организация, т. е. выбор хорошего плана запроса или последовательности запросов к системе памяти, отвечающей на запрос.
Менеджер транзакций — отвечает за целостность системы и должен обеспечить одновременную обработку многих запросов, отсутствие интерференции запросов (сложение, min, max) и защиту данных в случае выхода системы из строя. Он взаимодействует с менеджером запросов, т. к. должен знать, на какие данные воздействуют текущие запросы (для избежания конфликтных ситуаций), и может отложить некоторые запросы и операции для избежания конфликтов. Менеджер транзакций взаимодействует также с менеджером памяти, т. к. схемы защиты данных обычно включают в себя хранение файла регистрации изменений данных. При правильном порядке выполнения операции файл регистрации будет содержать запись изменений, поэтому можно заново выполнить даже те изменения, которые не достигли диска из-за сбоя в системе.
Типичные
СУБД позволяют пользователю сгруппировать
несколько запросов и/или изменений
в одной транзакции. Транзакция
Как правило,
система БД поддерживает одновременно
множество транзакций. Именно правильное
выполнение всех таких транзакций и
обеспечивает менеджер
транзакций. Правильное выполнение
транзакций обеспечивается ACID-
· атомарность — выполнение либо всех транзакций, либо ни одной из них (например, изъятие денег из банкомата и внесение соответственного дебета в счет клиента должны быть единственной атомарной транзакцией, не допускается выполнение каждой из этих операций по отдельности);
· непротиворечивость — состояние, при котором данные соответствуют всем возможным ожиданиям (например, условие непротиворечивости для БД авиационных линий состоит в том, что ни одно из мест в самолете не бронируется для двух пассажиров);
· изоляция — при параллельном выполнении двух или более транзакций их результаты должны быть изолированы друг от друга. Одновременное выполнение двух транзакций одновременно не должно привести к результату, которого не было бы, если они выполнялись последовательно (например, при продаже билетов на один и тот же рейс в случае свободного последнего места при одновременном запросе двух агентов, запрос одного должен быть выполнен, другого — нет);
· долговременность — после завершения транзакции результат не должен быть утрачен в случае сбоя системы, даже если этот сбой происходит сразу после завершения транзакции.
Рассмотрим также 3 типа обращения к СУБД:
1. Запросы — вопросы по поводу данных могут генерироваться двумя способами:
a) с помощью общего интерфейса запросов (например, реляционная СУБД допускает запросы SQL, которые передаются процессору запросов, а также получает ответы на них);
б) с помощью интерфейсов прикладных программ — запросы передаются через специальный интерфейс (через этот интерфейс нельзя передавать произвольные запросы);
2. Модификаци
3. Модификаци
Архитектура клиент/сервер. Во многих вариантах современного ПО реализуется архитектура клиент/сервер: один процесс (клиент) посылает запрос для выполнения другому процессу (серверу). Как правило, БД часто разделяется на процесс сервера и несколько процессов клиента.
В простейшей
архитектуре клиент/сервер вся СУБД
является сервером, за исключением
интерфейсов запроса, которые взаимодействуют
с пользователем и посылают запросы
или другие команды на сервер. Например,
реляционная СУБД часто использует
языкSQL для представления запросов от клиента
к серверу. Затем сервер БД предоставляет
клиенту ответ в виде таблицы (отношения).
Существует тенденция увеличения нагрузки
на клиента, т. к. при наличии множества
одновременно работающих пользователей
БД с сервером могут возникнуть проблемы.
5. Реляционная модель данных.
РМД некоторой предметной области представляет собой набор отношений, изменяющихся во времени. При создании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними.
Отношение представляет собой двумерную таблицу, содержащую некоторые данные. Математически под N-арным отношением Rпонимают множество декартова произведения D1 D2 … Dn множеств (доменов) D1, D2, …, Dn ( ), необязательно различных:
R
где D1 D2 … Dn – полное декартово произведение, т.е. набор всевозможных сочетаний из n элементов каждое, где каждый элемент берется их своего домена.
Домен - это семантическое понятие. Домен можно рассматривать как подмножество значений некоторого типа данных имеющих определенный смысл. Домен характеризуется следующими свойствами:
· Домен имеет уникальное имя (в пределах базы данных).
· Домен определен на некотором простом типе данных или на другом домене.
· Домен может иметь некоторое логическое условие, позволяющее описать подмножество данных, допустимых для данного домена.
· Домен несет определенную смысловую нагрузку.
Атрибут отношения есть пара вида <Имя_атрибута : Имя_домена>. Имена атрибутов должны быть уникальны в пределах отношения. Часто имена атрибутов отношения совпадают с именами соответствующих доменов.
Отношение R, определенное на множестве доменов, содержит две части: заголовок и тело.
Заголовок отношения – это фиксированное количество атрибутов отношения:
Заголовок
отношения описывает декартово
произведение доменов, на котором задано
отношение. Заголовок статичен, он не
меняется во время работы с базой
данных. Если в отношении изменены,
добавлены или удалены
Тело
отношения содержит множество кортежей отношения.
Каждый кортеж отношения представляет
собой множество пар вида <Имя_атрибута
: Значение_атрибута>:
таких что значение атрибута принадлежит домену . Тело отношения представляет собой набор кортежей, т.е. подмножество декартового произведения доменов. Таким образом, тело отношения собственно и является отношением в математическом смысле слова. Тело отношения может изменяться во время работы с базой данных - кортежи могут изменяться, добавляться и удаляться.
Отношение
обычно записывается в виде:
или короче
или просто
Число атрибутов
в отношении называют степенью
Схемой отношения называется перечень имен атрибутов данного отношения с указанием домена, к которому они относятся:
Если атрибуты принимают значения из одного и того же домена, то они называются -сравнимыми, где – множество допустимых операций сравнений, заданных для данного домена. Например, если домен содержит числовые данные, то для него допустимы все операции сравнения, тогда . Однако, и для доменов, содержащих символьные данные, могут быть заданы не только операции сравнения по равенству и неравенству значений. Если для данного домена задано лексикографическое упорядочение, то он имеет также полный спектр операций сравнения.
Схемы двух
отношений называются эквивален
Информация о работе Архитектура субд. Реляционная модель данных