Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Оптимізація розподілених запитів

Автор:   •  Май 24, 2021  •  Лекция  •  15,306 Слов (62 Страниц)  •  279 Просмотры

Страница 1 из 62

Лекція 10. Оптимізація розподілених запитів

Обробка розподілених запитів (Distributed Query -DQ) - задача, більш складна, ніж обробка локальних і вона потребує вирішення за допомогою особливого компонента - оптимізатора DQ. Оптимізатор DQ запитів повинен враховувати такі параметри, як, в першу чергу, розмір таблиць, статистику розподілу даних по вузлах, обсяг даних, переданих між вузлами, швидкість комунікаційних ліній, структури зберігання даних, співвідношення продуктивності процесорів на

різних вузлах і т.д. Від інтелекту оптимізатора DQ прямо залежить швидкість виконання розподілених запитів.

Проблема оптимізації запитів бази даних складається із трьох основних компонент:

  1. Оптимізація запитів
  2. Оптимізація структури
  3. Оптимізація сервера

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

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

  1. Логічна оптимізація - перетворення логічних елементів запиту до найбільш оптимального представлення.
  2. Формування набору планів виконання запиту.
  3. Оцінка сформованих планів і вибір найбільш оптимального з них. Набір ресурсів, який підлягає мінімізації, складається з таких компонентів:
  1. Витрати на передачу даних між клієнтом і сервером. Вони лінійно залежать від обсягу переданих даних, а так само від якості і пропускної здатності каналу.
  2. Час завантаження сторінок в пам'ять комп'ютера. Залежить від обсягу даних і швидкості пристроїв.
  3. Завантаження процесора при виконанні обчислень.

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

Зазвичай виділяють два методи оптимізації запитів:

  1. Використання евристичних правил для передвпорядкування операцій запиту;
  2. Порівняння різних стратегій на основі їх відносних оцінок і вибір стратегії із мінімальним використанням системних ресурсів.

Евристичні методи оптимізації запитів – передбачають використання правил трансформації для

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

Правила перетворення операцій реляційної алгебри:

  1. Операція вибірки з коньюктивним предикатом може бути перетворена у послідовність операцій вибірки по членам кон’юнкції (і навпаки)
  2. Правило комутативності операції вибірки
  3. В послідовності операцій проекції необхідна лише остання із цих операцій
  4. Правило комутативності операцій вибірки і проекції
  5. Правило комутативності операції тета-з’єднання (і декартового добутку)
  6. Правило комутативності операцій вибірки і тета-з’єднання (або декартового добутку)
  7. Правило комутативності операцій проекції і тета-з’єднання (або декартового добутку)
  8. Правило комутативності операцій об’єднання і перетину (але не різниці множин)
  9. Правило комутативності операції вибірки і операцій над множинами(об’єднання, перетин і різниця множин)
  10. Правило комутативності операцій проекцій і об’єднання
  11. Правило асоціативності операції тета-з’єднання (і декартового добутку)
  12. Правило асоціативності операцій об’єднання і перетину (але не операції різниці множин)

Оптимізація запиту - це процедура вибору «найкращої» стратегії для реалізації запиту з множини альтернатив.

...

Скачать:   txt (152.5 Kb)   pdf (7.9 Mb)   docx (1.3 Mb)  
Продолжить читать еще 61 страниц(ы) »
Доступно только на Essays.club