Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основные свойства БД и СУБД

Основные требования к обработке данных средствами СУБД

СУБД. Основные свойства и функциональные возможности

Тема 7

Примеры нормализации отношений

 

Вторая нормальная форма (2NF)

Пример: БУЛОЧНАЯ.

Хп/завод Продукт Цена Количество
Пекарь Батон нарезной    
Каравай Батон нарезной    
Кушелевский Батон нарезной    
Кушелевский Хлеб Дарницкий    
Каравай Хлеб Дарницкий    

 

Составной ключ: Хлебозавод + Продукт.

Неключевые атрибуты: Цена, Количество.

Атрибут Цена зависит и от части ключа – Продукт.

Для устранения неполной функциональной зависимости необходимо разделить исходное отношение в 1-й NF на 2, не содержащих неполной зависимости.

 

1-е отношение: Хлебозавод, Продукт, Количество.

Хп/завод Продукт Количество
Пекарь Батон нарезной  
Каравай Батон нарезной  
Кушелевский Батон нарезной  
Кушелевский Хлеб Дарницкий  
Каравай Хлеб Дарницкий  

 

2-е отношение: Продукт, Цена.

Код продукта Продукт Цена
Б01н Батон нарезной  
Х05д Хлеб Дарницкий  

 

Как правило, во 2-е отношение вводится Код продукта, тогда в 1-м тоже будет Код продукта.

Третья нормальная форма (3NF)

 

Пример: СОТРУДНИК

ФИО (ключ) Должность Оклад
Мирошин Начальник отдела 1000 у.е.
Евстафьв Экономист 500 у.е.
Сакутов Экономист 500 у.е.
Теглин Экономист 500 у.е.

 

Должность зависит от ФИО, а Оклад – от Должности для данной фамилии, т.е. Оклад транзитивно зависит от ФИО через неключевой атрибут Должность.

Для устранения 3NF следует разделить исходное отношение на 2:

 

 

ФИО Должность   Должность Оклад
Мирошин Начальник отдела Начальник отдела 1000 у.е.
Евстафьв Экономист Экономист 500 у.е.
Сакутов Экономист Экономист 500 у.е.
Теглин Экономист Экономист 500 у.е.

 

Существуют специальные методы нормализации (разработан аппарат) и во всех современных СУБД, в том числе в Access есть возможность создать исходную ненормализованную таблицу и в результате анализа получить варианты нормализованных отношений и устранить избыточность

 

Система управления базами данных (СУБД) – это комплекс программ, предназначенный для создания и ведения (обслуживания) баз данных, а также для доступа к данным и для их обработки.

Основными средствами СУБД, предназначенными для пользователей, являются:

· средства описания структуры базы данных (средства описания структур таблиц, например, в MS Access);

· средства конструирования экранных форм, предназначенных для ввода и просмотра данных;

· средства создания запросов для выборки данных;

· средства формирования отчетов для вывода на печать результатов обработки данных;

· языковые средства и средства разработки приложений (см. п. 2.5.2).

Таким образом, СУБД выполняет роль посредника между пользователями приложений и данными (рис 7.1).

 

Пользователь 2
Пользователь 1
Пользователь N
Пользователь 3
...

 
 

 


Данные

 

 

Рис. 7.1. Схема взаимодействия пользователей с БД

 

Основными свойствами СУБД и баз данных являются:

1. Обеспечение независимости программ от данных, позволяющей сохранить программы при модификации структуры БД.

2. Непротиворечивость данных; целостность БД; возможность многоаспектного доступа.

3. Защита и восстановление данных при аварийных ситуациях, аппаратных и программных сбоях, ошибках пользователя.

4. Защита данных от несанкционированного доступа средствами разграничения доступа для различных пользователей.

5. Наличие языка запросов высокого уровня, ориентированного на конечного пользователя, который обеспечивает вывод информации из БД по любому запросу, и предоставление ее в виде соответствующих отчетных форм, удобных для пользователя.

Поясним свойства 2 - 4. В многопользовательской системе с БД параллельная обработка заключается в предоставлении одновременного доступа к таблицам, полям, записям БД многим пользователям и приложениям. Для этого в сетевых версиях централизованных СУБД существуют специальные механизмы: синхронизации транзакций и управления доступом. Транзакция – это последовательность операций над БД, рассматриваемых СУБД как единое целое. Либо транзакция успешно выполняется, и СУБД фиксирует изменения БД, произведенные этой транзакцией, во внешней памяти, либо ни одно из этих изменений никак не отражается на состоянии БД.

Механизмы синхронизации транзакций основаны на технике блокирования ресурсов. Они позволяют производить обновление данных при параллельной работе пользователей (два пользователя обновляют одну и ту же запись, но разные поля, или один пользователь блокирует строку для обновления, а другой может ее читать). Однако в результате конфликтов между двумя или более транзакциями по доступу к объектам БД возможны тупиковые ситуации, и в таких случаях необходимо выполнять откат (ликвидировать все изменения, произведенные в БД) одной или более транзакций.

Механизмы управления доступом обеспечивают конкретным пользователям операции над БД в рамках тех полномочий, которые им предоставлены. Полномочия заключаются в возможности либо просто считывать, либо еще и изменять, либо и удалять, и создавать объекты БД.

Восстановление данных требуется после аппаратных и программных сбоев. Обычно рассматриваются два возможных вида аппаратных сбоев: мягкие сбои, которые можно трактовать как внезапную остановку работы компьютера (например, аварийное выключение питания) и жесткие сбои, характеризуемые потерей информации на носителях внешней памяти. Примерами программных сбоев могут быть: аварийное завершение работы СУБД (по причине ошибки в программе или в результате некоторого аппаратного сбоя) или аварийное завершение пользовательской программы, в результате которого некоторая транзакция остается незавершенной.

В любом случае для восстановления БД нужно располагать некоторой дополнительной информацией. Наиболее распространенным методом поддержания такой избыточной информации является ведение журнала изменений БД.

Журнал – это особая часть БД, недоступная пользователям СУБД, в которую поступают записи обо всех изменениях основной части БД. При этом придерживаются стратегии «упреждающей» записи в журнал.

При мягком сбое во внешней памяти основной части БД могут находиться объекты, модифицированные транзакциями, не закончившимися к моменту сбоя, и могут отсутствовать объекты, модифицированные транзакциями, которые к моменту сбоя успешно завершились (по причине использования буферов оперативной памяти, содержимое которых при мягком сбое пропадает). Для восстановления сначала производят откат незавершенных транзакций, а потом повторно воспроизводят те операции завершенных транзакций, результаты которых не отображены во внешней памяти.

Для восстановления БД после жесткого сбоя используют журнал и архивную копию БД (полную копию БД к моменту начала заполнения журнала). Восстановление БД состоит в том, что, исходя из архивной копии, по журналу воспроизводится работа всех транзакций, которые закончились к моменту сбоя.

 

<== предыдущая лекция | следующая лекция ==>
Третья нормальная форма | Языковые средства СУБД: ЯОД и ЯМД
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 4886; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.