- •Лекція 2. Середовище бази даних
- •Структура цієї лекції
- •2.1. Трьохрівнева архітектура ansi-sparc
- •2.1.1. Зовнішній рівень Зовнішній рівень - Представлення бази даних з погляду користувачів. Цей рівень описує ту частину бази даних, що відноситься до кожного користувача.
- •2.1.2. Концептуальний рівень Концептуальний рівень - узагальнююче представлення бази даних. Цей рівень описує, які дані зберігаються в базі даних, а також зв'язку, що існують між ними.
- •2.1.3. Внутрішній рівень Внутрішній рівень Фізичне представлення бази даних у комп'ютері. Цей рівень описує, як інформація зберігається в базі даних.
- •2.1.4. Схеми, відображення й екземпляри
- •2.1.5. Незалежність від даних
- •2.2. Мови баз даних
- •2.2.1. Мова визначення даних - ddl Мова ddl - описова мова, що дозволяє абд чи користувачу описати і поіменувати сутності, необхідні для роботи деякої програми, а також зв'язку між різними сутностями.
- •2.2.2. Мова керування даними - dml Мова dml - мова, що містить набір операторів для підтримки основних операцій маніпулювання даними, що містилися в базі.
- •Процедурні мови dml Процедурна мова dml - мова, що дозволяє повідомити системі про те, які дані необхідні, і точно вказати, як їх можна витягти.
- •Не процедурні мови dml Не процедурна мова dml - мова, що дозволяє вказати лише те, які дані вимагаються, але не те, як їх варто витягати.
- •2.2.3. Мови 4gl
- •Генератори форм
- •Генератори звітів
- •Генератори графічного представлення даних
- •Генератори програм
- •2.3. Моделі даних і концептуальне моделювання
- •Модель даних - Інтегрований набір понять для опису даних, зв'язків між ними й обмежень, що накладаються на дані в деякій організації.
- •2.3.1. Об'єктні моделі даних
- •2.3.2. Моделі даних на основі записів
- •Реляційна модель даних
- •Мережна модель даних
- •Ієрархічна модель даних
- •2.3.3. Фізичні моделі даних
- •2.3.4. Концептуальне моделювання
- •2.4. Функції скбд
- •2.4.1. Збереження, витяг і відновлення даних
- •2.4.2. Каталог, доступний кінцевим користувачам
- •2.4.3. Підтримка транзакцій
- •2.4.4. Сервисы керування паралельністю
- •2.4.5. Сервіси відновлення
- •2.4.6. Сервіси контролю доступу до даних
- •2.4.7. Підтримка обміну даними
- •2.4.8. Служби підтримки цілісності даних
- •2.4.9. Служби підтримки незалежності від даних
- •2.4.10. Допоміжні служби
- •2.5. Компоненти скбд
- •2.6. Архітектура багатокористувачевих скбд
- •2.6.1. Телеобробка
- •2.6.2. Файловий сервер
- •2.6.3. Технологія „клиент/сервер"
- •2.7. Системні каталоги
- •Системний каталог - сховище даних, що описують інформацію, що зберігається в базі даних, тобто мета-дані, чи "дані про дані".
- •2.7.1. Служба irds
Генератори форм
Генератор форм являє собою інтерактивний інструмент, призначений для швидкого створення шаблонів введення і відображення даних в екранних формах. Генератор форм дозволяє користувачеві визначити зовнішній вигляд екранної форми, її зміст і місце розташування на екрані. З його допомогою можна задавати кольори елементів екрана, а також інші характеристики, наприклад напівжирне, підкреслене, мерехтливе чи реверсивне накреслення і т.д. Більш сучасні генератори форм дозволяють створювати атрибути, що обчислюються, з використанням арифметичних операторів чи узагальнюючих функцій, а також задавати правила перевірки даних, що вводяться.
Генератори звітів
Генератор звітів є інструментом створення звітів на основі збереженої в базі даних інформації. Він подібний мові запитів у тім змісті, що користувачу надаються засоби створення запитів до бази даних і витягу з неї інформації, яка використовується для представлення в звіті. Однак генератори звітів, як правило, передбачають набагато більші можливості керування зовнішнім виглядом звіту. Генератор звіту дозволяє або автоматично визначати вид одержуваних результатів, або за допомогою спеціальних команд створювати свій власний варіант зовнішнього вигляду документа, що друкується.
Існує два основних типи генераторів звітів: мовний і візуальний. У першому випадку для визначення потрібних для звіту даних і зовнішнього вигляду документа варто увести відповідну команду на деякій підмові. В другому випадку для цих цілей використовується візуальний інструмент, подібний до генератора форм.
Генератори графічного представлення даних
Цей генератор являє собою інструмент, призначений для витягу інформації з бази даних і відображення її у виді діаграм із графічним представленням існуючих тенденцій і зв'язків. Звичайно за допомогою подібного генератора створюються гістограми, кругові, лінійчаті, крапкові діаграми і т.д.
Генератори програм
Генератор програм являє собою інструмент для створення програм, взаємодіючих з базою даних. Застосовуючи генератор програм, можна скоротити час, необхідний для проектування повного обсягу необхідного прикладного програмного забезпечення. Генератори програм звичайно складаються з попередньо створених модулів, що містять фундаментальні функції, що необхідні для роботи більшості програм. Ці модулі, звичайно створювані на мовах високого рівня, утворять "бібліотеку" доступних функцій. Користувач вказує, які задачі програма повинна виконати, а генератор додатків визначає, як їх варто виконати.
2.3. Моделі даних і концептуальне моделювання
Вище вже згадувалося, що схема створюється за допомогою деякої мови визначення даних. Насправді вона створюється на основі мови визначення даних конкретної цільовий СКБД. На жаль, це мова низького рівня; з її допомогою важко описати вимоги до даних у масштабі всієї організації так, щоб створена схема була доступна розумінню користувачів самих різних категорій. У чому ми дійсно бідуємо, так це в описі схеми на якомусь, більш високому рівні, що будемо називати моделлю даних.
Модель даних - Інтегрований набір понять для опису даних, зв'язків між ними й обмежень, що накладаються на дані в деякій організації.
Модель є представленням "реального світу" об'єктів і подій, а також існуючих між ними зв'язків. Це деяка абстракція, у якій акцент робиться на найважливіших і невід'ємних аспектах діяльності організації, а всі другорядні властивості ігноруються. Таким чином, можна сказати, що модель даних представляє саму організацію. Модель повинна відбивати основні концепції, представлені в такому вигляді, що дозволить проектувальникам і користувачам бази даних обмінюватися конкретними і недвозначними думками про їх розуміння ролі тих чи інших даних у цій організації. Модель даних можна розглядати як сполучення трьох зазначених нижче компонентів.
Структурна частина, тобто набір правил, по яких може бути побудована база даних.
Керуюча частина, що визначає типи припустимих операцій з даними (сюди відносяться операції відновлення і витягу даних, а також операції зміни структури бази даних).
Набір обмежень підтримки цілісності даних (необов'язково), що гарантують коректність використовуваних даних.
Мета побудови моделі даних полягає в представленні даних у зрозумілому вигляді. Якщо таке представлення можливо, то модель даних можна буде легко застосувати при проектуванні бази даних. Для відображення архітектури ANSI-SPARC можна ідентифікувати наступні три зв'язані моделі даних:
зовнішню модель даних, що відображає представлення кожного існуючого в організації типу користувачів, що іноді називають предметною областю (Universe of Discourse - Uo);
концептуальну модель даних, що відображає логічне (чи узагальнене) представлення даних, не залежне від типу обраної СКБД;
внутрішню модель даних, що відображає концептуальну схему певним чином, зрозумілим обраній цільовий СКБД.
У літературі запропоновано й опубліковано досить багато моделей даних. Вони підрозділяються на три категорії: об'єктні (object-based) моделі даних, моделі даних на основі записів (record-based) і фізичні моделі даних. Перші дві використовуються для опису даних на концептуальному і зовнішньому рівнях, а остання - на внутрішньому рівні.