Будинки Бази даних Що робить дефрагментація для систем sql?

Що робить дефрагментація для систем sql?

Anonim

Q:

Що робить дефрагментація для систем SQL?

A:

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

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

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

Дві основні операції, які виконуються в процесі дефрагментації:

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

Тому дефрагментація повинна бути частиною процесу обслуговування SQL Server і її потрібно сприймати серйозно. Слід створити та дотримуватись відповідного плану аналізу запитів. На основі результатів аналізу запитів слід здійснити перебудову чи реорганізацію індексів. Коротше кажучи, дефрагментація має важливе значення для підвищення продуктивності систем SQL.

Що робить дефрагментація для систем sql?