Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Надмірне дублювання даних і аномалії




Проблеми при проектуванні баз даних

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

Логічне проектування полягає у визначенні числа і структури таблиць, формуванні запитів до БД, визначенні типів звітних документів, розробці алгоритмів обробки інформації, створенні форм для введення і редагування даних в базі і вирішенні ряду інших завдань.

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

При проектуванні структур даних для автоматизованих систем можна виділити три основні підходи:

1. Збір інформації про об'єкти завдання, що вирішується в рамках однієї таблиці (одного відношення) і подальша декомпозиція її на декілька взаємозв'язаних таблиць на основі процедури нормалізації відносин.

2. Формулювання знань про систему (визначення типів початкових даних і їх взаємозв'язків) і вимог до обробки даних, отримання за допомогою САSЕ-системы (системи автоматизації проектування і розробки баз даних) готової схеми БД або навіть готової прикладної інформаційної системи.

3. Структуризація інформації для використання в інформаційній системі в процесі проведення системного аналізу на основі сукупності правив і рекомендацій.

Надмірне дублювання даних і аномалії

Слід розрізняти просте (ненадмірне) і надмірне дублювання даних. Наявність першого з них допускається в базах даних, а надмірне дублювання даних може приводити до проблем при обробці даних. Приведемо приклади обох варіантів дублювання.

Приклад ненадмірного дублювання даних представляє приведене на мал.1 відношення С_Т з атрибутами Співробітник і Телефон. Для співробітників, що знаходяться в одному приміщенні, номери телефонів співпадають. Номер телефону 4328 зустрічається кілька разів, хоча для кожного службовця номер телефону унікальний. Тому жоден з номерів не є надмірним. Дійсно, при видаленні одного з номерів телефонів буде загублена інформація про те, по якому номеру можна додзвонитися до одного із службовців.

Мал. 1. Ненадмірне дублювання

Приклад надмірного дублювання (надмірності) представляє приведене на мал.2а відношення С_Т_Н, яке, на відміну від відношення С_Т, доповнене атрибутом Н_комн (номер кімнати співробітника). Природно припустити, що всі службовці в одній кімнаті мають один і той же телефон. Отже, в даному відношенні є надмірне дублювання даних. Так, у зв'язку з тим, що Сидоров і Егоров знаходяться в тій же кімнаті, що і Петров, їх номери можна дізнатися з кортежу з відомостями про Петрова.

На мал.2б приведений приклад невдалого відношення С_Т_Н, в якому замість телефонів Сидорова і Егорова поставлені прочерки (невизначені значення). Невдала подібного способу виключення надмірності полягає в наступному.

По-перше, при програмуванні доведеться витратити додаткові зусилля на створення механізму пошуку інформації

Мал 2. Надмірне дублювання

для прочерків таблиці.

По-друге, пам'ять все одно виділяється під атрибути з прочерками, хоча дублювання даних і виключено.

По-третє, що особливо важливе, при виключенні з колективу Петрова кортеж з відомостями про нього буде виключений з відношення, а значить, знищена інформація про телефон 111-ої кімнати, що неприпустимо.

Можливий спосіб виходу з даної ситуації приведений на мал 3. Тут показано два відношення С_Н і Н_Т, отримані шляхом декомпозиції початкового відношення С_Т_Н. Перше з них містить інформацію про номери кімнат, в яких розташовуються співробітники, а друге - інформацію про номери телефонів в кожній з кімнат. Тепер, якщо Петрова і звільнять з установи і, як наслідок цього, видалять всяку інформацію про нього з баз даних установи, це не приведе до втрати інформації про номер телефону в 111-ій кімнаті.

 

Мал. 3. Виключення надмірного дублювання

Надмірне дублювання даних створює проблеми при обробці кортежів відношення, названі Е. Коддом «аномаліями оновлення відношення». Він показав, що для деяких відносин проблеми виникають при спробі видалення, додавання або редагування їх кортежів.

Аномаліями називатимемо таку ситуацію в таблицях БД, яка приводить до суперечностей в БД або істотно ускладнює обробку даних.

Виділяють три основні види аномалій: аномалії модифікації (або редагування), аномалії видалення і аномалії додавання.

Аномалії модифікації виявляються в тому, що зміна значення одного даного може спричинити проглядання всієї таблиці і відповідну зміну деяких інших записів таблиці.

Аномалії видалення полягають в тому, що при видаленні якого-небудь даного з таблиці може пропасти і інша інформація, яка не пов'язана безпосередньо з даним, що видаляються.

Аномалії додавання виникають у випадках, коли інформацію в таблицю не можна помістити до тих пір, поки вона неповна, або вставка нового запису вимагає додаткового перегляду таблиці.

Другим прикладом виникнення аномалії додавання може бути ситуація включення в таблицю нового співробітника. При додаванні таких записів для виключення суперечностей бажано перевірити номер телефону і відповідний номер кімнати хоч би з одним із співробітників, що сидять з новим співробітником в тій же кімнаті. Якщо ж станеться, що у декількох співробітників, що сидять в одній кімнаті, є різні телефони, то взагалі не ясно, що робити (чи то в кімнаті декілька телефонів, чи то якийсь з номерів помилковий).


Поделиться:

Дата добавления: 2015-08-05; просмотров: 133; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты