Имя: Пароль:
1C
1С v8
Когда выгодно ставить индексы?
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) Да, чувствую так и придется делать. Ладно. Всем спасибо. Общее направление понятно.