Барасюк Я. М
![]()
|
3.3. Класифікація та короткий огляд сучасних СУБДДо важливих ознак класифікації сучасних СУБД відносяться [Error: Reference source not found]:
Найвідомішими СУБД для розробки простих інформаційних систем є Access, FoxPro, MySQL, Paradox. Для створення складних бізнес-програм та корпоративних інформаційних систем використовуються СУБД фірм Microsoft (SQL Server), Oracle, Informix, IBM, Sybase. За даними аналітиків Gartner [92] в 2006 році лідером на ринку СУБД була Oracle – 47,1%, далі – IBM (21,1%), Microsoft (17,4%), Sybase (3,2%). При цьому Microsoft випереджає інших виробників за абсолютними темпами росту, а Oracle – за абсолютним збільшенням прибутків. Зараз за прогнозами намічається серйозна конкуренція в галузі систем середньої продуктивності, на ринки яких все більшу увагу звертають Oracle та IBM. Крім того, усі провідні виробники будуть змушені протистояти розробникам систем з відкритим кодом. Проаналізуємо наведені та деякі інші популярні СУБД детальніше. Oracle. Перша доступна замовникам версія СУБД Oracle (Oracle V.2) була випущена компанією Relational Software Inc. в 1979 р. Ця версія була орієнтована на використання в середовищі ОС RSX-11 для сімейства мінікомп’ютерів PDP-11. Система була в основному написана на асемблері, але включала також тексти на новій для того часу мові програмування C. СУБД могла функціонувати і в інших операційних середовищах, що підтримувалися на PDP-11. Тоді ж було прийнято рішення про перенесення Oracle в 32-розрядну операційну систему VAX VMS, що на довгі роки визначило долю СУБД Oracle як провідної системи управління базами даних для мінікомп’ютерів. Найбільшою перевагою Oracle в той час була можливість маніпулювання базами даних на основі непроцедурної реляційної мови SQL, для якої в той час існував тільки фірмовий стандарт компанії IBM. СУБД Oracle V.2 володіла обмеженими можливостями, зокрема в системі були відсутні засоби управління трансакціями. СУБД Oracle V.3 вийшла в 1983 році. Вона була повністю переписана на мові програмування С, що в подальшому дозволило розв’язати проблему перенесення системи на більшу кількість апаратно-програмних платформ. Були розширені функції, доступні через SQL-інтерфейс. Було введено поняття трансакцій. В той же час компанія була перейменована в Oracle Corp. В 1985 році була випущена СУБД Oracle V.5. В цій системі використовувалася клієнт-серверна архітектура та вперше з’явилася можливість одночасного використання баз даних, розміщених в різних вузлах мережі. Шоста версія системи представляла собою інструмент побудови корпоративних інформаційних систем, що працювали в режимі OLTP. В системі було реалізовано систему блокування на рівні записів. Вона була перенесена на ряд нових платформ, зокрема OS/2 та Macintosh. Надзвичайно важливим була поява процедурної мови програмування PL/SQL, яку можна було використовувати як для описання збережених процедур (процедур, що зберігаються та виконуються на сервері баз даних), так і для розробки клієнтських інтерфейсів. Крім того, в мові SQL з’явилися засоби описання цілісності посилань – одного з найфундаментальніших механізмів підтримки цілісності в реляційних базах даних. Сьома версія Oracle вийшла на ринок в середині 1994 року. В Oracle V.7 використовується ряд нових архітектурних рішень, направлених на підвищення ефективності сервера, зокрема буферизація відкомпільованих SQL-операторів на сервері БД, використання спільного пулу серверних процесів, що походять від різних трансакцій, використання різноманітної статистичної інформації для оптимізації запитів тощо. В цій версії СУБД були суттєво розширені можливості PL/SQL. З’явилася можливість використання тригерів. Функції PL/SQL стало можливим використовувати як звичайні вбудовані функції в операторах SQL. Суттєвим недоліком PL/SQL є те, що ця мова не входить до стандарту SQL. Після цього було випущено 8-му версію Oracle. Восьма версія характеризується появою нових засобів адміністрування БД та створення програм, підтримкою зберігання мультимедійної інформації. Для більшості компонент розроблено графічний інтерфейс. Ця версія підтримує протокол JDBC, який дозволяє створювати інтерфейсні елементи засобами Java. Також значна увага в цій версії приділена використанню Інтернет-технологій. Останньою на даний час є версія Oracle 11g. Один із варіантів цієї версії розповсюджується безкоштовно. Informix. Компанія заснована 24 вересня 1986 року. В 1996 році компанія займала друге місце на світовому ринку продуктів, пов’язаних з управлінням реляційними базами даних [Error: Reference source not found]. З самого початку свого існування компанія орієнтувалася на створення серверів баз даних та супутніх програмних продуктів для середовища ОС Unix, хоча зараз продукти компанії працюють і в інших операційних системах. Характерною особливістю Informix є те, що компанія підтримує, розвиває та поставляє на ринок ціле сімейство серверів БД, які відрізняються можливостями, ефективністю, а значить, і ціною. Усі різновиди цих серверів базуються на клієнт-серверній технології. Найпростішим серверним продуктом є Informix-SE. Призначається для інформаційних систем з малим об’ємом інформації. Базовим продуктом компанії є система Informix-OnLine, яка випускається в двох модифікаціях – Informix-OnLineDynamicServer та Informix-OnLineExtendedParallelServer. Ці сервери працюють напряму з дисковою пам’яттю, забезпечують виконання трансакцій в розподіленому середовищі баз даних, підтримують можливості зберігання неструктурованих полів таблиць надвеликого розміру BLOBs – Binary Large Objects та ін. Informix-OnLine Dynamic Server орієнтований на використання симетричних мультипроцесорних комп’ютерів і орієнтується на паралельне використання процесорів зі спільною основною пам’яттю. Informix-OnLine Dynamic Server може працювати як в симетричних, так і в несиметричних комп’ютерних архітектурах. Керіництво Informix стверджує, що особливістю стратегії компанії є повна відсутність конкуренції з будь-яким зі своїх потенційних партнерів. На відміну від інших компаній Informix випускає тільки базові продукти, не нав’язуючи своєї технології розробки інформаційних систем. Sybase. Копанія Sybase є відносно новою на ринку виробників сучасних реляційних СУБД. Перший повномасштабний серверний продукт SybaseV.10 компанія випустила в 1994 році. Цей продукт міг працювати на більшості доступних на той час апаратно-програмних платформ. Компонентна структура системи дозволяла змінювати окремі компоненти, не порушуючи роботу інших компонентів. Підтримувалося більшість прийнятих міжнародних стандартів, завдяки чому система могла працювати з іншими реляційними джерелами даних. Система була досить надійною. Підтримувалася робота з розподіленими трансакціями, збереженими процедурами, тригерами, користувацькими типами даних та засобами підтримки цілісності посилань. На жаль, ця версія вийшла на ринок не повністю відлагодженою, завдяки чому виникало багато проблем з експлуатацією. Цей недолік було виправлено в наступній версії Sybase V.11. До основного складу серверних продуктів SybaseV.11 входить [93]:
Sybase продовжує роботи в напрямку компонентної організації серверних продуктів. За відгуками, ці серверні продукти працюють досить надійно. Лінія серверних продуктів CA-OpenIngres компанії ComputerAssociates. Проект та експериментальний варіант СУБД Ingres були розроблені в університеті Берклі під керівництвом одного з найвідоміших в світі вчених та спеціалістів в галузі баз даних Майкла Стоунбрейкера (Michael Stonebraker). Ingres була розроблена для роботи в ОС Unix. Це була перша СУБД, що розповсюджувалася безкоштовно для використання в університетах. На початку 80-х було створено компанію RTI (Relation Technology Inc.) для доведення університетських прототипів до рівня комерційних продуктів. З цього часу почали розрізняти університетську та комерційну Ingres. Зараз комерційна Ingres підтримується, розвивається та продається компанією Computer Associated. Сервер Ingres базується на п’яти ключових архітектурних принципах компанії Computer Associated [94]:
Архітектура CA-OpenIngres Server підтримує спільне використання великої кількості серверів баз даних на основі підтримки спільного буферного кешу. Засоби адміністрування та управління дозволяють виділити деякі сервери для цілей оперативного управління трансакціями, тоді як інші будуть використовуватися для генерації звітів з більш низьким пріоритетом. Відповідно до початкового підходу Стоунбрейкера, в сервері підтримується широкий набір допустимих способів зберігання даних: купа (heap), В-дерева, таблиці хешування тощо. Допускається підтримка індексів з надлишковими полями даних для ефективного виконання особливо критичних запитів. Використовуються методи стискування таблиць та індексів. Одним із напрямків розвитку цієї СУБД є створення PostgreeSQL. DB2. Серйозні практичні дослідження в галузі систем управління реляційними базами даних компанія IBM розпочала з проекту експериментальної системи SystemR, яка розроблялася в дослідницькій лабораторії фірми IBM в 1975-1979 роках. Ця робота мала революційний вплив на розвиток теорії та практики реляційних систем в усьому світі. System R була першою СУБД, яка практично довела життєздатність реляційного підходу до управління базами даних. Усі наступні версії СУБД від IBM в тій чи іншій мірі використовували методи, застосовані в System R. З самого початку СУБД DB2 орієнтувалася виключно на апаратно-програмні платформи IBM. Після розробки операційної системи OS/2 був випущений варіант DB2, придатний для використання на персональних комп’ютерах. DB2 завжди представляв собою розвинутий програмний продукт управління базами даних, зокрема в ньому завжди були присутні такі можливості, як управління трансакціями, журналізація змін та відновлення узгодженого стану бази даних після різноманітних збоїв. Слід зазначити, що саме IBM випустила перший корпоративний стандарт мови SQL. Розвиток СУБД та сфери її використання обмежувалося тим, що був відсутній мобільний код системи. Орієнтуючись на використання DB2 на своїх апаратних платформах, компанія IBM історично використовувала для програмування DB2 суміш мови асемблера та мови PL/1. Стрибком для DB2 стала поява Unix-орієнтованої серії серверів та робочих станцій RS/6000, у зв’язку з чим компанія була вимушена переписати систему на мові С. Після цього з’явилася очевидна можливість перенесення системи на інші платформи. Після Oracle та Microsoft DB2 також випустила безкоштовну версію своєї СУБД [95]. MSSQLServer. Microsoft SQL Server представляє собою інтегрований пакет програм, призначений для [96]:
Платформа даних SQL Server включає наступні інструменти:
Платформа даних SQL Server 2005 надає наступні переваги [Error: Reference source not found]:
MSAccess – реляційна система управління базами даних, яка випускається компанією Microsoft. Ця СУБД набула великої популярності в першу чергу завдяки тому, що входить до стандартного офісного пакету Microsoft Office. Завдяки наявності вбудованої мови програмування Visual Basic for Applications в середовищі MS Access можна створювати повноцінні інформаційні системи, що працюють з базами даних. MS Access є СУБД, яка працює за технологією файл-сервер [97], у зв’язку з чим її можна реально використовувати тільки для невеликих інформаційних систем, з якими працює мало користувачів. Також MS Access часто використовують як навчальну СУБД. MSVisualFoxPro – система управління базами даних поєднана з візуальним середовищем розробки. За своїми можливостями та вимогливістю до ресурсів посідає проміжне місце між MS Access та MS SQL Server. В цьому середовищі розробки використовується спеціальна мова програмування FoxPro. Перші версії FoxPro, які тоді іще називалися FoxBase, розроблялися компанією Fox Software. В 1992 році ця компанія об’єдналася з Microsoft, після чого в назві з’явилася приставка Visual. Перші версії програми були мультиплатформенні, тоді як остання, дев’ята, версія може працювати тільки в середовищі операційної системи Windows. Розробка продукту зупинена після виходу другого сервіс-паку для дев’ятої версії. Підтримка продукту буде здійснюватися до 2015 року [98]. MySQL – вільна система управління базами даних, яка є власністю компанії Sun Mycrosystem. СУБД розповсюджується по ліцензії GNU General Public License та під власною комерційною ліцензією [99]. За умовами GPL, якщо якась програма вміщує вихідні коди MySQL, то вона також повинна розповсюджуватися за ліцензією GPL. Останнє може не відповідати планам розробників, які не бажають відкривати вихідні коди своїх програм. Для таких випадків передбачена комерційна ліцензія, яка, крім того, забезпечує якісну сервісну підтримку. Крім того компанія розробляє різноманітну функціональність на замовлення ліцензійних користувачів. Завдяки одній із таких розробок ще в самих перших версіях з’явився механізм реплікації. MySQL переважно використовується для нескладних інформаційних систем. У більшості випадків MySQL використовується як сервер, до якого звертаються локальні та віддалені клієнти, хоча до дистрибутиву також входить бібліотека внутрішнього сервера, яка дозволяє включати MySQL в автономні програми. MySQL підтримує багато типів таблиць, вона є мультиплатформенною СУБД. Завдяки широким можливостям, а також великій швидкодії MySQL часто використовується в якості СУБД, що забезпечує роботу динамічного Web-сайту в мережі Інтернет. В цьому напрямку використання MySQL конкурує з PostgreSQL. Firebird – компактна, кросплатформенна, вільна система управління базами даних, створена групою ентузіастів на базі вільної версії Interbase 6.0, випущеної в 2000 році компанією Borland [100]. Firebird повністю підтримує стандарт SQL 92 та реалізує більшу частину стандарту SQL 99. Ця СУБД може працювати практично на будь-якому апаратному забезпеченні і краще багатьох інших СУБД працює на малопотужних комп’ютерах, що часто і визначає сфери її застосування. Може працювати під управлінням більшості найпопулярніших на даний час операційних систем. Існує три версії СУБД:
Усі ці версії використовують однаковий формат файлу бази даних, завдяки чому у будь-який момент можна просто переходити з однієї версії сервера на іншу. Firebird випускається за умовами ліцензій IPL (InterBase Public License) та IDPL (Initial Deweloper’s Public License), які забезпечують повністю безкоштовне використання та розповсюдження. Ці ліцензії, крім того, не вимагають від розробників розкриття програмного коду їх розробок, що використовують Firebird не залежно від моделі ліцензування, яка використовується розробником. |