- •1.Основні поняття. Бази даних, банк даних, інформаційна система. Традиційні файлові системи. Бази даних. Системи управління базами даних (субд). Компоненти банку даних.
- •2.Розподіл обов'язків в системах з базами даних. Історія розвитку субд. Класифікація банків даних. Переваги та недоліки субд.
- •3.Середовище бази даних. Трьохрівнева архітектура ansi-spark. Зовнішній рівень. Концептуальний рівень.
- •4.Внутрішній рівень. Мови баз даних. Моделі даних і концептуальне моделювання. Функції субд. Компоненти субд.
- •5.Етап концептуального проектування. Основні поняття концептуального проектування. Концептуальне проектування. Об'єкти і їх властивості. Взаємовідношення об'єктів.
- •6.Слабкі та складні сутності. Проведення етапу концептуального проектування субд.
- •8. Реляційна модель бази даних. Історія розвитку реляційної моделі. Структура реляційних даних. Відношення в базі та їх властивості. Типи даних.
- •9. Нормалізація відношень баз даних. Нормальні форми. Цілі нормалізації. Надлишковість даних і аномалії оновлення.
- •Шоста нормальна форма.Таблиця знаходиться у 6nf, якщо вона знаходиться у 5nf та задовольняє вимозі відсутності нетривіальних залежностей. Зазвичай 6nf ототожнюють з dknf.
- •10. Аномалії вставки. Аномалії вилучення.
- •11. Функціональні залежності. Процес нормалізації. Перша нормальна форма (1нф)
- •12. Друга нормальна форма (2нф).
- •14. Нормальна форма Бойса — Кодда
- •Null-значення
- •19 Мова sql. Формат sql-операторів. Маніпулювання даними
- •1. Формат sql-операторів
- •2. Маніпулювання даними
- •2.1. Вибірка всіх рядків
- •20. Вибірка всіх рядків. Вибірка рядків (речення where). Сортування результату (фраза order by).
- •2.2. Вибірка рядків (речення where)
- •2.3. Сортування результату (фраза order by)
- •21. Використання узагальнюючих функцій мови sql
- •22. Групування результатів (фраза Group), Обмеження на виконання групування (фраза having)
- •2.6. Обмеження на виконання групування (фраза having)
- •23. Підзапити
- •25. Особливості і синтаксис речень модифікації. Речення delete. Видалення одиничного запису. Видалення множини записів. Видалення з вкладеним підзапитом.
- •26 .Речення insert.
- •1. Вставка єдиною записи в таблицю
- •2. Вставка безлічі записів
- •1. Оновлення єдиною записи
- •2. Оновлення безлічі записів
- •3. Оновлення з підзапитом
- •28.Етап фізичного проектування. Основні структури зберігання та методи доступу до даних. Основні поняття. Невпорядковані послідовні файли.
- •29. Впорядковані послідовні файли. Хешовані файли. Індексно-послідовні файли.
- •31. Розподілені бази даних. Концепція розподілених баз даних. Розподілені транзакції. Реплікація даних. Розподілена оптимізація запитів.
- •32. Експертні системи та бази знань. Призначення експертних систем. Структура експертних систем. Представлення знань в експертних системах. Поняття експертної системи. Властивості знань.
4.Внутрішній рівень. Мови баз даних. Моделі даних і концептуальне моделювання. Функції субд. Компоненти субд.
Внутрішній рівень
Внутрішній Фізичне представлення бази даних у комп'ютері. Цей рівень рівень описує, як інформація зберігається в базі даних. Внутрішній рівень описує фізичну реалізацію бази даних і предна значен для досягнення оптимальної продуктивності і забезпечення економно го використання дискового простору. Він містить опис структур даних і організації окремих файлів, що використовуються для зберігання даних в запоми нающіх пристроях. На цьому рівні здійснюється взаємодія СУБД з ме методами доступу операційної системи (допоміжними функціями зберігання та вилучення записів даних) з метою розміщення даних на запам'ятовуючих вуст ройстве, створення індексів, вилучення даних і т.д. На внутрішньому рівні зберігається наступна інформація:
• розподіл дискового простору для зберігання даних та індексів;
• опис подробиць збереження записів
• відомості про розміщення записів;
• відомості про стиснення даних і обраних методах їх шифрування.
Концептуальне проектування
Концептуальне проектування передбачає виконання наступних кроків:
1) аналіз вимог до БД із боку користувачів і побудову так називаної користувацької моделі (вивчення і систематизація інформації про користувачів, їхні інформаційні потреби, джерела інформації, реальні інформаційні потоки і бізнес-правила);
2) виявлення основних об'єктів (сутностей), що підлягають відображенню в моделі, виходячи зі специфіки предметної області, цілей замовника і наявного ділового регламенту;
3) визначення атрибутів сутностей і їхнє приведення у відповідність із вимогами майбутньої об'єктної моделі;
4) визначення зв'язків між сутностями і властивостей сутностей;
5) вибір типу інфологічної (об'єктної) моделі і її побудова. Найчастіше це модель «сутність – зв'язок» (ER-діаграма);
6) перевірку моделі даних;
7) побудову розподіленої моделі даних;
8) вибір моделі організації даних у концептуальній схемі.
Мови баз даних
• FoxProK (язык программирования)
• PL/Perl
• PL/pgSQL
• PL/Python
• PL/SQL
• PL/Tcl
• RPG (язык программирования)
• SQL/PSM
• Transact-SQL
СУБД найчастіше використовуються дві основні мови опису запитів:− SQL (Structured Query Language) – структурована мова запитів − QBE (Query By Example) – мова запитів за зразком. Головна різниця між цима мовами полягає в тому, що мова QBE передбачає ручне або візуальне формування запиту, а мова SQL – програмування запиту.
Функції СУБД
Абстракція даних, управління словником даних. Функціонування СУБД передбачає, що визначення елементів даних і їх відносин (метадані) зберігаються в словнику даних (data dictionary). У свою чергу будь-які програми отримують доступ до даних за допомогою СУБД. Для пошуку необхідних структур даних і їх відносин СУБД використовує словник даних, допомагаючи уникнути кодування таких складних взаємозв'язків в кожній програмі. Вдобавок будь-які зміни, які робляться в структурі бази даних, автоматично реєструються в словнику даних, що також звільняє програміста від необхідності модифікувати програми доступу до змінених структур даних. СУБД забезпечує абстракцію даних, тим самим усуваючи в системі структурну залежність і залежність за даними.
Управління зберіганням даних. СУБД створює складні структури, необхідні для зберігання даних, звільняючи програмістів від визначення і програмування фізичних властивостей даних. Сучасні СУБД забезпечують зберігання не тільки даних, але і пов'язаних із даними екранних форм, схем звітів, правил перевірки даних, коду процедур, систем обробки мультимедіа, форматів зображень, і т. п.
Перетворення і представлення даних. СУБД бере на себе задачу структуризації даних, що вводяться, перетворюючи їх у форму, зручну для зберігання. Тому СУБД і в даному випадку позбавляє людину від рутинної роботи по перетворенню логічного формату даних у фізичний формат. Забезпечуючи незалежність даних, СУБД перетворює логічні запити в команди, що визначають їх фізичне місцеположення і витяг. Таким чином, СУБД забезпечує програмну незалежність і абстракцію даних.
Управління безпекою. СУБД створює систему безпеки, яка забезпечує захист користувача і конфіденційність даних усередині БД. Правила безпеки встановлюють, які користувачі можуть одержати доступ до бази даних, до яких елементів даних користувач може отримати доступ, які операції з даними (читання, додавання, видалення або зміну) може виконувати користувач.Управління багатокористувацьким доступом. СУБД створює складні структури, що забезпечують доступ до даних декількох користувачів одночасно.
Управління резервним копіюванням і відновленням. В СУБД є процедури резервного копіювання і відновлення даних, що забезпечують їх безпеку і цілісність. Сучасні СУБД містять спеціальні утиліти, за допомогою яких адміністратори бази даних можуть виконувати регулярні та екстрені процедури резервного копіювання і відновлення даних. Відновлення даних проводиться після пошкодження БД, наприклад, у випадку появи збійних секторів на жорсткому диску або після аварійного відключення живлення. Така можливість необхідна для забезпечення цілісності даних.
Управління цілісністю даних. В СУБД передбачені правила, що забезпечують цілісність даних, що дозволяє мінімізувати надмірність даних і гарантувати їх несуперечність. Для забезпечення цілісності даних використовуються їх зв'язку, які зберігаються в словнику даних.
Підтримка мови доступу до даних і інтерфейсів прикладного програмування. СУБД забезпечує доступ до даних за допомогою мови запитів. Мова запитів - це непроцедурного мова, тобто він надає користувачеві можливість визначити, що необхідно виконати, не вказуючи, як це зробити. До складу мови запитів СУБД входять два основних компоненти: мова визначення даних (Data Definition Language, DDL) і мова маніпулювання даними (Data Manipulation Language, DML). DDL визначає структури, в яких розміщуються дані, а DML дозволяє кінцевим користувачам отримувати дані з БД.
На практиці для визначення структури бази даних використовуються оператори DDL, а для заповнення цих таблиць даними і вибірки з них інформації за допомогою запитів — оператори DML.
Ці мови у різних СКБД можуть різнитися. Найбільше поширення отримали дві стандартизовані мови:
- мова запитів за зразком, QBE (Query By Example) ; - структурована не процедурна мова з відносно невеликим (близько 30) набором команд, SQL (Structured Query Language).
Компоненти СУБД.
СУБД - це спеціалізоване ПО, призначене для забезпечення ефективного доступу до бази даних, яка використовується для надання тільки необхідної інформації, забезпечення незалежності від можливих змін у структурі (тієї частини бази даних, якої не обробляє програма).
Функції:
· управління даними у зовнішній і оперативної пам'яті комп'ютера
· управління транзакціями
· журналізації змін БД
· підтримки мов доступу до даних
Компоненти:
1) ядро , яке відповідає за управління даними у зовнішній і оперативної пам'яті і журналізацію,
2) процесор мови бази даних , що забезпечує оптимізацію запитів на вилучення та зміну даних і створення, як правило, машинно-незалежного виконуваного внутрішнього коду,
3) підсистему підтримки виконання , яка інтерпретує програми маніпуляції даними, що створюють користувальницький інтерфейс із СУБД
4) а також сервісні програми (зовнішні утиліти), що забезпечують ряд додаткових можливостей по обслуговуванню інформаційної системи.
Типи даних:
Деякі елементарні:
· Символ
· Ціле
· Дробове
· Булево (правда / неправда)
Деякі складові:
· Рядок символів
· Набір допустимих значень (напр. Одружений / Не одружений / Неодружений)
· байтовой набір (напр. зображення)
Моделі даних і концептуальне моделювання.
Основою бази даних є модель даних — фіксована система понять і правил для представлення даних структури, стану і динаміки проблемної області в базі даних. У різний час послідовне застосування одержували ієрархічна, мережна і реляційна моделі даних. У наш час усе більшого поширення набуває об'єктно-орієнтований підхід до організації баз даних ГІС.
Концептуальна модель
1. Формулювання змістовного і внутрішнього представлення, що поєднує концепцію користувача й розробника моделі. Вона включає в явному виді логіку, алгоритми, припущення й обмеження.
2. Абстрактна модель, яка виявляє причинно-наслідкові зв'язки, властиві досліджуваному об'єктові в межах, визначених цілями дослідження. По суті, це формальний опис об'єкта моделювання, який відображає концепцію (погляд) дослідника на проблему.
Концептуальна модель - модель предметної області, що складається з переліку взаємопов'язаних понять, що використовуються для опису цієї області, разом з властивостями й характеристиками, класифікацією цих понять, за типами, ситуацій, ознаками в даній області і законів протікання процесів в ній. (Тлумачний словник по штучному інтелекту)
Концептуальна (змістовна) модель - це абстрактна модель, що визначає структуру модельованої системи, властивості її елементів і причинно-наслідкові зв'язки, властиві системі і суттєві для досягнення мети моделювання.
Основні елементи концептуальної моделі:
умови функціонування об’єкта, визначені характером взаємодії між об’єктом і його оточенням, а також між елементами об’єкта;
мета дослідження об’єкта та напрямок покращення його функціонування;
можливості керування об’єктом, визначення складу керованих змінних об’єкта.