Имя: Пароль:
1C
1С v8
как задать Составной индекс?
,
0 D_Pavel
 
18.09.15
11:30
Часто в запросах фильтруются данные по нескольким реквизитам документа или справочника или нескольким измерениям регистра. В конфигураторе вижу как задать индексирование любых реквизитов по отдельности.
А как задать составной индекс по двум и более реквизитам для ускорения таких запросов?
1 ДенисЧ
 
18.09.15
11:32
Размечтался, одноглазый (с)
2 D_Pavel
 
18.09.15
11:34
(1) что ли одноэсники не придумали такой простой но эффективный способ ускорения своей тормозной программы?
3 Волшебник
 
модератор
18.09.15
11:34
средствами SQL
4 Волшебник
 
модератор
18.09.15
11:34
(2) Воу-воу! Полехче!
5 Гёдза
 
18.09.15
11:34
(3) За это в тюрьму
6 Волшебник
 
модератор
18.09.15
11:35
(5) My Life - My Rules
7 ДенисЧ
 
18.09.15
11:35
(2) Это не программа тормозная, а юзвери
8 ДенисЧ
 
18.09.15
11:35
(5) Сфигали?
9 D_Pavel
 
18.09.15
11:36
(3) Добавлю составной индекс, и запросы сразу ускорятся? Платформа вообще будет их использовать, оптимизировать запросы под них?
10 ADirks
 
18.09.15
11:39
(9) ага, всё бросит и побежит оптимизировать

а индексы используются не платформой, а SQL сервером, если чо
12 D_Pavel
 
18.09.15
11:41
(10) Сразу видно что ты очень глубоко разбираешься в работе платформы. Скажи мне, как сделать чтобы она подготавливала правильные запросы для сервера SQL?
13 ADirks
 
18.09.15
11:43
(12) никак
14 ADirks
 
18.09.15
11:46
не модифицируя сами запросы, максимум, что можно сделать, это посмотреть что приходит на SQL сервер, и прикинуть к носу, какие бы индексы помогли
15 МихаилМ
 
18.09.15
12:01
(14)
у мс скл > 2005 есть индекс эдвайзер. но понимать конечно нужно.
16 D_Pavel
 
18.09.15
12:06
(14) Спасибо за ответ. Темку можно закрыть.
17 Гёдза
 
18.09.15
12:13
если нужен поиск по составным полям, смотри в сторону регистра сведений
18 Гёдза
 
18.09.15
12:13
Так сделали в РАУЗе по крайней мере
19 bootini
 
18.09.15
12:16
(0) По нескольким измерениям регистра накопления можно:

http://v8.1c.ru/overview/Term_000000564.htm
20 ADirks
 
18.09.15
12:16
(15) я как то ради прикола запилил индекс, который особо страстно хотел этот адвайзер, так бедный сервер повесился с него сразу. (это был индекс по журналу документов, практически по всем полям, в семёрке)

так что все эти адвайзеры и визарды - исключительно для тупых и ленивых, ну или чисто поржать.
21 D_Pavel
 
18.09.15
12:18
(17) там это есть? Точно?
22 Сияющий в темноте
 
18.09.15
12:26
индекс по первому полю уже спасает а также очень замечательно работает индекс по хэш значению особенно когда нужно искать среди множества строк переменной длины
если что значение функции мд5 прекрасно влазит в гуид
23 ADirks
 
18.09.15
12:35
кстати, задублирую: http://blogs.msdn.com/b/blogdoezequiel/archive/2012/09/18/about-maintenance-plans-grooming-sql-server.aspx

Там описание и скрипты для автоматического обновления статистик, дефрагментации индексов. Основная фишка в том, что не всё подряд пересчитывается, а только то что нужно. При больших объёмах заметно облегчает жизнь серверу.
24 itlikbez
 
18.09.15
12:51
(21) Регистры сведений собственно для этого и нужны.
25 Гёдза
 
18.09.15
12:52
(21) в регистре сведений составной индекс по всем измерениям
26 D_Pavel
 
18.09.15
13:02
(25) Ура! Спасибо, очень помог! Темку можно закрыть
27 top_harley
 
18.09.15
13:57
(0) Если для оборотов, тогда может агрегаты помогут?
http://www.develplatform.com/2013/11/blog-post_17.html