Огляд систем керування базами даних (реферат)

Реферат на тему:

Огляд систем керування базами даних.

Система керування базами даних та її основні функції.

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

Системи керування базами даних виконують наступні функції:

Керування даними у зовнішній пам’яті. Функції управління даними у
зовнішній пам’яті охоплюють створення необхідних структур зовнішньої
пам’яті як для безпосереднього збереження даних, так і для службових
цілей (наприклад, прискорення доступу до даних шляхом використання
індексів), тобто підтримку логічних моделей даних, які в свою чергу
визначають фізичну модель представлення даних; В деяких існуючих
системах керування базами даних активно використовуються можливості
файлових систем, хоча користувачі не повинні знати, чи використовує
система керування базами даних файлову структуру чи ні. Існує цілий
набір способів організації зовнішньої пам’яті баз даних. Конкретні
методи організації зовнішньої пам’яті необхідно вибирати сумісно зі
всіма іншими рішеннями. Основна функція керування даними – реалізація
типових операцій обробки даних, а саме: збір, реєстрація і перенесення
інформації на машинні носії; передача інформації в місця її зберігання і
обробки; ввід інформації в ЕОМ, контроль вводу і її компонування в
пам’яті комп’ютера; створення і ведення внутрішньомашинної інформаційної
бази; обробка інформації на ЕОМ (нагромадження, сортування, корекція,
вибір, арифметична і логічна обробка) для розв’язання функціональних
задач системи (підсистеми) управління об’єктом.

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

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

Журналізація і відновлення баз даних після відмов програмного чи
апаратного забезпечення (збоїв). Одна з основних вимог до систем
керування управління базами даних полягає в надійному збереженні даних у
зовнішній пам’яті. Під надійністю збереження розумітимемо, що система
керування базами даних повинна мати змогу відновити останній узгоджений
стан бази даних після апаратного чи програмного збою. Підтримка
надійного збереження даних вимагає надлишковості при їх збереженні, при
чому та частина, що використовується, повинна зберігатися особливо
надійно. Найрозповсюдженіший метод підтримання такої надлишковості — це
ведення журналу змін бази даних. В усіх випадках притримуються
“випереджаючого” запису в журнал (протокол Write Ahead Log). Ця
стратегія полягає в тому, що запис про зміну будь-якого об’єкта бази
даних повинен попасти у зовнішню пам’ять журналу раніше, ніж він попаде
у зовнішню пам’ять основної бази даних. Якщо в системі керування базами
даних коректно підтримується протокол WAL, тоді з допомогою журналу
можна вирішити всі проблеми відновлення бази даних після збою. Складні
проблеми, які виникають у багатокористувацькому режимі з базами даних,
називають ще тупиковими ситуаціями (Deadlock). Для відвернення втрат
інформації розроблена спеціальна техніка профілактики тупикових ситуацій
і відкату (Roll-Back) транзакцій при їх виконанні, тобто забезпечується
цілісність та захист даних від некоректних і несанкціонованих дій
користувачів та збереження при збоях в роботі обладнання

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

для опису представлення бази даних на керованих рівнях архітектури
системи (мова опису диних або Sсhema Definision Language);

для ініціювання виконання операцій маніпулювання даними (мова
маніпулювання даними або — або Sсhema Manipulation Language).

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

Поняття про мову SQL.

Мовною підтримкою проведення транзакцій є, як правило, мова SQL. Мови
реляційного числення базуються на класичному численні предикатів. Вони
надають користувачу набір правил для написання запитів до баз даних. В
такому запиті міститься лише інформація про бажаний результат. На основі
запиту система керування базами даних автоматично, шляхом формування
нових відношень, формує бажаний результат. Мови реляційного числення є
непроцедурними. Перша мова реляційного числення ALFA була розроблена
самим Е.Ф.Коддом.

На даний час широке розповсюдження набула мова SQL (Structured Query
Language). Мова SQL була розроблена фірмою IBM в середині 70-их років, а
потім схвалена та підтримана багатьма компаніями як стандарт мови
управління реляційними базами даних. Ця мова була розроблена на основі
стандарту мови, яка використовувалася в системі керування базами даних
dBase. Міжнародна федерація по обробці інформації (AFIP) та міжнародна
організація по стандартизації (ISO) формують та уточнюють стандарти для
подальших розробок мови SQL. Мова орієнтована на проведення операцій з
даними, що подаються у вигляді логічно взаємозв’язаної сукупності
таблиць. Основною відмінністю від вихідної мови dBase є те, що мова SQL
розроблена для проведення операцій з таблицями, в той час як мова dBase
орієнтована на роботу з записами.

Функції мови SQL.

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

Таблиця мови SQL представляє собою сукупність рядків і колонок, в яких
рядкам таблиці відповідають записи, а колонкам — поля. Крім звичайних
таблиць, мова SQL дозволяє створювати особливий вид таблиць — вибірку.
Вибірка — це підмножина рядків і стовпців з однієї чи декількох таблиць.
Часто вибірку називають віртуальною таблицею, оскільки вона фактично не
містить даних, а лише дозволяє їх відтворювати. Дані у вибірці
відображають реальні зміни у відповідних таблицях і навпаки, зміна даних
в обновлюваних вибірках приводить до зміни цих даних у первинних
таблицях.

Ефективне використання команд мови SQL реалізується завдяки використанню
і створенню спеціальної інформації, яка дозволяє посилатися, на кожну
таблицю і вибірку. Ця інформація міститься в файлах, що називаються
каталогами таблиць, які формуються під час створення бази даних. Кожна
команда мови SQL закінчується “;”. Кожна команда SQL, яка називається
реченням, починається дієсловом, яке визначає ім’я базової операції. В
склад багатьох команд входять ключові слова і речення, що уточнюють
виконання базових операцій. Крім того, в команду SQL потрібно включити
дані, які будуть оброблятися і (або) операції, які потрібно над цими
даними виконати.

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

таблиці — основні структури даних в базах даних;

вибірки — тип віртуальної таблиці, яка забезпечує ввід-вивід визначених
рядків і стовпців з однієї чи декількох таблиць;

синоніми — альтернативні імена таблиць і вибірок;

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

каталоги — множина таблиць в кожній базі даних, які описують бази даних
і їх зміст.

Розвиток мови SQL.

Перший стандарт мови SQL з’явився у 1989 році (SQL-89) і підтримувався
практично всіма комерційними реляційними системами керування баз даних.
Він мав загальний характер і допускав широке трактування. Перевагами
SQL-89 можна вважати стандартизацію синтаксису і семантики операторів
вибірок і маніпулювання даними, а також фіксацію засобів обмеження
цілісності бази даних. Проте в цій версії були відсутні такі розділи, як
маніпулювання схемою баз даних і динамічний SQL .

Неповнота вимог SQL -89 призвела до створення в 1992 році наступної
версії мови SQL -92, яка охоплювала ширший діапазон функцій:
маніпулювання структурою бази даних, управління транзакціями і сесіями,
динамічну SQL. В стандартній версії передбачається три рівні: базовий,
проміжний і повний. Тільки останні версії систем керування базами даних
забезпечують сумісність з повним стандартом. Робота над вдосконаленням
цієї мови не припиняється. Вдосконалення будуть насамперед проводяться в
напрямку включення механізму тригерів, визначенні довільного типу даних.

Однокористувацькі системи керування базами даних.

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

дружній інтерфейс з користувачем;

вбудовану програму інтерактивної допомоги;

засоби автоматичного створення, використання та модифікації баз даних;

застосування розвинутої мови програмування (в середньому біля 200
команд).

На сучасних персональних комп’ютерах, які практично орієнтуються на
одноосібну роботу і працюють автономно (з власними базами даних),
використовуються такі однокористувацькі системи керування базами даних,
як:

dBase (фірми Ashton -Tate Corp.);

Clipper (фірми Nantucket Corp.);

FoxBase, FoxPro (фірми Fox Software Inc.);

PARADOX (фірми Ansa Software — дочірної компанія Borland Inc.);

R:BASE (фірми Microrim Inc.);

Clarion (фірми Clarion Software Corp.).

Ці однокористувацькі системи керування базами даних були найбільш
поширеними в кінці 80-х на початку 90-х років. Вони не були орієнтовані
на спільне одночасне використання баз даних через комп’ютерну мережу.
Масове використання систем керування базами даних призвело до формування
різних категорій споживачів, яким потрібно було забезпечити створення і
використання програми з найменшими зусиллями. Ринок баз даних можна
уявити у вигляді піраміди. В основі знаходиться найчисельніший клас
користувачів прикладних програм, а на вершині — розробники цих
прикладних програм, між ними знаходяться користувачі, які працюють із
системами керування базами даних в інтерактивному режимі. Жорстка
конкуренція призводить до того, що нові версії системи керування баз
даних повинні містити все краще, що було створено конкурентами, не
втрачаючи при цьому своєї оригінальності.

Структура систем керування базами даних.

Системи керування базами даних розвиваються в напрямку простоти і
зручності їх використання. Сучасні системи керування базами даних
містять функціональні компоненти, які забезпечують:

створення і коректування структури файлів баз даних, обновлення і
відображення даних на екрані;

формування і виконання запитів для створення вибірок і обновлення даних;

розробку екранних форм вводу — виводу;

розробку форм представлення інформації і вивід їх на друк;

розробку форм звітів і вивід їх на друк;

розробку прикладних програм.

Для реалізації цих функцій розробниками створені такі типові складові
систем керування базами даних:

генератор баз даних;

генератор запитів;

генератор екранних форм вводу — виводу та інші.

Причини виникнення розподілених баз даних.

При нарощуванні структури або ж наповненні бази даних і особливо при їх
використанні в територіально розподілених організаціях виникають
наступні складності їх застосування:

надто швидке зростання потоків обміну даними;

недостатня надійність передачі даних;

зменшення загальної продуктивності роботи програмних засобів;

зростання затрат на подальшу розробку та супровід.

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

прискорення обробки внаслідок розподілення навантаження;

оптимальне використання даних на місцях при виконанні віддалених
запитів;

зменшення затрат на розробку та супровід;

спрощення управління.

Розподілені бази даних, основні поняття.

Для вирішення цих проблем використовується розподілена база даних (DDB –
distributed database). Розподілена база даних — це набір файлів
(відношень), які зберігаються в різних вузлах інформаційної мережі і
логічно пов’язані таким чином, щоб створювати логічно єдину сукупність
даних. Зв’язок між складовими цієї бази даних може бути функціональним
або через копії одного і того ж файлу. Розподілена база даних забезпечує
збереження і виконання функцій управління даними в декількох вузлах і
передачу даних між цими вузлами в процесі виконання запитів. Розбиття
даних в розподіленій базі даних може досягатися через збереження різних
таблиць або навіть різних частин і фрагментів однієї таблиці на різних
комп’ютерах. Для користувача (або прикладної програми) не має значення,
яким чином розподілені дані між комп’ютерами.

Не дивлячись на те, що розподілена база даних складається з декількох
локальних баз даних, у користувачів повинна зберігатися ілюзія роботи з
централізованою базою даних. Ця вимога прозорості роботи з базою даних
вимагає вироблення узагальненого представлення про дані — глобальної
концептуальної схеми. Визначення даних в такій концептуальній схемі
повинно бути аналогічним визначенню в централізованій базі даних.
Відмінності починаються, коли вимагається зберігати дані в декількох
вузлах. Щоб провести розбивку даних, потрібно секціювати таблиці
глобальної схеми на фрагменти. Існує два типи секціювання: горизонтальне
і вертикальне. При секціюванні таблиці по рядках виконується
горизонтальне секціювання, при розбитті по стовпцях — вертикальне.

Властивості розподіленої бази даних.

К.Дейт встановив дванадцять властивостей або якостей ідеальної
розподіленої бази даних:

Локальна автономія. Вона означає, що управління даними в кожному вузлі
виконується локально і незалежно від інших вузлів системи.

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

Неперервність операцій. Дані доступні завжди, а операції над ними
проводяться неперервно.

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

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

Прозорість тиражування. Забезпечує тиражування (перенос змін) об’єктів
первинної бази даних в усі вузли її розміщення внутрішньосистемними
засобами.

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

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

Незалежність від обладнання. Для оснащення вузла можуть
використовуватися комп’ютери різних марок і виробників.

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

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

Незалежність від типу баз даних. Допускає співіснування різних систем
керування базами даних.

Огляд мережних систем керування базами даних.

Сьогодні можливості сучасних систем керування базами стали значно
зручнішими для користування. Основною вимогою сучасності є забезпечення
роботи з базами даних в мережі. Сучасні версії систем керування базами
даних передбачають можливості роботи в локальних мережах. Найпотужнішими
і вживаними мережними системами керування базами даних є:

Informix (фірми Informix Software);

Oracle (фірми Oracle);

InterBase (фірми Borland);

Progress (фірми Progress Software);

Sybase System (фірми Sybase).

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

Зокрема, система керування базами даних Oracle зарекомендувала себе
прекрасним засобом розробки великих баз даних, особливо в тих випадках,
коли персональні комп’ютери складають лише частину обчислювальних
потужностей організації. Система керування базами даних Oracle є
модульною системою. Кожен модуль — це окрема програма із своїми
характеристиками і вимогами. Забезпечується підтримка таких типів
зв’язків між записами: один до багатьох; багато до одного; багато до
багатьох. Зокрема, система керування базами даних Oracle дозволяє
динамічно змінювати структуру баз даних.

Сучасні системи керування базами даних володіють системами захисту
інформації. Зокрема, Oracle має велику кількість рівнів реєстрації і
захисту даних в базі даних. Повноваження доступу до даних кожного з
користувачів визначається тільки адміністратором баз даних. Для
виконання функцій адміністратора в системах керування базами даних
застосовуються спеціальні службові програми. Адміністрування базами
даних передбачає виконання функцій забезпечення надійної і ефективної
роботи бази даних, задоволення інформаційних потреб користувачів,
відображення в базі даних динаміки змін в предметній ділянці. Головними
користувачами баз і банків даних є кінцеві користувачі, тобто
спеціалісти, що курують різними напрямками економічної роботи. Їх склад
неоднорідний, вони відрізняються по кваліфікації, степені
професіоналізму, рівню в системі управління (наприклад, головний
бухгалтер, бухгалтер, операціоніст, начальник кредитного відділу).
Відповідно і різні потреби в інформації будуть в кожної з цих категорій
користувачів, а також відповідно і різні рівні доступу до даних. Таким
чином, задоволення інформаційних потреб користувачів — це вирішення
великої кількості проблем в організації комп’ютерного інформаційного
забезпечення.

Список літератури.

Автоматизированные информационные технологии в экономике. Под. ред.
Г.А.Титоренко — М. Компьютер ЮНИТИ, 1998, — 336 с.

Бердтис А. Структуры данних. — М.: Статистика, 1974, — 408 с.

Блек Ю. Сети ЭВМ : протоколы, стандарты, интерфейсы. -М.: Мир, 1980.

Бойко В.В., Савинков В.М. Проектирование баз данных информационных
систем. -М.: Финансы и статистика, 1992.

Бойков.В., Савинков В.М. Проектирование баз данных информационных
систем. М. Мир 1997.

Боэм Б.У. Инженерное программирование для проектирования программного
обеспечения. -М.: Радио і связь, 1985, -512с.

Брябрин В.М. Программное обеспечение персональных ЭВМ. — М.: Наука,
1988.

Васильев В.Н. Организация, управление и экономика гибкого
интегрированного производства в машиностроении. – М.: Машиностроение,
1986. –312 с.

Вершинин О.В. Компьютер для менеджера. — М.: Высшая школа, 1990.

Вычислительные машины, системы и сети/ Под ред. А.П.Пятибратова. — М.:
Финансы и статистика, 1991.

Герасименко В.А. Защита информации в автоматизированных системах
обработки данных. — В 2-х кн. — М.: Энергоатомиздат, 1994.

Гершгорин Л.Г. Что такое АРМ бухгалтера. — М.: Финансы и статистика,
1988.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *