- •Організація баз даних
- •1.Вступ
- •2.Основні поняття.
- •1.1. Класифікація інформаційних систем
- •2.Файлові системи бд. Підхід, використовуваний у файлових системах. Обмеження, властиві файловим системам.
- •3.Системи з базами даних. База даних. Система керування базами даних — скбд. Компоненти середовища скбд. Переваги і недоліки скбд.
- •3.1.Компоненти середовища скбд
- •Контроль за надмірністю даних
- •3.4.Недоліки скбд
- •4.Етапи життєвого циклу інформаційної системи. Розробка бази даних. Розподіл обов'язків у системах з базами даних. Адміністратори даних і адміністратори баз даних.
- •2.1.Трьохрівнева архітектура ansi-sparc.
- •2.2. Схеми, відображення й екземпляри
- •2.3.Незалежність від даних
- •1. Функції субд (3.11.01.02).
- •1.Безпосереднє управління даними в зовнішній пам'яті
- •2.Управління транзакциями
- •3.Журналізація
- •4.Підтримка мов бд
- •5.Адміністрування бд.
- •2. Концепція відкритих систем. Відкритий зв’язок з бд odbc (3.11.04.01).
- •3. Багатокористувацькі субд та їх архітектура.
- •3.1. Телеобробка
- •3 .2.Архітектура іс з файловим сервером
- •3.3.Технологія "клієнт/сервер"
- •3.4.Розподілена архітектура.
- •3.5.Інтернет - архітектура.
- •4.1.Модель даних, мета побудови, класифікація, область застосування
- •4.2. Об'єктні моделі даних
- •4.3. Моделі даних на основі записів
- •4.2.1.Ієрархічна модель даних
- •4.2.2.Мережева модель даних у мережній структурі при тих же основних поняттях (рівень, вузол, зв'язок) кожний елемент може бути пов'язаний з будь-яким іншим елементом.
- •4.2.3.Реляційна модель даних
- •4.4. Фізичні моделі даних
- •5.1. Математичні відношення. Структура реляційних даних.
- •5.2.Домени
- •Лекція 6. Концептуальне проектування. Метод er-діаграми.
- •6.1.Рівні проектування предметної області (3.11.06.01).
- •6.2. Інфологічне проетування бд (3.11.06.02).
- •6.2. Концептуальне проектування бази даних та методологія.
- •6.3. Логічне проектування бд.
- •6.4. Даталогічна або фізична модель даних (3.11.06.03).
- •6.5. Проектування бд методом “сутність-зв’язок” er-діаграми (3.11.06.06)
- •6.5.2.Представлення зв'язків та сутностей на діаграмах.
- •6.5.4.Правила формування зв’язків між сутностями концептуальної схеми.
- •5.3.Нормалізація.
- •5.3.2.Процес нормалізації.
- •5.3.3.Нормальна форма Бойса-Кодда (нфбк). Визначення нормальної форми Бойса-Кодда.
- •5.3.4. Четверта нормальна форма (4нф). Визначення четвертої нормальної форми.
- •5.3.5. П'ята нормальна форма (5нф) Властивості з'єднання без втрат і збереження залежності
- •8.2. Виникаючі проблеми при використанні універсального відношення.
- •7.1. Введення в реляційну алгебру і реляційне числення.
- •7.2. Реляційна алгебра та її операції.
- •Вихідне відношення r та результуюче відношення s.
- •7.5.1. Операція декартового добутку
- •7.5.2. Операція об’єднання
- •7.5.3. Операція різниці.
- •7.5.4.Операції з'єднання
- •7.5.4.5.2. Праве відкрите зовнішнє з'єднання.
- •7.5.4.5.2. Повне відкрите зовнішнє з'єднання.
- •7.5.5.Операція перетинання
- •7.5.6.Операція ділення
- •10.1. Вступ Основні поняття sql.. Історія розвитку
- •10.2. Структура мови sql-92.
- •10.3. Основні оператори мови dml.
- •10.4 Зміна вмісту бази даних. Запити на оновлення даних
- •10.5. Оператори адміністрування:
- •10.63. Загальний огляд методів обробки запитів.
- •10.7. Архітектура клієнт-сервера і мова sql.
- •10.8 Забезпечення безпеки
- •11.1. Основні оператори мови ddl.Запити на створення та оновлення схеми бд, таблиць та представлень.
- •11.1.1. Створення баз даних.
- •11.1.2.Створення таблиць (оператор create table). Видалення таблиць (оператор drop table).
- •11.1.3.Створення відображення(представлення).В идаленнявідображення.
- •11.1.4.Створення індексу (оператор create index). Видалення індексу (оператор drop index).
- •11.2. Мова sql та qbe
- •10. Внутрішня мова субд.
- •11. Зберігаємі процедури та тригери. Призначення та переваги.
- •12. Технології доступу bde, ado, ado.Net, jdbc
- •Лекція 12. Транзакції. Паралельне виконання транзакцій.
- •12.1. Визначення транзакції. Виконання. Відкат.
- •12.2. Властивості транзакції. Види транзакцій.
- •12.3. Блокування. Рівні ізолювання транзакцій.
- •12.4. Управління транзакціями в мовах програмування.
- •12.4. Впорядкованість і відновлюваність.
- •12.5 Методи керування паралельністю.
- •Лекція 13. Індексація даних в бд.
- •13.1. Поняття індексації даних.
- •2.Структура індекса. Аналогією індекса може слугувати зміст будь якої книги з вказаними номерами сторінок, де починається той чи і інший розділ.
- •3. Технологія b-дерева
- •3.1.Типи індексів b-дерева.
- •3.1.1.Кластерні індекси
- •3.1.2.Некластерні індекси
- •4. Технологія хеширування.
- •5.Алгоритм роботи скбд при внесенні та видаленні запису в таблицю, що містить індексовані поля з використанням технології в-дерева.
- •5.1.При вставці нового запису в таблицю виконується:
- •5.2.При видаленні запису виконуються наступні дії:
- •6.Властивості індексів.
- •7.Індексація. За і проти. Ефективність використання.
- •8.Обмеження використання індексів.
- •8.1.Обмеження послідовності стовпців складного ключа.
- •8.2.Обмеження пов’язані з низькою селективністю індекса.
- •9.Індексація данних бд та оптимізатор sql-запитів.
- •10. Повнотекстові індекси
- •14.1. Розподіленні бази даних.
- •14.1.1. Класифікація рбд.
- •14.1.2. Переваги рбд.
- •14.1.3. Недоліки рбд.
- •14.1.4. Функції сурбд.
- •14.1.5. Архітектура рбд.
- •14.2. Компонентна структура рбд.
- •14.3. Проектування розподілених баз даних.
- •Фрагментація повина відповідати правилам:
- •14.4. Забезпечення прозорості.
- •16.1. Апаратні та програмні складові.
- •16.2. Особливості oltp, dss та olap систем
- •16.6. Безпека бази даних
- •16.3. Управління користувачами.
- •16.2. Управління доступом. Засоби підтримки безпеки в sql.
- •17.1. Недоліки реляційних систем.
- •17.2. Основні концепції об’єктно-орієнтованого підходу.
- •17.3. Альтернативні стратегії розробки об’єктно-орієнтованих субд.
- •17.4. Переваги та недоліки об’єктно-орієнтованих субд.
- •17.5. Перспективи розвитку бд.
11.1.3.Створення відображення(представлення).В идаленнявідображення.
-CREATE VIEW – створити відображення
CREATE VIEW INSTITUT( KI, NAMI) AS SELECT ID, NAMP FROM PIDROZDIL WHERE GRUPP=2; - створити користувацьке відображення INSTITUT на базі запиту до таблиці PIDROZDI .
-DROP VIEW
У реляційній моделі слово "відображення" (view) характеризує не всю зовнішню модель користувача, а лише деяке віртуальне відношення (virtual relation), тобто відношення, яке насправді не існує, але яке динамічно відтворюється на підставі одного чи декількох базових відношень (відношень, що реально існують у базі даних
11.1.4.Створення індексу (оператор create index). Видалення індексу (оператор drop index).
CREATE INDEX
DROP INDEX
11.2. Мова sql та qbe
Для підготовки запитів за допомогою різних СУБД найчастіше використовуються два основні мови опису запитів: мова QBE (Query By Example) - мова запитів за зразком; мова SQL (Structured Query Language)-структурований мова запитів.
У мові QBE (Query-by-Example - мова запитів за зразком) використовується візуальний (графічний) підхід для організації доступу до інформації в БД, заснований на застосуванні шаблонів запитів(бланків таблиць). Застосування QBE здійснюється шляхом завдання зразків значень в шаблоні запиту, що передбачає такий тип доступу до бази даних, який потрібно в даний момент, наприклад отримання відповіді на деякий питання.
Мова QBE був розроблений компанією IBM в 1970-х роках і призначався для користувачів, зацікавлених у виборі інформації з баз даних. Ця мова отримала у користувачів настільки широке визнання, що в даний час в тій або іншій мірі він реалізований практично у всіх популярних СУБД, включаючи і Microsoft Access.
Засоби підтримки мови QBE в СУБД Microsoft Access досить прості в експлуатації і в той же час представляють користувачам досить широкий спектр можливостей роботи з даними. Засоби мови QBE можуть використовуватися для введення запитів до інформації, що зберігається в одній або кількох таблицях, а так само для визначення набору полів, які повинні бути присутніми в результуючій таблиці.
Крім того, засоби мови QBE можна використовувати для виконання різних операцій над таблицями, наприклад, для вставки і видалення записів, модифікації значень полів або створення нових полів і таблиць.
СУБД Microsoft Access при створенні запиту з використанням засобів QBE неявно формує еквівалентний оператор мови SQL, призначений для виконання зазначених дій.
10. Внутрішня мова субд.
11. Зберігаємі процедури та тригери. Призначення та переваги.
12. Технології доступу bde, ado, ado.Net, jdbc
Для організації запитів до серверної БД на мові SQL або за допомогою клієнтських програм реалізовані різні технології доступу до даних. До їх числа належать:
- Інтерфейс BDE (процесор баз даних фірми Borland);
Один з найперших інтерфейсів для роботи з базами даних є Database Engine (BDE) — процесор баз даних фірми Borland.
BDE слугує посередником між додатком і базами даних. Він надає користувачу єдиний інтерфейс для роботи, що робить додаток незалежним від конкретної реалізації БД. Завдяки цьому не треба міняти додатки при зміні реалізації бази даних.
Додаток, коли йому потрібно зв'язатися з базою даних, звертається до BDE і повідомляє за звичай псевдонім бази даних(аліас) і необхідну таблицю у ній. BDE реалізований у вигляді динамічно приєднуваних бібліотек DLL.
Вони, як і будь-які бібліотеки, забезпечені API (Application Program Interface — інтерфейсом прикладних програм), названим IDAPI (Integrated Database Application Program Interface). Це список процедур і функцій для роботи з базами даних, яким і користуються додатки.
BDE по псевдоніму знаходить відповідний для вказаної бази даних драйвер - це допоміжна програма, яка розуміє, як спілкуватися з базами даних певного типу. Якщо в BDE є власний драйвер відповідної СУБД, то BDE зв'язується через нього з базою даних і з потрібною таблицею в ній, обробляє запит користувача і повертає в додаток результати обробки. Якщо власного драйвера потрібної СУБД в BDE немає, то використовується драйвер ODBC. ODBC (Open Database Connectivity).
BDE підтримує SQL — стандартизовану мову запитів, що дозволяє обмінюватися даними з SQL-серверами, такими, як Sybase, Microsoft SQL, Oracle, Interbase. Ця можливість використовується особливо широко при роботі на платформі клієнт/сервер і в розподілених базах даних.
- Технології ODBC (сумісності відкритих баз даних);
Її особливість полягає в абстрагуванні програми від особливостей ядра серверної бази даних, з якою вона здійснює взаємодію, тому серверна база даних стає як би прозорою для будь-якого клієнтського додатку.
Отриманий драйвером ODBC запит від клієнтської програми перекладається мову ядра і відправляється на виконання до SQL-сервера чи ядра монопольної БД.
Перевагою цієї технології є простота розробки додатків, що обумовлена високим рівнем абстрактності інтерфейсу доступу до даних практично будь-яких існуючих типів СУБД.
Основний недолік технології ODBC пов'язаний з необхідністю трансляції запитів, що знижує швидкість доступу до даних.
У системах клієнт-сервер цей недолік усувається шляхом переміщення запиту з комп'ютера-клієнта на комп'ютер-сервер в зберігаємі процедури та тригери.
Інтерфейсу OLE DB (зв'язування і вбудовування об'єктів баз даних);
OLE DB ( англ. Object Linking and Embedding, Database ) - набір інтерфейсів, заснованих на COM [читається кому](в OLE DB їх називають провайдерами - поставщиками даних), які дозволяють додаткам звертатися до даними, збереженим в різних джерелах інформації або сховищах даних за допомогою уніфікованого доступу.
COM ( англ. Component Object Model - Об'єктна модель компонентів; вимовляється як [кому]) - це технологічний стандарт від компанії Microsoft, призначений для створення програмного забезпечення на основі взаємодіючих компонентів, кожен з яких може використовуватися в багатьох програмах одночасно. Стандарт втілює в собі ідеї поліморфізму та інкапсуляції об'єктно-орієнтованого програмування. COM є базовою для технологій ADO та OLE - вони лише надстройки над даною технологією.
Ця технологія є стратегічною для MicroSoft, прийшла в якості наступника ODBC, розширюючи набір функцій для підтримки більш широкого кола нереляційних джерел даних, таких як об'єктно орієнтовані бази даних або електронні таблиці, і для яких не обов'язково використовувати SQL.
OLE DB відокремлює сховище даних від програми, яка повинна мати доступ до нього через набір абстракцій (DataSource, сесію, командний рядок)
- Технології DAO (об'єктів доступу до даних);
При використанні технології DAO робота з базами даних, таблицями ведеться з використанням колекцій об'єктів. При цьому забезпечуються великі зручності у роботі з об'єктами баз даних.
В даний час технологія DAO поступово витісняється технологією ADO, яка дозволяє розробляти додатки Web для роботи з базами даних.
- Технології ADO (об'єктів даних).
Розроблена в Microsoft технологія ActiveX Data Objects (ADO), характеризується як найбільш сучасна технологія розробки додатків для роботи з розподіленими базами архітектури клієнт-сервер.
ADO — це призначений для користувача інтерфейс для будь-яких типів даних, включаючи реляційні і не реляційні бази даних, електронну пошту, системні, текстові і графічні файли. Зв'язок з даними здійснюється по засобом так званої технології OLE DB.
Р
ис.10.3.
Об’єкт
ADO конвертує об’єкти OLE DB (набори даних)
Технології ADO.NET (об'єктів даних).
Appilications – додаток, прикладна програма.
АDO.NET (ActiveX Data Objects .NET) — це набір бібліотек, що поставляється з Microsoft .NET Framework і призначений для взаємодії з різними сховищами даних з .NET-застосувань.
Бібліотеки ADO.NET включають класи для приєднання до джерела даних, виконання запитів і обробки їхніх результатів. Крім того, ADO.NET можна використовувати в якості надійного, ієрархічно організованого, відокремленого кешу даних для автономної роботи з даними.
Ця технологія достатньо універсальна, оскільки дозволяє розробляти як прості та і досить складні. При цьому дані можуть зберігатись не тільки в реляційних БД, но і в файлі формата XML, а з’єднання з БД не обовязково повино бути постійним (встановлюється лише на короткий час, коли необхідимо проводити операції над БД.)
Її переваги:
-Підтримка XML
-ADO також підтримує XML ,але не буде так само ефективно обробляти XML-дані, як це робить ADO.NET, оскільки ADO.NET створювався з врахуванням XML,а ADO-ні.
-Простота модифікації
-Простота програмування
-Компоненти
даних ADO.NET в Visual Studio інкапсулюють
функціональні можливості доступу до
даних різними способами, що допомагає
розробляти програмні продукти значно
швидше і з меншою кількістю помилок.
-Продуктивність
Рис.10.4. IB Provider – COM-компонент
Разом з тим необхідно признати, що нова технологія інколи всеж програє традиційній. Для таких випадків рекомендовано (не тільки мною, но і Microsoft) використовувати ADO.
Платформа ADO.NET Entity Framework разработана, чтобы разработчики могли создавать приложения для доступа к данным путем программирования по концептуальной модели приложения, а не по реляционной схеме хранения. Ее целью является уменьшение объема кода и затрат на сопровождение приложений, ориентированных на обработку данных.
-Технологія JDBC
JDBC є інтерфейсом прикладного програмування Java для работи з БД. Він
складається з набору класів та інтерфейсів, написаних на мові программуваня Java, і використання JDBC як і ODBC дозволяє усунути розробку різних програм під різні платформи.
Драйвери JDBC
Всього існує чотири категорії драйверів JDBC.
Тип 1 - драйвери, які реалізують інтерфейс JDBC поверх іншого інтерфейса, наприклад ODBC; Ця категорія драйверів часто залежить від конкретних платформ, тому є проблемною при перенесені.
Тип 2 - драйвери, частково написані на Java, а частково - в вигляді бінарного системно-залежного коду; в них, як правило, використовуються бінарні бібліотеки конккретних платформ бинарные, що забезпечують зв’язок з БД на низькому рівні.
Тип 3 - драйвери, реалізовані повністю на Java і взаємодіючі безпосередньо з сервером проміжного рівня при допозі незалежного від конкретної БД протокола; цей сервер передає клиєнтські запити джерелу даних.
Тип 4 - драйвери, реалізовані повністю на Java і взаємодіючі безпосередньо з БД через мережевий протокол.
- Інтерфейс DB-LIB (бібліотек баз даних);
Інтерфейс DB-LIB являє собою спеціально призначений для SQL інтерфейс прикладних програм.
