Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Перестроение индекса  [new]
индексы
Guest
Посоветуйте начинающему администратору. Версия :
Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)   Apr  2 2010 15:48:46   Copyright (c) Microsoft Corporation  Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) 

Имеется таблица где 11 миллион записей. На одном из столбцов построен индекс

CREATE NONCLUSTERED INDEX [ix_mytbl_mycolumn] ON [dbo].[myTbl] 
(
	[my_id] DESC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON, FILLFACTOR = 80) ON [PRIMARY]
GO


Картинка с другого сайта.

Чтоб перестроить этот индекс достаточно :

ALTER INDEX [ix_mytbl_mycolumn] ON [dbo].[myTbl] 
REBUILD;


Или с большими датами по-другому решается ? И еще один вопрос при перестроении если в таблице некоторые инексы построены по увелечению и некоторые по убыванию то возможно что возникнет проблема после или при перестроении ? Если да то какая ?
2 дек 14, 16:45    [16938745]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
индексы
Microsoft SQL Server 2008 R2 (RTM)
Выб хоть сервис паки поставилиб - сервант голый савсем.
2 дек 14, 16:51    [16938809]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
Или с большими датами по-другому решается ?

Вы спрашиваете есть ли специальные команды для перестроения индексов "с большими датами" ?

индексы
И еще один вопрос при перестроении если в таблице некоторые инексы построены по увелечению и некоторые по убыванию то возможно что возникнет проблема после или при перестроении ?

Что вы называете проблемой ?

Сообщение было отредактировано: 2 дек 14, 16:58
2 дек 14, 16:58    [16938890]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,

автор
Вы спрашиваете есть ли специальные команды для перестроения индексов "с большими датами" ?


Я иммел ввиду метод перестроения индекса где много записей обычый

ALTER INDEX [ix_mytbl_mycolumn] ON [dbo].[myTbl]
REBUILD;

или как-то подготовить нужно

автор
Что вы называете проблемой ?

Скорость при записи в таблицу , медленный выбор данных из таблиц и.т.д
2 дек 14, 17:07    [16938976]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
или как-то подготовить нужно

Кого подготовить ?

индексы
Скорость при записи в таблицу , медленный выбор данных из таблиц и.т.д

Такие "проблемы" возникнуть и без REBUILD
2 дек 14, 17:09    [16938997]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,

автор
Такие "проблемы" возникнуть и без REBUILD

Стоит тогда перестроить этот индекс или оставить как есть ?
2 дек 14, 17:13    [16939043]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
Стоит тогда перестроить этот индекс или оставить как есть ?

А что вы хотите получить от REBUILD то?
2 дек 14, 17:14    [16939055]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,
автор
А что вы хотите получить от REBUILD то?

У меня один из запросов работает медленно , посмотрев на план запроса увидел что много времени нужно пока сканирует
2 дек 14, 17:24    [16939140]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
У меня один из запросов работает медленно , посмотрев на план запроса увидел что много времени нужно пока сканирует

И вы решили, что REBUILD уберет сканирование индекса ?
Или что ускорит сканирование ?
2 дек 14, 17:27    [16939159]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,

Одним из вариантов рассматривал.Как я понял задал много тупых вопросов. Может посоветуете при каких случаях нужно перестроивать индексы ?
2 дек 14, 17:31    [16939193]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
http://msdn.microsoft.com/ru-ru/library/ms189858(v=sql.105).aspx
2 дек 14, 17:35    [16939228]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,

Ну там написано что при > 30% значении avg_fragmentation_in_percent нужно перестроить, у меня 48% . Но там не написано при каких случаях лучше оствить без перестроения. Поэтому интересно было послушать у опытных
2 дек 14, 17:44    [16939303]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
Но там не написано при каких случаях лучше оствить без перестроения.

Да что вы говорите ?

Реорганизация индекса дефрагментирует конечный уровень кластеризованных и некластеризованных индексов по таблицам и представлениям, физически переупорядочивая страницы концевого уровня в соответствии с логическим порядком (слева направо) конечных узлов. Расположение страниц в правильном порядке улучшает производительность сканирования индекса. Индекс реорганизуется в пределах выделенных для него страниц; новые страницы не выделяются. Если индекс состоит из более чем одного файла, файлы реорганизуются поочередно. Страницы не перемещаются между файлами.

При перестроении индекса происходит удаление старого индекса и создание нового. Таким образом, фрагментация устраняется, высвобождается место на диске за счет сжатия страниц с использованием указанного или существующего коэффициента заполнения, а строки индекса переупорядочиваются в непрерывных страницах (с выделением новых страниц по мере необходимости). Это может улучшить производительность диска посредством уменьшения числа обращений к страницам, необходимых для извлечения запрашиваемых данных.
2 дек 14, 17:47    [16939330]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,

автор
При перестроении индекса происходит удаление старого индекса и создание нового. Таким образом, фрагментация устраняется, высвобождается место на диске за счет сжатия страниц с использованием указанного или существующего коэффициента заполнения, а строки индекса переупорядочиваются в непрерывных страницах (с выделением новых страниц по мере необходимости). Это может улучшить производительность диска посредством уменьшения числа обращений к страницам, необходимых для извлечения запрашиваемых данных.


Значит нужно всегда перестраивать индекс т.к Это может улучшить производительность диска посредством уменьшения числа обращений к страницам, необходимых для извлечения запрашиваемых данных. Я правильно понял ?
2 дек 14, 17:52    [16939361]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
Я правильно понял ?

А что все другие способы улчушения производительсности вы уже попробовали ? Осталась только фрагментация ?
2 дек 14, 17:54    [16939373]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,
автор
А что все другие способы улчушения производительсности вы уже попробовали ? Осталась только фрагментация ?


Пробовал не все но от перестроения хуже ведь не станет ? И про количество записей в документации ничего не сказано , значит можно перестраивать при любом количестве ? И не имеет значения он построен по убыванию или по возрастанию? Я просто хочу разобраться в индексах, извините если отнял много времени у вас
2 дек 14, 17:58    [16939389]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Glory
Member

Откуда:
Сообщений: 104760
индексы
но от перестроения хуже ведь не станет ?

не станет
индексы
И про количество записей в документации ничего не сказано , значит можно перестраивать при любом количестве ?

можно
индексы
И не имеет значения он построен по убыванию или по возрастанию?

не имеет
3 дек 14, 09:21    [16941354]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
индексы
Guest
Glory,

Спасибо
3 дек 14, 09:31    [16941409]     Ответить | Цитировать Сообщить модератору
 Re: Перестроение индекса  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
индексы,
измерьте производительность запросов до и после.
3 дек 14, 11:53    [16942301]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить