Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OРГАНІЗАЦІЯ БАЗ ДАНИХ І ЗНАНЬ-ЛЕКЦІЯ.doc
Скачиваний:
0
Добавлен:
06.01.2020
Размер:
815.1 Кб
Скачать

Порівняльні параметри

На ефективність доступу даного методу впливають наступні три чинника:

  1. Розподіл вхідних ключів. В більшості випадків розподіл вхідних ключів відрізняється від чисто випадкового (рівномірного). Чим більше розробнику відомо про розподіл, тим вище імовірність правильного вибору числа блоків і числа записів в блоках. Оптимальний вибір цих значень дозволяє розробнику скоротити середню довжину ланцюжка синонімів. Ефективність методу доступу шляхом кешування в значному ступені залежить від довжини ланцюжка синонімів. В більшості систем керування базами даних функція хешування забезпечує прийнятні параметри.

  2. Розподіл пам'яті. Для ефективності доступу першорядне значення має рівномірність розподілу дійсних ключів на множині блоків (тобто у виділеному полі пам'яті). Якщо функція хешування призначає велике число ключів в одній області, то число синонімів зростає. Із збільшенням обсягу розподіленої пам'яті збільшується число адрес, що можуть формуватися підпрограмою рандомизації.

  3. Функція хешування. Правильно підібрана функція хешування повинна забезпечувати рівномірний розподіл дійсних ключів у виділеному полі пам'яті, знижуючи таким чином середню довжину ланцюжка синонімів.

Інвертований метод

Серед мультиспискових методів доступу особливе місце займає інвертований метод. Описані вище методи доступу не дозволяють проводити вибірку записів по більше, ніж одному типу атрибуту або полю запису. Для реалізації такий можливості треба використати інвертований метод доступу , оснований на застосуванні індексів для різних атрибутів. Цей метод частіше використовується для пошуку і (в деяких випадках) для поновлення (модифікації) [14, 15].

Зберігання найчастіше здійснюється з допомогою інших методів доступу. Завантаження бази даних може, наприклад, виконуватися будь-яким методом .

Рис 5.16. - Інвертований метод доступу

Кожному "інвертованому" полю файлу даних відповідає стаття в індексі. Стаття включає в себе ім'я поля, його значення і адресу запису. Після початкової завантаження бази даних здійснюється упорядкування статей по імені поля, а груп статей з загальним ім'ям поля - по значенню поля. Для кожного імені поля можна побудувати окремий індекс. Записи з одним і тим же значенням поля групуються, а загальне значення для всіх записів групи використовується в якості покажчика цієї групи. По мірі додавання нових записів створюються статті у відповідних індексах для відповідних значень. При виключені записів стаття індексу у відповідних індексах для відповідних значень знищуються.

На рис. 5.16 наведений приклад організації інвертованого індексу для номера групи файлу даних СТУДЕНТ, який інвертований відносно атрибуту запису "номер групи". Кожному інвертованому полю відповідає стаття в індексі (файл 1 рівня на рис.5.17). Стаття звичайно включає в себе ім'я поля, його значення і адресу запису. Якщо здійснюється пошук по іншому атрибуту, тобто необхідно побудувати окремий індекс, тобто інвертувати файл відносно цього поля. На рис.5.17 наведений приклад такої побудови для файлу СТУДЕНТ бази даних ФАКУЛЬТЕТ.

Організація даних в файлі (рівень 4) диктується вимогами так званого первинного методу доступу (певного на рівні 3) або задачами оптимізації операції читання всього файлу даних.

Рис. 5.17 - Структура інвертованого файлу з дворівневим індексом для файлу СТУДЕНТ.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]