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

Откуда: From Russia
Сообщений: 146
Привет всем,
Смотрю сейчас статистики по используемым инедксам, и вижу рекомендацию удалить один индекс, потому что он дублирует foreign key.
Индекс действительно построен только по одному полю, которое представляет собой также foreign key на другую таблицу.
Вопрос, как вы считаете, является ли лишним в данной ситуации nonclustered index?
4 июл 12, 15:13    [12816592]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
Kudep,

FOREIGN KEY и INDEX - совершенно независимые друг от друга вещи.
Посмотреть на сообщение сервера в подлиннике можно?
4 июл 12, 15:18    [12816636]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
iap
FOREIGN KEY и INDEX - совершенно независимые друг от друга вещи.
Хотя, может быть, я слишком категоричен...
4 июл 12, 15:21    [12816649]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
Crimean
Member

Откуда:
Сообщений: 13147
индекс не может дублировать форин :) бессмыслица. поясните или цитатку дайте
если с поля таблицы А идет форин на поле таблицы Б, то индекс на это поле в А будет желателен если в Б планируются удаления / изменения "этого" поля. ну а на поле в Б уникальный индекс есть ибо иначе форина нет
4 июл 12, 15:24    [12816681]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
Kudep
Member

Откуда: From Russia
Сообщений: 146
я понял.
Не дублирует, а перекрывается.

Вобщем изучаю я результаты работы вот этого скрипта http://www.jasonstrate.com/2009/04/analyze-this-analyze-your-indexes-part-6/
Там ничеог особенного, просто в удобной форме джойнятся таблички sys.dm_db_index_usage_stats, sys.dm_db_missing_index_details и др.

Ну в принципе, там так и написано, что если индекс перекрывается foreign ключом, то тут имеет смысл для начала просто заострить на этом внимание, возможно индекс действительно лишний, но конечно ни факт.
4 июл 12, 15:36    [12816790]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Kudep
я понял.
Не дублирует, а перекрывается.

Вобщем изучаю я результаты работы вот этого скрипта http://www.jasonstrate.com/2009/04/analyze-this-analyze-your-indexes-part-6/
Там ничеог особенного, просто в удобной форме джойнятся таблички sys.dm_db_index_usage_stats, sys.dm_db_missing_index_details и др.

Ну в принципе, там так и написано, что если индекс перекрывается foreign ключом, то тут имеет смысл для начала просто заострить на этом внимание, возможно индекс действительно лишний, но конечно ни факт.


ничего такого там не написано
Index!=FK
4 июл 12, 15:57    [12816971]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
Kudep
Member

Откуда: From Russia
Сообщений: 146
locky

ничего такого там не написано
Index!=FK

Вот
автор
The index AK_BillOfMaterials_ProductAssemblyID overlaps with the index AK_BillOfMaterials_ProductAssemblyID_ComponentID_StartDate. As is mention in Paul Nielsen’s article, overlapping indexes shouldn’t necessarily be removed. A narrow index that overlaps a wide index may provide a performance gain. Reviewing the usage stats, which are available in the other columns of this query, will help make that determination.
4 июл 12, 17:23    [12817637]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
Crimean
Member

Откуда:
Сообщений: 13147
Kudep
Вот
автор
The index AK_BillOfMaterials_ProductAssemblyID overlaps with the index AK_BillOfMaterials_ProductAssemblyID_ComponentID_StartDate. As is mention in Paul Nielsen’s article, overlapping indexes shouldn’t necessarily be removed. A narrow index that overlaps a wide index may provide a performance gain. Reviewing the usage stats, which are available in the other columns of this query, will help make that determination.


ну так тут-то все понятно и форин как бы не при чем
4 июл 12, 17:25    [12817661]     Ответить | Цитировать Сообщить модератору
 Re: Nonclustered index vs foreign key  [new]
Glory
Member

Откуда:
Сообщений: 104751
Kudep
locky
ничего такого там не написано
Index!=FK

Вот
автор
The index AK_BillOfMaterials_ProductAssemblyID overlaps with the index AK_BillOfMaterials_ProductAssemblyID_ComponentID_StartDate. As is mention in Paul Nielsen’s article, overlapping indexes shouldn’t necessarily be removed. A narrow index that overlaps a wide index may provide a performance gain. Reviewing the usage stats, which are available in the other columns of this query, will help make that determination.

Тут говорится про перекрывающиеся индексы, а не про перекрывающиеся индексы и FK.
4 июл 12, 17:26    [12817665]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить