Главная страница
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.47 MB
Время: 0.027 c
15-1182984859
lak/proxy/
2007-06-28 02:54
2007.07.29
Запрет на просмотр HTML


2-1183410857
jonimimoni
2007-07-03 01:14
2007.07.29
Hook - перехват клавиатуры


15-1183111581
Alex7
2007-06-29 14:06
2007.07.29
Один из пользователей на Apple Comp (Mac OS).


2-1182536652
corsair
2007-06-22 22:24
2007.07.29
Подключение ввода с клавиатуры


1-1179806262
pirate
2007-05-22 07:57
2007.07.29
Object2Stream