Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 23544|Відповідь: 2

[Джерело] Оптимізована для продуктивності фрагментація індексу SQL Server

[Копіювати посилання]
Опубліковано 27.12.2020 22:32:27 | | | |
Огляд фрагментації індексу

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

Команда:



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

Використовуйте функцію sys.dm_db_index_physical_stats для визначення ступеня фрагментації, поля avg_fragmentation_in_percent відсотка повернених логічних фрагментів, загалом Microsoft рекомендує поріг у 30%:

avg_fragmentation_in_percent >5% і <=30%: РЕОРГАНІЗАЦІЯ ІНДЕКСУ ЗМІН;
avg_fragmentation_in_percent >30%: ЗМІНИТИ ІНДЕКС ПЕРЕБУДОВУ;

avg_fragmentation_in_percent: Відсоток фрагментації індексу, якщо фрагментація менша за 10%~20%, фрагментація навряд чи стане проблемою,Якщо фрагментація індексу становить 20%~40%, фрагментація може бути проблемою, але роздільна здатність індексу може бути усунена шляхом реорганізації індексу, а масштабна фрагментація (коли фрагментація перевищує 40%) може вимагати реконструкції індексу.


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



Переіндексування таблиць


Перебудуйте індекс усіх таблиць у всій базі даних



Ресурси:Вхід за гіперпосиланням видно.




Попередній:Формат запиту не розпізнається, оскільки URL несподівано закінчується на "/itsvse".
Наступний:Фреймворк ORM Dapper простий у використанні
Опубліковано 22.09.2021 13:11:22 |
Добре, що так,
 Орендодавець| Опубліковано 18.11.2025 14:35:31 |
Що таке sp_updatestats?

Це система збереження процедури, яка є частиною системи SQL Server.
Він переглядає всі таблиці користувачів у поточній базі даних і перераховує та оновлює статистику для стовпців і індексів, дані яких змінювалися з часу останнього статистичного оновлення.
Команда:
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com