Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 23544|Отговор: 2

[Източник] SQL Server оптимизирана за производителността индексна фрагментация

[Копирай линк]
Публикувано в 27.12.2020 г. 22:32:27 ч. | | | |
Преглед на фрагментацията на индекса

Какво е фрагментация на индекса и защо трябва да се фокусирам върху нея:
Фрагментацията съществува, когато логическият ред в индекса (базиран на ключовата стойност в индекса) не съвпада с физическия ред в страниците на индекса в индексните страници в индекса на страниците, които индексът съдържа.
Винаги когато се извършва операция за вмъкване, обновяване или изтриване върху основните данни, базата данни автоматично променя индекса. Например, добавянето на редове към таблица може да накара разделените редове да съхраняват съществуващи страници в индекса, за да се освободи място за вмъкване на нови ключове. С течение на времето тези модификации могат да доведат до разсейване на информация в индекса в базата данни (съдържаща фрагменти). Фрагментацията настъпва, когато логическият ред (базиран на ключова стойност) в страниците, които индексът съдържа, не съвпада с физическия ред във файла с данни.
Голям брой фрагментирани индекси могат да забавят производителността на заявките, тъй като е необходим допълнителен вход/изход за намиране на данните, към които индексът сочи. Повече I/O може да накара приложението да реагира бавно, особено когато са включени сканиращи операции.
Проверете за фрагментация на индекса на базата данни

Команда:



Има два начина за дефрагментиране: реорганизиране и пресъздаване на индекси, като възстановяване на индекси се отнася до изтриване на стари индекси и възстановяване на нови индекси в транзакция, което възстановява пространството на твърдия диск на оригиналния индекс и отделя ново пространство за съхранение за създаване на индексна структура. Реорганизацията на индексите означава неразпределяне на ново пространство за съхранение, реорганизиране на листовите възли на индексната структура на базата на оригиналното пространство, така че логическият и физическият ред на страниците с данни да са последователи, и освобождаване на излишното пространство в индекса.

Използвайте функцията sys.dm_db_index_physical_stats за откриване на степента на фрагментация, полето avg_fragmentation_in_percent процента на върнатите логически фрагменти; като цяло Microsoft препоръчва праг от 30%:

avg_fragmentation_in_percent >5% и <=30%: РЕОРГАНИЗАЦИЯ НА ИНДЕКСА НА ПРОМЯНА;
avg_fragmentation_in_percent >30%: ALTER INDEX REBUILD;

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