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

Откуда: Москва, прости Господи...
Сообщений: 192
количество строк возвращаемое скриптом

DECLARE @db_id smallint;

SET @db_id = DB_ID(N'моябаза');

SELECT * FROM sys.dm_db_index_physical_stats
(@db_id, NULL, NULL, NULL , NULL)
where
avg_fragmentation_in_percent > 0
--and index_type_desc='NONCLUSTERED INDEX'
--and page_count > 8;
order by avg_fragmentation_in_percent desc
go

практически не зависит от выполнения команд
use [моябаза]
go
sp_msforeachtable N'DBCC INDEXDEFRAG (моябаза, ''?'')'
go
exec sp_msforeachtable 'UPDATE STATISTICS ? WITH FULLSCAN'
go

и даже от
use [моябаза]
go
sp_msforeachtable N'DBCC DBREINDEX (''?'')'
go

причем скульный сервер как-то странно себя ведет
результат выполнения первого скрипта иногда нужно ждать несколько минут а иногда мгновенно выполняется и именно во втором случае не меняется результат
как правильно проанализировать фрагментацию?
14 янв 15, 09:43    [17114714]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
результат выполнения первого скрипта иногда нужно ждать несколько минут

Вы не поверите, но ни один запрос не выполняется всегда за одинаковое время

prog2012
и именно во втором случае не меняется результат

Результат чего ?
14 янв 15, 09:47    [17114728]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
Glory,
результат в смысле возвращаемое количество строк
14 янв 15, 09:50    [17114736]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
результат в смысле возвращаемое количество строк

А почему он должен меняться ?
14 янв 15, 09:54    [17114751]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
Glory,
потому что произошла дефрагментация и даже пересоздание индексов
задача в целом такая проверить что после дефрагментации индексы действительно дефргментированы
подскажите пожалуйста как
14 янв 15, 10:00    [17114770]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
потому что произошла дефрагментация и даже пересоздание индексов

Произошло выполнение команды DBCC INDEXDEFRAG.
Это не тоже самое, что "фрагментация изчезла"

prog2012
подскажите пожалуйста как

Вы это читали ?
In general, fragmentation on small indexes is often not controllable. The pages of small indexes are stored on mixed extents. Mixed extents are shared by up to eight objects, so the fragmentation in a small index might not be reduced after reorganizing or rebuilding the index. For more information about mixed extents, see Understanding Pages and Extents.
14 янв 15, 10:06    [17114807]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
Glory,
"
В общем, дробление на малые индексы часто не поддается контролю. Страницы малые индексы хранятся в смешанных экстентах. Смешанные экстенты могут совместно использоваться до восьми объектов, поэтому фрагментация в небольшом индексе не может быть уменьшена после реорганизации или перестроения индекса. Для получения дополнительных сведений о смешанных экстентов, см. страницы и Экстенты."

тогда как иключить из моего анализа то что хранится в смешанных экстентах? иначе это не обслуживание а танцы с бубнами
14 янв 15, 10:10    [17114826]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
тогда как иключить из моего анализа то что хранится в смешанных экстентах?

Вы издеваетесь ?
Вы сначала закомментировали условие --and page_count > 8, а теперь спрашиваете "как мне его разкомментировать" ?
14 янв 15, 10:12    [17114837]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
Glory,

ну допустим... проверим...
а почему обращение к процедуре сильно плавает по времени?
14 янв 15, 10:15    [17114849]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
а почему обращение к процедуре сильно плавает по времени?

К какой процедуре ?
И почему время выполнения любой команды должно быть одинаковым ?
14 янв 15, 10:25    [17114916]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
вот это иногда долго выполняется
DECLARE @db_id smallint;

SET @db_id = DB_ID(N'моябаза');

SELECT * FROM sys.dm_db_index_physical_stats
(@db_id, NULL, NULL, NULL , NULL)
where
avg_fragmentation_in_percent > 0
--and index_type_desc='NONCLUSTERED INDEX'
--and page_count > 8;
order by avg_fragmentation_in_percent desc
go
14 янв 15, 10:31    [17114949]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
вот это иногда долго выполняется

Займите себя чем-нибудь на время выполнения скрипта
Документацию, например, почитайте и еще что-нибудь
14 янв 15, 10:34    [17114979]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
Glory,

хорошо я станцую с бубном )))
14 янв 15, 10:35    [17114985]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8805
DBCC INDEXDEFRAG
это вообще что за атавизм. ALTER INDEX на самом деле.
14 янв 15, 11:27    [17115289]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
prog2012
Member

Откуда: Москва, прости Господи...
Сообщений: 192
Владислав Колосов,
т.е. она не работает на самом деле?
14 янв 15, 12:06    [17115646]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8805
prog2012, спросите MS, что она делает на самом деле. Я руководствуюсь документацией.
14 янв 15, 12:23    [17115777]     Ответить | Цитировать Сообщить модератору
 Re: использование sys.dm_db_index_physical_stats  [new]
Glory
Member

Откуда:
Сообщений: 104751
prog2012
т.е. она не работает на самом деле?

может начать читать документацию ?
Во время работы запросов ?
14 янв 15, 12:25    [17115790]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить