У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


планів.

Припустимо, що база даних складається з деякої кількості "елементів даних". Як правило, за елемент даних вибирається один з перерахованих нижче об'єктів, розміри яких варіюються від дуже великих до дрібних:

вся база даних;

окремий файл;

окрема сторінка даних (область чи блок бази даних, що використовується для збереження таблиць);

окремий запис;

окреме поле в записі.

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

Розглянемо системну транзакцію, що обновляє єдиний кортеж у відношенні. Алгоритм протоколу керування паралельністю може дозволити транзакції заблокувати тільки цей єдиний кортеж, і в даному випадку рівень деталізації блокування буде встановлений рівним окремому запису. Однак можна дозволити транзакції заблокувати і всю базу даних у цілому, і цього разу рівень деталізації блокування буде дорівнювати всій базі даних. Очевидно, що в другому випадку обраний рівень деталізації буде перешкоджати виконанню будь-якої іншої транзакції, аж до скасування встановленого блокування. З іншого боку, якщо транзакція виконує відновлення 95% записів файлу, то краще дозволити їй заблокувати відразу весь файл, і не змушувати систему виконувати блокування кожного запису окремо.

Таким чином, чим більший розмір елемента даних, тим менш можливий рівень паралельності в системі. З іншого боку, чим дрібніше розмір елемента даних, тим більший обсяг інформації про виконані блокування прийдеться зберігати. Оптимальний розмір елемента даних залежить від природи виконуваних транзакцій. Якщо типова транзакція обробляє незначну кількість записів, доцільно установити рівень деталізації рівним окремому запису. У той же час, якщо типовій транзакції потрібен доступ до безлічі записів того самого файлу, більш вигідним рішенням буде установити рівень деталізації рівним окремому блоку, чи навіть файлу. У цьому випадку для одержання доступу до необхідних даних транзакції буде потрібно заблокувати один чи декілька елементів даних.

Є декілька методів динамічної установки розміру елемента даних. Відповідно до цих методів, розмір елемента даних залежить від типу виконуваних у даний момент транзакцій і встановлюється в залежності до питань оптимальної відповідності їх вимогам. В ідеалі, СУБД повинна підтримувати змішаний рівень деталізації, що дозволяє блокувати окремі записи, сторінки і цілі файли. Деякі системи автоматично підвищують рівень деталізації - від окремих записів чи сторінок до рівня файлу, якщо визначена транзакція блокує більше установленого відсотка записів деякого файлу.

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

Якщо елемент даних буде розміщений на тому вузлі, на якому він найчастіше використовується, отриманий рівень локальності посилань буде високий. При правильно обраному способі розподілу даних рівень продуктивності в системі буде відносно високим, а рівень витрат на передачу даних - низьким. Визначення і розміщення фрагментів проводитися з урахуванням особливостей використання бази даних. Проектування виконується на основі як кількісних, так і якісних показників.

Існують три правила, яких необхідно дотримуватись при проведенні фрагментації.

Повнота. Якщо екземпляр відносини R розбивається на фрагменти, наприклад F1, F2, ..., Fn, то кожен елемент даних, що присутній у відношенні R, повинний бути присутнім, принаймні, в одному зі створених фрагментів. Виконання цього правила гарантує, що дані не будуть втрачені в результаті виконання фрагментації.

Здатність відновлюватися. Повинна існувати операція реляційної алгебри, що дозволяє відновити відношення R з його фрагментів. Це правило гарантує збереження функціональних залежностей.

Непересічність. Якщо елемент даних є присутнім у фрагменті Fi, то він не повинен одночасно бути присутнім у будь-якому іншому фраг`менті. Виключенням з цього правила є операція вертикальної фрагментації, оскільки в цьому випадку в кожному фрагменті повинні бути присутні атрибути первинного ключа, необхідні для відновлення вихідного відношення. Дане правило гарантує мінімальну надмірність даних у фрагментах.

Розглянемо метод реплікації файлів, який полягає в послідовному усуненні переадресації запитів між вузлами обчислювальної мережі реформуванням файлів та їх перестановкою. Цей метод реалізовано на даних статистичних спостережень з обробки найбільш часто формованих запитів та їх обслуговування в обчислювальній мережі, що складається з n вузлів.

Транзакція складається з декількох агентів, тобто процесів, виконуваних на даному вузлі за вказівкою транзакції. Процедура виконання глобальної транзакції, запущеної на вузлі S1, буде здійснюватись у такий спосіб.

Координатор транзакцій (КТ1) на вузлі S1 розділить транзакцію на декілька субтранзакцій, виходячи з інформації, що зберігається у глобальному каталогу системи.

Компонент передачі даних на вузлі S1 відправить опис відповідних субтранзакцій на відповідні вузли.

Координатори транзакцій на вузлах Si , ... , Sj організують виконання субтранзакцій, що надійшли. Результати їх виконання будуть відправлені координатору КТ1 за допомогою компонентів передачі даних. Весь описаний процес схематично представлений на рис. 4.

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

У вузлах S1,…,Sn розміщено k фрагментів файлів так, що .

Рис. 4. Схема координації виконання розподілених транзакцій

За початковим розміщенням файлів отримані статистичні оцінки числових характеристик дискретних розподілів звертань до вузлів і файлів та їх обслуговування.

Приймемо наступну систему позначень:

Q1, … ,Qn – кількість до вузлів S1, … , Sn;

q1, … , qk - середні числа звертань до файлів вузлів;

, ,

, ,

де - звертання, які обслуговані власними файлами вузлу Si;

- звертання, не обслуговане файлом вузлу Si та


Сторінки: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19