Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.29;
Скачать: CL | DM;

Вниз

Два вопроса по индексам   Найти похожие ветки 

 
Slider007 ©   (2007-07-02 10:23) [0]

Програмку свою дописываю помаленьку. Delphi6. Firebird 1.5.4.
По индексам возникло два вопроса:
1.Если для поля таблицы определен внешний ключ, есть ли необходимость для этого поля создавать ещё и отдельный индекс ? Или внешний ключ уже сам по себе ускоряет поиск по данному полю ?
2.В одной из табличек у меня есть поле "тип документа". В программе используется всего ТРИ типа документов, соответственно поле может принимать ТРИ значения - 1, 2 или 3. Нало ли индексировать это поле ?
Вопрос возник в свяязи с прочтением Пункта №11 со страницы http://www.ibase.ru/devinfo/dontdoit.htm
Цитирую:
Не стройте индексы по полям, содержащим наименьшее количество разных значений (например только 0 и 1, пол мужской/женский и т.п.)
Если Вам все же надо такой индекс, то добавьте к нему еще одно поле, которое сделает индекс более "уникальным".
Индексы с большим числом дубликатов ключей сильно замедляют сборку мусора (до IB 7.5 и Firebird 2.0).


Заранее спасибо. Не обижусь если ветка окажется в "Начинающих".


 
Сергей М. ©   (2007-07-02 10:30) [1]

1. Явной необходимости нет, потому как такое поле уже индексировано.

2. Необходимость индексации в этом случае зависит от объема данных в таблице и от требований к производительности запросов, в которых это поле фигурирует в условиях сортировки и/или отбора.


 
Anatoly Podgoretsky ©   (2007-07-02 11:11) [2]

2. смотреть планы


 
Gadenysh   (2007-07-02 13:31) [3]

2. на вопрос надо ли индексировать Ваше поле можете ответить только Вы. Для этого надо посмотреть, в каких запросах поле используется и как часто, нет ли на нем внешнего ключа(см. 1.из [1]), производится ли фильтрация и\или поиск по этому полю, да и мощность таблицы в конце концов тоже имеет значение. Возможно, это поле при поиске итп используется в составных условиях, тогда делайте составной индекс, как в Вашей цитате.


 
Грициан   (2007-07-02 14:29) [4]

Ваще, такая рекомендация, если выборка составляет меньше 25% от всего количества записей, то лучше использовать индексное чтение, иначе лучше натурал.



Страницы: 1 вся ветка

Текущий архив: 2007.07.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
3-1177169820
Roven
2007-04-21 19:37
2007.07.29
Установка базы данных


5-1157964828
Степан Журавлев
2006-09-11 12:53
2007.07.29
Разработка наследника TScrollingWinControl


15-1183371286
P
2007-07-02 14:14
2007.07.29
Программист, проектирующий довольно уникальную систему, он -


2-1183419596
DagOT-R
2007-07-03 03:39
2007.07.29
Всё о трее


15-1183553562
Alkid
2007-07-04 16:52
2007.07.29
Ваять или вникать?