Смекни!
smekni.com

Історія розвитку баз даних (стр. 2 из 3)

Перший етап - бази даних на великих ЕОМ

Історія розвитку СУБД налічує більше 30 років. У 1968 році була введена в експлуатацію перша промислова СУБД система IMS фірми IBM. У 1975 році з'явився перший стандарт асоціації по мовах систем обробки даних — Conference of Data System Languages (CODASYL), який визначив ряд фундаментальних понять в теорії систем баз даних, які і до цих пір є основоположними для мережевої моделі даних.

У подальший розвиток теорії баз даних великий внесок був зроблений американським математиком Э. Ф. Коддом, який є творцем реляційної моделі даних. У 1981 році Е. Ф. Кодд отримав за створення реляційної моделі і реляційної алгебри престижну премію Тюрінга Американської асоціації по обчислювальній техніці.

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

Перший етап розвитку СУБД пов'язаний з організацією баз даних на великих машинах типу IBM 360/370, ЄС-ЕОМ і МІНІ-ЕОМ типу PDP11 (фірми Digital Equipment Corporation — DEC), різних моделях HP (фірми Hewlett Packard).

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

Особливості цього етапу розвитку виражаються в наступному:

Всі СУБД базуються на могутніх мультипрограмних операційних системах (MVS, SVM, RTE, OSRV, RSX, UNIX), тому в основному підтримується робота з централізованою базою даних в режимі розподіленого доступу.

Функції управління розподілом ресурсів в основному здійснюються операційною системою (ОС).

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

Значна роль відводиться адмініструванню даних.

Проводяться серйозні роботи по обґрунтуванню і формалізації реляційної моделі даних, і була створена перша система (System R), що реалізовує ідеологію реляційної моделі даних.

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

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

З'являються перші мови високого рівня для роботи з реляційною моделлю даних. Проте відсутні стандарти для цих перших мов.

Епоха персональних комп'ютерів

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

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

Особливості цього етапу наступні:

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

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

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

За наявності високорівневих мов маніпулювання даними типу реляційної алгебри і SQL в настільних СУБД підтримувалися низькорівневі мови маніпулювання даними на рівні окремих рядків таблиць.

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

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

І, нарешті, остання і зараз вельми позитивна особливість — це порівняно скромні вимоги до апаратного забезпечення з боку настільних СУБД. Цілком працездатні застосування, розроблені, наприклад, на Clipper, працювали на РС 286.

В принципі, їх навіть важко назвати повноцінними СУБД. Яскраві представники цього сімейства — дуже СУБД Dbase (DbaseIII+, DBASEIV), що широко використалися до недавнього часу, FoxPro, Clipper, Paradox.

Розподілені бази даних

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