Інформаційні системи - Теорія
Програмне забезпечення баз даних – це ключ до вирішення проблем управління інформацією. Взагалі кажучи, система управління базою даних (СУБД) повинна бути здатна надійно керувати великими обсягами даних у розрахованому на багато користувачів середовищі, так, щоб всі користувачі могли одночасно звертатися до одних і тих же даних. Все це має досягатися за умови забезпечення високої продуктивності користувачів бази даних. СУБД також має бути захищена від несанкціонованого доступу і має надавати ефективні рішення для відновлення від збоїв.
Сервер ORACLE забезпечує ефективні та дієві рішення для основних засобів баз даних:
- ORACLE підтримує найбільші бази даних, потенційного розміру до сотень гігабайт. Щоб забезпечити дієвий контроль використання дорогих дискових пристроїв, він надає повний контроль розподілу простору.
- ORACLE підтримує велику кількість користувачів, що одночасно виконують різноманітні програми, які оперують одними й тими самими даними. Він мінімізує суперництво за дані та гарантує узгодженість даних.
- ORACLE підтримує всі описані вище засоби, зберігаючи високий рівень сумарної продуктивності системи. Користувачі бази даних не страждають від низької продуктивності обробки.
- На деяких установках ORACLE працює 24 години на добу, не маючи періодів розвантаження, що обмежують пропускну здатність бази даних. Нормальні системні операції, такі як відкот бази даних, а також часткові збої комп'ютерної системи, не переривають роботу з базою даних.
- ORACLE може вибірково керувати доступністю даних як на рівні бази даних, так і на нижчих рівнях. Наприклад,адміністратор може вимкнути доступ до конкретної програми (з тим, щоб можна було здійснити перезавантаження даних цієї програми), не торкаючись інших програм.
- ORACLE задовольняє промислово прийнятим стандартам з мови доступу до даних, операційних систем, інтерфейсів з користувачем та мережевих протоколів. Це "відкрита" система, що захищає інвестиції замовника. Сервер ORACLE7 був сертифікований Національним інститутом стандартів і технологій США як 100%-сумісний зі стандартом ANSI/ISO SQL89. ORACLE7 повністю відповідає вимогам урядового стандарту США FIPS127-1 і має "маркувальник" для підкреслення нестандартних застосувань SQL. Крім того, ORACLE7 був оцінений Урядовим національним центром комп'ютерної безпеки (NCSC) як сумісний із критеріями захисту Помаранчевої книги; сервер ORACLE7 та Trusted ORACLE7 відповідають відповідно як рівням C2 та B1 Помаранчевої книги, так і порівнянним з ними європейським критеріям захисту ITSEC.
- Для захисту від несанкціонованого доступу до бази даних ORACLE надає захищені від збоїв засоби безпеки, що лімітують та відстежують доступ до даних. Ці засоби дозволяють легко керувати навіть найскладнішими схемами доступу.
- ORACLE автоматично підтримує цілісність даних, дотримуючись "організаційних правил", які диктують стандарти прийнятності даних. Як наслідок, усуваються витрати на кодування та супровід перевірок у численних додатках бази даних.
- Щоб отримати максимум переваг з даної комп'ютерної системи або мережі, ORACLE дозволяє розділяти роботу між сервером бази даних та прикладними програмами клієнтів. Вся вага управління спільно використовуваними даними може бути зосереджена в комп'ютері,виконує СУБД, у той час як робочі станції, на яких працюють програми, можуть сконцентруватися на інтерпретації та відображенні даних.
- У комп'ютерних оточеннях, з'єднаних мережами, ORACLE комбінує дані, що фізично знаходяться на різних комп'ютерах, в одну логічну базу даних, до якої мають доступ усі користувачі мережі. Розподілені системи мають такий самий рівень прозорості для користувачів та узгодженості даних, що й нерозподілені системи, надаючи в той же час переваги управління локальною базою даних.
- Програмне забезпечення ORACLE переноситься між різними операційними системами та однаково у всіх системах. Програми, що розробляються для ORACLE, можуть бути перенесені до будь-якої операційної системи з мінімумом модифікацій або взагалі без таких.
- Програмне забезпечення ORACLE сумісне з промисловими стандартами, включаючи більшість стандартних операційних систем. Програми, що розробляються для ORACLE, можуть використовуватись у будь-якій операційній системі з мінімумом модифікацій або взагалі без таких. Програмне забезпечення ORACLE дозволяє різним типам комп'ютерів та операційних систем спільно використовувати інформацію за допомогою мереж.
Фізична та логічна структура ORACLE
База даних ORACLE має як фізичну, і логічну структуру. За рахунок поділу фізичної та логічної структури бази даних досягається можливість управління фізичною структурою даних, не торкаючись доступу до логічних структур даних.
Фізична структура бази даних ORACLE визначається файлами операційної системи, у тому числі складається база даних. Кожна база даних ORACLE складається з трьох типів файлів: одного або декількох файлів даних, двох або більше файлівжурналу повторення роботи та одного або кількох керуючих файлів.
Файли бази даних надають дійсну фізичну пам'ять інформації бази даних.
Логічна структура бази даних ORACLE визначається:
- одним або декількома табличними просторами;
- об'єктами схем бази даних (таблицями, оглядами, індексами, кластерами, послідовностями, процедурами, що зберігаються).
Логічні структури зберігання, включаючи табличні простори, сегменти та екстенти, визначають, як використовується фізичний простір бази даних. Об'єкти схем та відносини між ними формують реляційну структуру бази даних.
Блоки даних, екстенти та сегменти ORACLE надає можливість тонкого контролю за використанням дискової пам'яті через структури логічного зберігання, включаючи блоки даних, екстенти та сегменти.
Механізми ORACLE працюють через використання структур пам'яті та процесів. Усі структури пам'яті розташовуються в основній пам'яті (іноді званої віртуальної пам'яті чи пам'яттю довільного доступу) комп'ютерів, що становлять систему бази даних.
СУБД Oracle має власну мову PL/SQL
PL/SQL- це процедурне мовне розширення мови SQL, що належить фірмі Oracle. PL/SQL поєднує легкість та гнучкість SQL з процедурними можливостями мови структурного програмування, такими як IF. THEN, WHILE та LOOP.
При написанні програми бази даних розробник повинен розглянути переваги використання підпрограм PL/SQL, що зберігаються:
- Оскільки код PL/SQL може зберігатися централізовано у базі даних, мережевий трафік між додатками та базою даних скорочується, що збільшує продуктивність як додатків, так і системи.
- Завдяки коду PL/SQL, що зберігається.можна контролювати доступ до даних. При цьому методі користувачі PL/SQL можуть звертатися до даних лише так, як це передбачено розробником програми (якщо не надано інший маршрут доступу). - Блоки PL/SQL можуть пересилатися додатками до бази даних, що дозволяє виконувати комплексні операції без надмірного навантаження на мережу.
Навіть якщо PL/SQL не зберігається в базі даних, програми можуть пересилати до бази даних окремі пропозиції SQL, а цілі блоки, знову-таки скорочуючи мережевий трафік. Наступні секції описують різні програмні одиниці, які можна визначити і централізовано збережені у базі даних.
Процедури та функціїє сукупністю пропозицій SQL і PL/SQL, згрупованих в одиницю для вирішення специфічної проблеми або виконання безлічі взаємопов'язаних завдань. Процедура створюється та зберігається у базі даних у відкомпільованій формі, і може виконуватися (викликатися) будь-яким користувачем або програмою. Процедури і функції схожі один на одного, з тією різницею, що функція завжди повертає єдине значення, що викликає, програмі, тоді як процедура не повертає значення.
Пакетидають метод інкапсулювання та зберігання взаємопов'язаних процедур, функцій, змінних та інших конструктів пакета як одиниці у базі даних. Надаючи адміністратору бази даних або розробнику додатків організаційні переваги, пакети одночасно розширюють функціональні можливості (наприклад, глобальні змінні пакети можуть оголошуватися і використовуватися будь-якою процедурою в пакеті) і збільшують продуктивність бази даних (так, всі об'єкти пакету синтаксично розбираються, компілюються і завантажуються) на згадку один раз).
Тригери бази данихORACLEдозволяє вам писати процедури, які виконуються автоматично в результаті оновлення, вставки або видалення таблиці. Такі процедури називають тригерами бази даних. Тригери бази даних можуть використовуватися найрізноманітнішими способами для інформаційного управління базою даних. Наприклад, їх можна використовувати для автоматизації генерації даних, аудиту модифікацій даних, введення в дію комплексних обмежень цілісності або для організації складних процедур забезпечення захисту.
Багатокористувацькі системи баз даних, такі як ORACLE, включають засоби захисту, які контролюють звернення до бази даних та використання даних. Наприклад, механізми захисту виконують таке:
- запобігають несанкціонованому доступу до бази даних
- запобігають несанкціонованому доступу до об'єктів схем
- контролюють використання дисків
- Контролюють використання системних ресурсів (таких як час процесора)
- здійснюють аудит дій користувача
Наприклад, захист системи включає:
- дійсні комбінації імен користувачів та паролів;
- чи уповноважений користувач приєднуватися до бази даних;
- Об'єм дискової пам'яті, доступний об'єктам користувача;
- ліміти ресурсів для користувача;
- активність або неактивність аудиту бази даних;
-які системні операції дозволено виконувати користувачеві.
Захист даних включає механізми, що контролюють доступ до бази даних та її використання на рівні об'єктів.
Наприклад, захист даних включає:
- які користувачі мають доступ до конкретного об'єкта схеми і які типи дій дозволені кожному користувачеві на цьому об'єкті (наприклад, користувач SCOTT може видавати таблиціEMP пропозиції SELECT та INSERT, але не пропозиції DELETE);
- які дії підлягають аудиторському відстеженню кожного об'єкта схемы.
ORACLE управляє захистом бази даних, використовуючи кілька різних засобів, серед яких: