powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DBCC SHOWCONTIG
17 сообщений из 17, страница 1 из 1
DBCC SHOWCONTIG
    #32054515
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверял работу команды DBCC SHOWCONTIG.


Запуск на некой таблице:

DBCC SHOWCONTIG scanning 'Users' table...
Table: 'Users' (772197801); index ID: 1, database ID: 8
TABLE level scan performed.
- Pages Scanned................................: 255
- Extents Scanned..............................: 36
- Extent Switches..............................: 252
- Avg. Pages per Extent........................: 7.1
- Scan Density [Best Count:Actual Count].......: 12.65% [32:253]
- Logical Scan Fragmentation ..................: 51.76%
- Extent Scan Fragmentation ...................: 97.22%
- Avg. Bytes Free per Page.....................: 2609.1
- Avg. Page Density (full).....................: 67.77%
DBCC execution completed. If DBCC printed error messages, contact your system administrator.


Запуск на той же таблице после прогона DBCC INDEXDEFRAG:

DBCC SHOWCONTIG scanning 'Users' table...
Table: 'Users' (772197801); index ID: 1, database ID: 8
TABLE level scan performed.
- Pages Scanned................................: 210
- Extents Scanned..............................: 31
- Extent Switches..............................: 38
- Avg. Pages per Extent........................: 6.8
- Scan Density [Best Count:Actual Count].......: 69.23% [27:39]
- Logical Scan Fragmentation ..................: 3.33%
- Extent Scan Fragmentation ...................: 96.77%
- Avg. Bytes Free per Page.....................: 1433.3
- Avg. Page Density (full).....................: 82.29%
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Запуск на той же таблице после удаления и создания CLUSTERED index'а:

DBCC SHOWCONTIG scanning 'Users' table...
Table: 'Users' (772197801); index ID: 1, database ID: 8
TABLE level scan performed.
- Pages Scanned................................: 174
- Extents Scanned..............................: 22
- Extent Switches..............................: 21
- Avg. Pages per Extent........................: 7.9
- Scan Density [Best Count:Actual Count].......: 100.00% [22:22]
- Logical Scan Fragmentation ..................: 0.00%
- Extent Scan Fragmentation ...................: 18.18%
- Avg. Bytes Free per Page.....................: 54.8
- Avg. Page Density (full).....................: 99.32%
DBCC execution completed. If DBCC printed error messages, contact your system administrator.


Как видно, все в точности соответствует описанию Books Online: самый лучший эффект от
пересоздания кластерного индекса. Но есть и вопрос:

Extents Scanned = Actual Count + 1. Почему?
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054525
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мля, ну почему мне такое не лезет в голову?
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054529
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не понял я чегойто
Extents Scanned..............................: 22
- Scan Density [Best Count:Actual Count].......: 100.00% [22:22]
из чего 22 = 22+1????
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054534
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2MiCe

Actual count is the actual number of extent changes.
Значит, Actual count = Extent Switches = 21
Но по факту Actual count = 22
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054540
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имеем 3 точки на прямой...
спрашивается сколько получится отрезков?
2, а ни как не 3....
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054541
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну или имеем 10 ступенек...
сколко раз нужно шагнуть если
1 растояние между ступеньками 1 шаг
2 мы стоим на первой
3 нужно остановиться на последней...
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054543
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не про то как считать, а про то, почему цифры разнятся.
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054546
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может для того, чтобы избежать деления на 0 при вычислении Scan Density?
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054559
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну блин....
имеем 22 экстента...
переключений между ними при сканировании в идельном случае будет 21....
и никак иначе....
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054564
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я понимаю, что число переключений между n экстентами в идеальном случае будет n-1.
Только в данном случае это тоже не факт - экстенты могут быть "перемешаны" по страницам. Меня это не интересует. Меня интересует, почему разнятся
значения Actual count и Extent Switches. Вроде же сказано, что Actual count
НЕ есть число экстентов, а есть число переключений...
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054572
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вообщето.... extent changes != Extent Switches
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054579
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот-вот. Я и жду объяснения - в чем различие.
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054590
Фотография MiCe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Actual count is the actual number of extent changes.
Actual count это реальное количество пройденных экстентов.....
в идеальном случае это и есть физическое количество экстэнтов....
допустим у нас есть только 2 экстэнта....
у нас есть 3 строки
1 строка в 1 экст.
2 строка во 2 экст.
3 строка опять в 1 экст..
при сканировании мы пройдем 3 экстента в такой последовательности
1-2-1
Extents Scanned -2
Extent Switches -2
Actual Count -3
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054594
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, не убедили.

"Extent change" И "extent" - не одно и то же.

Кроме того, в Inside SQL Server 2000 нашел это:

Alternatively, you can use the value called Scan Density, which is computed by dividing the optimum number of extent switches by the actual number of extent switches.

Прямо не знаю...
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054605
Фотография Lexis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробую я
положи 22 спичечных коробка...каждый коробок - экстент
поставь палец на первый..и начни переходить на следующий..сколько будет переходов? 21 :)

т.е. коробок - excent scanned
extent switch - движение пальца
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054606
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно, вопрос снят. Недоросли еще.
...
Рейтинг: 0 / 0
DBCC SHOWCONTIG
    #32054610
Фотография Lexis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-Average number of bytes free on each page (Avg. Bytes Free per Page)
-Number of pages accessed (Pages scanned)
-Number of extents accessed (Extents scanned)
-Number of times a page had a lower page number than the previous page in the scan (This value for Out of order pages is not displayed, but it is used for additional computations.)
-Number of times a page in the scan was on a different extent than the previous page in the scan (Extent Switches)
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DBCC SHOWCONTIG
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]