Критерії вибору СУБД при створенні ІС

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

1. Моделювання даних.

· Модель даних, що використовується. Існує безліч моделей даних; найпоширеніші – ієрархічна, мережева, реляційна, об'єктно-реляційна і об'єктна. Питання про використання тієї чи іншої моделі має вирішуватися на початковому етапі проектування інформаційної системи.

· Тригери і процедури. Тригер – програма бази даних, яка викликається кожного разу при вставці, зміні або видаленні рядка таблиці. Тригери забезпечують перевірку будь-яких змін на коректність, перш ніж ці зміни будуть прийняті. Збережена процедура – програма, яка зберігається на сервері і може викликатися клієнтом. Оскільки збережені процедури виконуються безпосередньо на сервері бази даних, забезпечується більш висока швидкодія, ніж при виконанні тих же операцій засобами клієнта БД. У різних програмних продуктах для реалізації тригерів і збережених процедур використовуються різні інструменти.

· Інструменти пошуку. Деякі сучасні системи мають вбудовані додаткові засоби контекстного пошуку.

· Передбачені типи даних. Тут слід врахувати два фактично незалежних критерія: базові або основні типи даних, закладені в систему, і наявність можливості розширення типів. У той час як відхилення базових наборів типів даних у сучасних систем від якогось стандартного, зазвичай, невеликі, механізми розширення типів даних у системах того чи іншого виробника істотно розрізняються.

· Реалізація мови запитів. Всі сучасні системи сумісні з стандартною мовою доступу до даних SQL-92, проте багато з них реалізують ті чи інші розширення даного стандарту.

2. Особливості архітектури та функціональні можливості.

· Мобільність. Мобільність – це незалежність системи від середовища, в якій вона працює. Середовищем в даному випадку є як апаратура, так і програмне забезпечення (операційна система).

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

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

· Мережеві можливості. Багато систем дозволяють використовувати широкий діапазон мережевих протоколів і служб для роботи та адміністрування.

3. Контроль роботи системи.

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

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

4. Особливості розробки додатків.

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

· Засоби проектування. Деякі системи мають засоби автоматичного проектування, як баз даних, так і прикладних програм. Засоби проектування різних виробників можуть істотно різнитися.

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

· Можливості розробки Web-додатків. При розробці різноманітних додатків часто виникає необхідність використовувати можливості середовища Internet. Засоби розробки деяких виробників мають великий набір інструментів для побудови додатків під Web.

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

5. Продуктивність.

· Рейтинг TPC (Transactions per Cent). Для тестування продуктивності застосовуються різні засоби, і існує безліч тестових рейтингів. Одним з найпопулярніших і об'єктивних є TPC-аналіз продуктивності систем. Фактично TPC аналіз розглядає композицію СУБД і апаратури, на якій ця СУБД працює. Показник TPC – це відношення кількості запитів, які оброблюються за якийсь проміжок часу, до вартості всієї системи.

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

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

6. Надійність.

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

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

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

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

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

7. Вимоги до робочого середовища.

· Апаратні платформи, що підтримуються.

· Мінімальні вимоги до обладнання.

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

· Операційні системи, під управлінням яких здатна працювати СУБД.

8. Змішані критерії.

· Якість і повнота документації. На жаль, не всі системи мають повну і детальну документацію.

· Локалізованість. Можливість використання національних мов не у всіх системах реалізована повністю.

· Модель формування вартості. Як правило, виробники СУБД використовують певні моделі формування вартості. Наприклад, вартість одного і того ж продукту може істотно змінюватися в залежності від того, скільки користувачів буде з ним працювати.

· Стабільність виробника.

· Поширеність СУБД.

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

Наши рекомендации