|
Когда выгодно ставить индексы? | ☑ | ||
---|---|---|---|---|
0
Lama12
13.10.15
✎
16:53
|
Есть ли какие рекомендации когда выгодно ставить индексы в таблицах значений?
Т.е. допустим я знаю что у меня будет таблица из 3 строк. Смысл ставить индексы на некоторые колонки - отсутствует. Если в этой же таблице будет много строк (несколько сотен), то индексы лучше поставить. Естественно, индексы нужны что б потом осуществлять поиск. Как граничные условия, поиск одного значения осуществляется один раз. Может кто эмпирически вычислял оптимальные значения когда ставить индексы, когда нет? |
|||
1
ДенисЧ
13.10.15
✎
16:55
|
Это пониманием приходит с возрастом
|
|||
2
Lama12
13.10.15
✎
17:01
|
(1) Хе :) Вот задумался... Видать возраст приходит...
|
|||
3
Franchiser
гуру
13.10.15
✎
17:07
|
Если искать много раз собираешься то поставь, эмпирически можешь проверить скорость поиска многократно возрастает, особенно если больше 1000 строк
|
|||
4
Гёдза
13.10.15
✎
17:08
|
можно запустить реальную нагрузку и посмотреть какие индексы предлагает скл
|
|||
5
ДенисЧ
13.10.15
✎
17:10
|
(2) Если ещё не понял - значит, не пришёл ещё возраст ))
|
|||
6
Lama12
13.10.15
✎
17:11
|
(3) Это понятно. Мне просто нужно решить в подписке ставить индексы на тз или нет. Поиск осуществляется по 2 полям. Количество строк может быть от одной до 9999. Вот и задумался, как тут в скорости не проиграть. Если б не подписка на проведение, вообще б не заморачивался. Можно и эксперимент поставить, просто думал может кто уже знает ответ на этот сакральный вопрос. :)
|
|||
7
mistеr
13.10.15
✎
17:12
|
(1) Те, кто не хочет ждать, проводят тесты и принимают решение.
P.S. Ленивым же остается лишь завидовать. |
|||
8
H A D G E H O G s
13.10.15
✎
17:13
|
Таблица большая, меняется нечасто и ищется в ней часто - ставим индексы, иначе - нет.
|
|||
9
mistеr
13.10.15
✎
17:13
|
(6) Ты правда надеешься, что ответ на этот вопрос одинаковый во всех случаях?
|
|||
10
akaBrr
13.10.15
✎
17:13
|
Индекс имеет смысл создавать когда накладные расходы на поддержание его меньше, чем потери на поиск при его отсутствии.
|
|||
11
Гёдза
13.10.15
✎
17:14
|
(8) А в цифрах?
|
|||
12
Lama12
13.10.15
✎
17:22
|
(9) Нет, но что ни будь в виде - Сумма произведения количество колонок определенного типа для индексации на коэффициент типа, для каждого типа, деленное на количество предполагаемого поиска значений = минимальное количество строк от которого желательно ставить индексы.
|
|||
13
Franchiser
гуру
13.10.15
✎
17:24
|
Можно заполнить таблицу, посмотреть сколько в ней строк и решить ставить индексы или нет...
|
|||
14
itlikbez
13.10.15
✎
17:27
|
(0) Когда за это хорошо платят. Это ж очевидно.
|
|||
15
marvak
13.10.15
✎
17:30
|
(12)
Размер таблицы + частота поиска. Если поиск делается один раз, то индексировать смысла нет. Я определял экспериментально. Если на поиск по ТЗ тратилось много времени из общего алгоритма, то ставил индекс, потом сравнивал общее время выполнения с индексом и без, учитывая затраты на индексирование. Общего правила имхо не существует. |
|||
16
Lama12
13.10.15
✎
17:32
|
(15) Да, чувствую так и придется делать. Ладно. Всем спасибо. Общее направление понятно.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |