5.2. Технології обробки даних та основи проектування баз даних
Функціональна частина інформаційної системи може бути реалізована на різній технічній базі та з різною технологією обробки даних. Існує три технології обробки даних: Централізована, ^децентралізована та ^змішана.
*■ Централізована технологія передбачає наявність підрозділу, що займається збором та введенням даних з одного боку, та рішенням відповідних проблем з допомогою засобів обчислювальної техніки і отримання результатів з другого. Таким підрозділом як правило є інформаційно-обчислювальний центр колективного використання, де зосереджені обчислювальні, інформаційні, програмні та інші ресурси, включаючи кваліфікованих спеціалістів з експлуатації технічних засобів, проектування та програмування розв'язування нових завдань, створення і ведення баз даних.
♦ Децентралізована технологія орієнтована на масове впровад
ження персональних комп'ютерів на робочих місцях працівників
фінансових установ, які використовують обчислювальну техніку у своїй
професійній діяльності. На базі широкої комп'ютеризації створюються
автоматизовані робочі місця, локальні обчислювальні мережі, що дає
змогу підвищити ефективність виконання управлінських функцій за
рахунок оперативності, вірогідності, повноти інформації в межах
прийманих рішень. В даному випадку фахівець сам вводить інформацію
в автоматизовану систему, засобами обчислювальної техніки вирішує
поставлені задачі та отримує результат.
♦ Змішана технологія ґрунтується на широкому використанні
потужностей обчислювальних центрах колективного використання, які
мають розвинену систему периферійних засобів для введення, первинної
обробки і нагромадження вхідної інформації, каналів зв'язку, котрі
забезпечують підімкнення персональних комп'ютерів (ПК) до обчислю
вальної мережі. В даному випадку в процесі функціонування обчислю
вальний центр зберігає своє домінуюче положення в частині організації
технології, управління інформаційними процесами, необхідними ресур
сами, розподіленими за рівнями ієрархічно створеної обчислювальної
мережі. Введення інформації здійснюється на віддаленних робочих
місцях користувачів.
Очевидно, що децентралізована обробка даних в інформаційних системaх є найбільш ефективною, тому що забезпечує введення та обробку інформації без посередників і надає фахівцю необхідний інструментарій • для вирішення виробничих чи управлінських проблем. Окрім того вона ще й економна, адже вивільняється персонал централізованої підготовки даних та частково обчислювального центру.
Існує добре відоме, але на практиці важко втілюване, поняття бази даних як великого сховища, в якому фінансова установа розміщує всі оброблювані нею дані та надає можливість отримувати їх своїм працівникам. Сховища інформації можуть розміщуватись в різних місцях, навіть територіально рознесені на певні відстані, тому сховища та користувачі мають бути забезпечені засобами телекомунікаційних технологій, а також мати відповідний доступ та безпеку обробки інформації.
Базу даних (БД) можна визначити як сукупність взаємозв'язаних, що зберігаються разом даних при наявності такого мінімального надлишку, який допускає їх використання оптимальним чином для одного або декількох користувачів одночасно. Інформація в базі даних запалі 'ятовується та зберігається незалежно від користувачів та задач які вони вирішують чи можуть вирішувати. Для введення нових даних та модифікації існуючих, а також пошуку інформації в БД використовується єдиний метод, згідно з принципом стандартизації та уніфікації. Дані структуруються таким чином, щоб можна було згідно з принципом розвитку нарощувати кількість задач користувачів. Можна сказати, що будь яка інформаційна система має сукупність баз даних, якщо ці дані структурно повністю незалежні, тобто самостійні.
База даних може характеризуватись надлишковістю даних, тобто коли при вирішенні різних задач запам'ятовування елементів даних призводило до збереження одної і тої ж інформації в різних модифікаціях. Правильна організація БД дозволяє в значній мірі зменшити надлиш-ковість. Загалом базу даних іноді визначають як ненадлишкову сукупність елементів даних. Однак надлишковість даних завжди в незначній кількості присутня для прискорення доступу до БД та пошуку інформації, адресації даних тощо. Часто надлишковість даних необхідна для швидкого відновлення БД у випадках втрат інформації, згідно з принципом надійності. Щоб БД була не надлишковою і задовольняла іншим вимогам необхідно йти на компроміс. В цьому випадку кажуть про керовану або мінімальну надлишковість. Тобто добре зпроектована БД вільна від лишньої надлишковості.
Однією чи не з найважливіших характеристик БД є постійна її модифікація та розширення. У випадках появи нових типів даних або прикладних програм для рішення нових задач повинна забезпечуватись можливість швидкої зміни структури БД. Модифікація та розширення БД, в ідеалі, не повинна призводити до зміни програмного забезпечення або ж до мінімальних змін. Незалежність даних є одною із основних властивостей БД. Під цим розуміється незалежність даних в БД від програм які їх використовують, тобто зміна одних не призводить до зміни других і навпаки. В дійсності повністю незалежні дані зустрічаються настільки рідко, як і повна надлишковість.
Сучасна база даних характеризується встановленням багатосторонніх зв 'язків, адже один набір елементів даних може одночасно використовуватись великою кількістю користувачів і відповідно оброблятись відповідними прикладними програмами. Вданому випадку організація БД залежить від реалізації зв'язків між елементами даних і записами. При використанні БД багатьма користувачами, мають бути встановлені численні проміжні взаємозв'язки між даними. Таким чином це забезпечує таку організацію БД в системі, при якій доступ до них забезпечується різними шляхами, причому одні і тіж дані можуть бути використані для відповіді на зовсім різні запити.
База даних характеризується еволюцією концепцій баз даних, що реалізує збереження інформації в базі не лише актуальної сьогодні, а й варіантів що були в минулому за схемою син-батько-дід, або син-батько. Це означає, що якщо актуальні дані це син, то відповідно батько -дані, що були в минулому, тобто батько породив сина. Аналогічно ще більш старіша копія даних в БД відповідає діду, тобто дід свого часу породив батька. Очевидно, що еволюція концепцій баз даних призводить до надлишковості даних, однак з іншого боку надає можливість отримувати копії таблиць чи файлів до модифікації.
База даних є об'єктом, що постійно розвивається та використовується все більшою кількістю користувачів. Тому в процесі роботи системи в БД постійно добавляються нові записи. Однак в процесі розвитку системи можуть в записи добавлятися нові елементи даних або реквізити, тобто виникає умова зміни структури даних. Структура БД буде змінюватись з метою підвищення ефективності її функціонування і при появі нових типів запитів. Користувачі змінюють вимоги і модифікують типи запитів на дані. Структура БД є менш статичною ніж файлова структура. Реквізити записів і методи їх збереження постійно змінюються. Якщо на організацію даних зі сторони інформаційної системи накласти обмеження незмінності файлової структури, то це призведе до затрат часу на модифікацію програмного забезпечення, що не є ефективним.
База даних характеризується також логічною та фізичною незалежністю даних. Саме це забезпечує зміну логічної структури-БД без модифікації програмного забезпечення.
Ф Логічна незалежність даних означає, що загальна логічна структура даних може бути змінена без зміни програмного забезпечення.
Ф Фізична незалежність даних означає, що розміщення та організація даних на носіях інформації може змінюватись не змінюючи ні логічної структури БД, ні програмного забезпечення.
Для забезпечення логічної та фізичної незалежності даних ствоюється концептуальна модель даних. Незалежно від того як змінюється представлення розробника про організацію та збереження даних концептуальна модель залишається незмінною або ж змінюється з метою включення додаткових типів даних. Концептуальна модель даних забезпечує розвиток БД, тобто обробку даних в майбутньому.
Існує три типи організації баз даних: ^зовнішня, ^глобальна логічна та ^фізична.
Ь Зовнішня організація БД полягає в описі даних, як їх розуміють розробник та користувачі. Наприклад розробник системи може представляти файл у вигляді головного запису із залежними від нього конкретними записами, тобто у вигляді ієрархії, чи в звичайному табличному вигляді тощо.
♦ Глобальна логічна організація БД - це загальна організація або концептуальна модель БД на основі якої можуть бути отримані різні зовнішні організації. Таке логічне представлення даних є повністю незалежним від фізичного і може бути описане мовою опису даних, що є частиною програмних засобів систем управління базами даних (СУБД). Сьогодні в світі поширений стандарт такої мови - SQL.
♦■ Фізична організація БД - це фізичне представлення даних та розміщення їх на носіях інформації. Вона залежить від засобів фізичного пошуку записів - індикаторів і визначається наявністю областей переповнення і програм включення нових записів та видалення старих.
Основною метою створення систем управління базами даних (СУБД) є спрощення процесу розробки прикладних програм, його здешевлення, прискорення і забезпечення гнучкості. Способи, з допомогою яких кінцеві користувачі захочуть обробляти дані, що знаходяться в сховищі, будуть постійно змінюватись і в деяких випадках потреби нових користувачів в даних будуть швидко і постійно збільшуватись. Ступінь задоволення таких потреб визначає загальну цінність СУБД.
На ринку систем управління БД в наш час поширені продукти відомих виробників: Oracle, Informix, Sybase, Microsoft, IBM, які успішно використовуються при розробці автоматизованих систем у фінансовій сфері.
Фахівці вважають, що на сучасному етапі існує три підходи до організації баз даних: ^ієрархічний - будується за деревовидною структурою, ^реляційний - встановлюються асоціативні зв'язки між: елементами даних, ^мережевий - коли кожний елемент БД може підпорядковуватись не одному вузлу, як при ієрархії, а декільком.
Ієрархічна БД являє собою дерево перевернуте корінням вверх, яке визначає ієрархію елементів у вузлах рис.5.6. На самому верхньому рівні ієрархії знаходиться один вузол - корінь. Кожний вузол, крім кореня, зв'язаний з одним вузлом на більш високому рівні, що є початковим вузлом для даного вузла. Будь який вузол може мати один і тільки один початковий вузол. Кожний елемент може бути зв'язаний з одним або декількома вузлами на більш низькому рівні, які є породженими для заданого елемента. Елементи, що розміщені на кінці гілки або не породжують нових елементів, - утворюють листя.
Рис.5.6. Схема організації ієрархічної БД.
+ Мережева БД встановлює відношення між елементами даних у випадку, коли породжений елемент має не один початковий вузол, як при ієрархічній, а декілька рис.5.7. Тому в мережевій структурі будь-який елемент може бути зв'язаний з будь-яким іншим елементом.
Однак одним з найпростіших способів організації даних для кінцевого користувача є звичайна таблиця, яка складається із стовпців та рядків і тому є двовимірною. Будь-яка ієрархічна чи мережева структура даних може бути приведена до табличного виду з деякою надлишковістю інформації. Саме такий результат при дослідженні підходів щодо організації БД був отриманий Е. Коддом. Очевидно що будь яке представлення даних може бути організовано з допомогою таблиць, а процес приведення даних до табличного виду назвали нормалізацією.
Рис.5.7. Схема організації мережевої БД.
Будь-яка таблиця характеризується слідуючими особливостями:
> кожний елемент таблиці - це один і тільки один елемент даних,
тобто повтори відсутні;
> всі стовпчики в таблиці однорідні, тобто елементи стобця
мають однакову природу;
> стовпці мають назву, що дає можливість іх однозначно
визначати та присвоїти їм логічні імена;
> в таблиці немає двох однакових рядків;
> при виконані операцій з даними її рядки та стовпці можуть
бути визначені в будь-якому порядку чи послідовності незалежно
від їх змісту.
Будь-яка таблиця фактично визначає певні відношення між елементами. База даних, що організована як сукупність таблиць або відношень отримала назву реляційної бази даних. Відношення або таблицю назвали набором кортежів, а набір елементів однакової природи як стовпець - доменом. В залежності від кількості доменів в кортежі відношення іменують п-арним. Очевидно, що для двовимірних таблиць - бінарне, трьохвимірних - тернарне тощо.
Розглянемо табличну структуру рис.5.8 на прикладі платіжного доручення, використовуючи опис реквізитів документа з таблиці 2.1 розділу 2.3, що був отримаий шляхом структуризації.
Рис.5.8. Приклад таблиці (кортежа) реляційної БД.
Очевидно, що дані кожного домена або стовпця, можуть бути у відношеннях з даними в інших таблицях, у домени яких вони входять. Так наприклад за доменом NmrA - номер рахунку платника як правило створюється таблиця, що містить всю інформацію про клієнта контрагента банку і зокрема його поточний рахунок.
В математиці реляційним називається відношення, що задане на п множинах S1, S2, S3,... Sn (не обов'язково різних), якщо воно являє собою набір кортежей, таких що перший елемент кожного кортежа є елемент із S1, другий елемент із S2 тощо. Для опису відношень такої природи Кодд Е.Ф. використав алгебру відношень і розробив спеціальну мову маніпулювання даними для реляційної бази. Сьогодні використовуються стандарт такої мови, що отримав назву SQL (Structured Query Language - структурована мова запитів). Математичні основи алгебри відношень складають методичну та алгоритмічну базу при розробці СУБД.
f Таким чином з логічної точки зору реляційна база даних - це сукупність • таблиць з операціями вилучення та об 'єднання стовпців.
Е. Кодд з цього приводу писав, що і прикладний програміст, і випадковий користувач використовують базу даних як змінний у часі набір нормалізованих відношень різних вимірів.