
- •Вступ до баз даних. Загальна характеристика основних понять
- •1.1. Розвиток основних понять представлення даних
- •Лекція 6
- •Друга стадія концептуального проектування бд. (Моделі даних субд. Представлення концептуальної моделі засобами моделі даних субд)
- •6.1. Представлення концептуальній моделі засобами моделі даних субд
- •6.2 Типові моделі даних субд і представлення концептуальної моделі
- •6.2.1. Мережева модель даних
- •6.2.2. Ієрархічна модель даних
- •6.2.3. Реляційна модель даних
- •6.2.4. Багатовимірна модель даних
- •6.3. Засоби автоматизованого проектування концептуальної моделі
- •Лекція 6
- •Друга стадія концептуального проектування бд. (Моделі даних субд. Представлення концептуальної моделі засобами моделі даних субд)
- •6.1. Представлення концептуальній моделі засобами моделі даних субд
- •6.2 Типові моделі даних субд і представлення концептуальної моделі
- •6.2.1. Мережева модель даних
- •6.2.2. Ієрархічна модель даних
- •6.2.3. Реляційна модель даних
- •6.2.4. Багатовимірна модель даних
- •6.3. Засоби автоматизованого проектування концептуальної моделі
- •Лекція 7
- •Формалізація реляційної моделі
- •7.1. Формалізований опис відношень і схеми відношень
- •7.2. Маніпулювання даними в реляційній моделі
- •7.3. Операції реляційної алгебри
- •Лекція 8
- •Використання формального апарату для оптимізації схем відношень
- •8.1. Проблема вибору раціональних схем відношень
- •8.2. Функціональні залежності (залежності між атрибутами відношення)
- •8.3. Декомпозиція схеми відношення
- •8.4 .Вибір раціонального набору схем відношень шляхом нормалізації
- •8.5. Приклад нормалізації до 3нф
- •8.6. Цілісна частина реляційної моделі. Реалізація умови цілісності даних в сучасних субд
- •Лекція 9
- •Фізичні моделі даних (внутрішній рівень)
- •9.1. Структура пам'яті еом
- •9.2. Представлення екземпляра логічного запису
- •9.3. Організація обміну між оперативною і зовнішньою пам'яттю
- •9.4. Структури зберігання даних у зовнішній пам'яті еом
- •9.4.1. Послідовне розміщення фізичних записів
- •Пошук запису із заданим значенням ключа
- •9.4.2. Розміщення фізичних записів у вигляді спискової структури
- •Пошук запису із заданим значенням ключа
- •9.4.3. Використання індексів (індексування)
- •Пошук і читання запису із заданим значенням ключа
- •Модифікація (коректування) запису
- •Видалення запису
- •Додавання запису
- •9.4.5. Розміщення записів з використанням хешування
- •Пошук запису із заданим значенням ключа і читання
- •Модифікації запису
- •Видалення запису
- •Додавання запису
- •9.4.6. Комбіновані структури зберігання
- •Лекція 10
- •Структура сучасної субд на прикладі Microsoft sql Server 2008
- •10.1 Загальна структура субд
- •10.2. Архітектура бази даних. Логічний рівень
- •Тип даних hierarchyid
- •Просторові типи даних
- •Індекси
- •Представлення
- •Складки
- •Обмеження
- •Правила
- •Значення за замовчуванням
- •10.3. Архітектура бази даних. Фізичний рівень
- •Файли і файлові групи
- •Сторінки і екстенти
- •Сторінки файлів даних
- •Організація таблиць та індексів
- •Управління роботою з екстентами і вільним місцем
- •Відстежування вільного місця
- •Лекція 11
- •Програмне забезпечення роботи з сучасними базами даних
- •11.1. Основні завдання програмного забезпечення баз даних
- •11.2. Проблеми створення і ведення реляційних баз даних
- •11.3. Поняття мови sql і його основні частини
- •11.3.1. Історія виникнення і стандарти мови sql
- •11.3.2. Переваги мови sql
- •11.3.2. Загальна характеристика sql
- •Термінологія
- •Різновиди sql
- •Лекція 12
- •Основні оператори мови sql. Інтерактивний sql
- •12.1. Загальне уявлення про основні оператори мови sql
- •12.2 Інтерактивний режим роботи з sql (інтерактивна sql)
- •12.3. Використання мови sql для вибору інформації з таблиці
- •12.4. Використання sql для вибору інформації з декількох таблиць
- •12.5. Використання sql для вставки, редагування і видалення даних у таблицях
- •Лекція 13
- •Використання мови sql у прикладних програмах
- •13.1. Програмний (вбудований) sql
- •13.2. Статичний sql
- •13.3. Динамічний sql
- •13.4. Інтерфейси програмування додатків (api). Db‑Library, odbc, oci, jdbc
- •Протокол odbc
- •Протокол jdbc
- •Бібліотека db-Library
- •Лекція 14
- •Напрями розвитку баз даних
- •14.1. Об'єктно-орієнтований підхід до організації баз даних
- •Об'єктно-орієнтоване програмування
- •Об'єктно-орієнтовані бази даних
- •Об'єктно-реляційні субд
- •14.2. Розподілені бази даних
- •14.3. Сховища даних
- •Основи криптології
Сторінки і екстенти
Основною одиницею сховища даних і обміну інформацією між зовнішньою і оперативною пам'яттю в SQL Server є сторінка. Місце на диску, що надається для розміщення файлу даних (MDF- або NDF-файл) у базі даних, логічно розділяється на сторінки з неперервним перерахуванням від 0 до n. Дискові операції введення-виведення виконуються на рівні сторінки. А саме, SQL Server прочитує або записує цілі сторінки даних. У SQL Server розмір сторінки складає 8 КБ. Це означає, що в одному мегабайті бази даних SQL Server міститься 128 сторінок. Кожна сторінка починається з 96-байтового заголовка, який використовується для зберігання системних даних про сторінку. Ці дані включають номер сторінки, тип сторінки, об'єм вільного місця на сторінці і ідентифікатор одиниці розподілу об'єкту, якому належить сторінка. У файлах даних бази даних SQL Server використовується 8 типів сторінок (дані з типами даних невеликих розмірів, дані з типами даних великих розмірів, записи індексу, відомості про розміщення екстентів, відомості про розміщення сторінок і доступному на них вільному місці і т. д.).
Для ефективного управління пам'яттю сторінки об'єднуються в екстенти, які є основними одиницями організації простору.
Екстент – це колекція, що складається з восьми фізично неперервних сторінок або 64 Кб; вони використовуються для ефективного управління сторінками. Всі сторінки зберігаються в екстентах. Таким чином, в одному мегабайті бази даних SQL Server міститься 16 екстентів.
Щоб зробити розподіл місця ефективним, SQL Server не виділяє цілі екстенти для таблиць з невеликим об'ємом даних. SQL Server має два типи екстентів:
Однорідні екстенти належать одному об'єкту (певній таблиці, індексу і т. д.); всі вісім сторінок можуть бути використані лише цим володіючим об'єктом.
Змішані екстенти можуть знаходитися в загальному користуванні в не більше восьми об'єктів. Кожна з восьми сторінок в екстенті може знаходитися у володінні різних об'єктів.
Нова таблиця або індекс – це звичайно сторінки, виділені із змішаних екстентів. При збільшенні розміру таблиці або індексу до восьми сторінок ці таблиця або індекс переходять на використання однорідних екстентів для послідовних одиниць розподілу. При створенні індексу для існуючої таблиці, в якій міститься досить рядків, аби сформувати вісім сторінок в індексі, всі одиниці розподілу для індексу знаходяться в однорідних екстентах. Приклад розміщення об'єктів у змішаному і однорідному екстентах наводиться на мал. 10.2.
Мал. 10.2. Розміщення об'єктів у змішаному і однорідному екстентах
Сторінки файлів даних
Сторінки файлів даних SQL Server нумеруються послідовно; перша сторінка файлу отримує нульовий номер (0). Кожен файл бази даних має унікальний цифровий ідентифікатор. Аби унікальним чином визначити сторінку бази даних, необхідно використовувати як ідентифікатор файлу, так і номер цієї сторінки. На мал. 10.3. показані номери сторінок бази даних, що містить первинний файл даних об'ємом в 4 МБ і вторинний файл даних об'ємом в 1 МБ.
Мал. 10.3. Приклад нумерації сторінок файлів бази даних
Перша сторінка кожного файлу (сторінка з номером 0) – це сторінка заголовку файлу; вона містить зведення про атрибути даного файлу. Сторінки з номерами 1,2,3 будуть описані нижче.