Автоматизовані банки даних

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

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

Тому розробки АСУ управління для будь-якої сфери застосування пов'язані насамперед зі створенням автоматизованих банків даних.

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

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

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

Функціонування СУБД засноване на введенні двох рівнів організації бази даних - логічного і фізичного. Ці два рівні відповідають двом аспектам організації даних: фізичній з точки зору зберігання даних в пам'яті ЕОМ і логічному з точки зору використання даних в прикладних програмах.

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

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

Найбільш загальне уявлення про базу даних полягає в наступному: база даних (data base) - це сукупність збережених у зовнішній пам'яті ЕОМ великого обсягу даних; база даних є "інтегрованої", тобто представляє собою комплекс взаємопов'язаних даних, призначений для забезпечення інформаційних потреб різних користувачів, кожен з яких має відношення до окремих, можливо, спільно використовуваних частин даних; робота з базою даних може здійснюватися або в пакетному режимі, або з віддалених терміналів в режимі реального часу.

Таким чином, база даних - це сукупність збережених в пам'яті ЕОМ і спеціальним чином організованих взаємопов'язаних даних, що відображають стан предметної області. База даних також призначена для забезпечення інформаційних потреб певних користувачів.

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

Інформація про об'єкт або відносинах об'єктів, виражена в знаковій формі, утворює дані. Ці дані можуть бути сприйняті людиною або будь-яким технічним пристроєм і відповідним чином інтерпретовані.

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

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

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

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

Розрізняють три основних види моделі даних: мережеву, ієрархічну і реляційну.

Мережева модель малює досить наочну картину реальної дійсності і, крім того, претендує на те, що може бути природним чином відображено в довготривалій пам'яті обчислювальної (інформаційної) системи. Наприклад, запис "Деталь" може містити три поля: шифр, найменування і маса деталі. Найменування деталі може бути пов'язано з полем характеристика операції із запису "Операція" і з полем норма із запису "Норма на деталь". Запис "Норма на деталь", що містить два поля - норма і одиниці виміру, пов'язана, в свою чергу, з полем найменування матеріалу із запису "Матеріал".

Кожен вузол мережі відповідає елементу даних, що відображає групу однорідних об'єктів реального світу. Тоді в реальній мережі в кожному вузлі буде знаходитися ідентифікатор відповідного об'єкта, наприклад шифр деталі.

Недоліком мережевої моделі даних є певні труднощі уявлення мережі на описаному рівні деталізації.

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

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

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

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

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

Реляційна модель виходить шляхом подальшої формалізації ієрархічної моделі. У цій моделі все зв'язку між об'єктами задаються шляхом явної фіксації ідентифікаторів об'єктів в записах.

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

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

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

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

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

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

Існують і універсальні СУБД, які використовуються для різних додатків. Під час налаштування універсальних СУБД для конкретних додатків вони повинні володіти відповідними засобами. До універсальних СУБД відносяться, наприклад, системи dBase, Paradox, Microsoft Access, MS DOS, UNIX, Windows, Oracle.