Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Частые обновления таблицы. Что делать?  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
Есть таблица в которой 3 млн строк
часто обновляется и буквально за 20 мин кластерный индекс фрагментируется до более 50 процентов
некластерные индексы то же фрагментированы

Подскажите, как с этим быть?
Есть запросы на выборку которые плохо работают из-за фрагментированных индексов

не могу же я постоянно эти индексы перестраивать
13 апр 15, 12:05    [17507434]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
Glory
Member

Откуда:
Сообщений: 104751
fduch f.f.
часто обновляется и буквально за 20 мин кластерный индекс фрагментируется до более 50 процентов
некластерные индексы то же фрагментированы

логически или физически фрагментированы ?
13 апр 15, 12:08    [17507454]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
Glory
fduch f.f.
часто обновляется и буквально за 20 мин кластерный индекс фрагментируется до более 50 процентов
некластерные индексы то же фрагментированы

логически или физически фрагментированы ?


автор
- Avg. Pages per Extent........................: 8.0
- Scan Density [Best Count:Actual Count].......: 18.77% [15526:82698]
- Logical Scan Fragmentation ..................: 61.47%
- Extent Scan Fragmentation ...................: 42.76%
- Avg. Bytes Free per Page.....................: 2682.3
- Avg. Page Density (full).....................: 66.86%
13 апр 15, 12:14    [17507503]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
Glory
Member

Откуда:
Сообщений: 104751
Зачем вы обновляете ключевые поля так часто ?
13 апр 15, 12:15    [17507505]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8933
Может, имеет смысл построить кластерный индекс по чему-то другому (аутоинкремент или что-то подобное)?
13 апр 15, 13:57    [17508046]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4805
fduch f.f.
буквально за 20 мин кластерный индекс фрагментируется до более 50 процентов
некластерные индексы то же фрагментированы



У вас что первичный ключ? Если Guid, то перейдите на NEWSEQUENTIALID
13 апр 15, 14:28    [17508235]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
хмхмхм
Guest
fduch f.f.
кластерный индекс фрагментируется до более 50 процентов


А зачем обновляется кластерный индекс? Вы бы привели структуру таблицы с индексами, по которой такая сильная фрагментация.
13 апр 15, 14:37    [17508299]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
действительно первичный ключ сделан составным некоторые поля в нем апдейтятся
и гуид то же есть :)
буду оптимизировать, спасибо за советы
13 апр 15, 14:39    [17508314]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
хмхмхм
Guest
a_voronin
fduch f.f.
буквально за 20 мин кластерный индекс фрагментируется до более 50 процентов
некластерные индексы то же фрагментированы



У вас что первичный ключ? Если Guid, то перейдите на NEWSEQUENTIALID


Никогда не понимал зачем вообще эту бяку использовать в качестве первичного ключа?
13 апр 15, 14:40    [17508315]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
iap
Member

Откуда: Москва
Сообщений: 47052
fduch f.f.
действительно первичный ключ сделан составным некоторые поля в нем апдейтятся
и гуид то же есть :)
буду оптимизировать, спасибо за советы
Сделать суррогатный PK и не мучиться. Пивка попить...
13 апр 15, 14:42    [17508320]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8350
TC же классический ключ сделал. А древо жизни пышно зеленеет.
13 апр 15, 15:26    [17508594]     Ответить | Цитировать Сообщить модератору
 Re: Частые обновления таблицы. Что делать?  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4805
хмхмхм
a_voronin
пропущено...



У вас что первичный ключ? Если Guid, то перейдите на NEWSEQUENTIALID


Никогда не понимал зачем вообще эту бяку использовать в качестве первичного ключа?


Чтобы фрагментация была по минимуму.
14 апр 15, 18:46    [17514601]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить