Несколько причин, почему возникает фрагментация данных в таблицах:
- Вставка и обновления данных. habr.com При добавлении новых записей или изменении существующих ядро СУБД может «вклинивать» новые страницы индекса в произвольных местах, что нарушает последовательность. habr.com
- Удаление данных. habr.com Когда запись удаляется, соответствующая ей страница индекса освобождается, но не всегда сразу заполняется новой информацией. habr.com Это оставляет «дыры» в структуре индекса. habr.com
- Слияние и разделение страниц. habr.com В некоторых случаях ядро СУБД разбивает страницы на две или объединяет их. habr.com
Со временем такие изменения накапливаются и могут привести к тому, что данные в индексе будут неупорядоченно «разбросаны» по базе данных (то есть фрагментированы). learn.microsoft.com