індекс унікальним. Взаємовиключні необов'язкові параметри CLUSTERED і NONCLUSTERED (параметр за замовчуванням) дозволяє створювати кластерні і некластерние індекси, відповідно. Параметр ASC наказує, що індекси (або ж самі кортежі, при створенні кластерного індексу) повинні бути відсортовані за зростанням, а DESC - за зменшенням. Параметр FILLFACTOR здійснює настройку розбиття індексу на сторінки і помітно оптимізує роботу СУБД. Коефіцієнт FILLFACTOR визначає в процентному співвідношенні розмір створюваних індексних сторінок. При цьому мається обернено пропорційна залежність частоти роботи з таблицею і коефіцієнта FILLFACTOR. Параметр PAD_INDEX визначає заповнення внутрішнього простору індексу і застосовується спільно з FILLFACTOR. Параметр DROP_EXISTING при використанні кластерного індексу визначає його повторне створення, що дозволяє запобігти небажаному оновлення кластерних індексів. Параметр STATISTICS_NORECOMPUTE визначає функції автоматичного оновлення статистики для таблиці. p align="justify"> Не дивлячись на всі переваги використання індексів, вони не позбавлені недоліків. Перелічимо основні з них:
Індекси займають додатковий простір дискової та оперативної пам'яті;
Індекси суттєво уповільнюють виконання DDL операторів (наприклад, ALTER TABLE), через те, що, як правило, це вимагає перерахунку всіх індексів.
Як стало видно з цієї глави, розумне застосування індексів може істотно підвищити продуктивність SQL-запитів, за вибіркою даних.
кластеризація реляційний запит кешування
1.4 Кешування в базах даних
Кешування - це тимчасове зберігання часто використовуваних даних на носіях інформації (найчастіше, це оперативна пам'ять), що мають менший час доступу, в порівнянні з ЖМД.
У сучасних базах даних для мінімізації операцій фізичного введення-виведення, використовується технологія кешування даних. При цьому відбувається виділення порівняно великого сегменту пам'яті фіксованого розміру, одночасно доступного всім сеансам бази даних. Цей сегмент пам'яті називається буфером блоків кешу [8, С. 30]. Буфер блоків кешу являє собою зв'язаний список, елементами якого є блоки даних одного розміру, лічені з диска. Будь-яка операція доступу до даних називається логічним введенням-висновком. Обмін даними, перебувають в оперативній пам'яті, є строго логічним введенням-висновком, в той час як операції дискового введення-виведення - як логічного, так і фізичного. p align="justify"> Примітка - загальна схема кешування наведена в додатку А.
Для наочної ілюстрації цієї схеми, звернемося до книги Дена Тоу, Налаштування SQL для професіоналів: "З невеликими змінами кеш заповнюється і підтримується досить простим способом. Кожен раз, коли базі даних необхідно звернеться до блоку да...