|
В каком случае запрос лучше перебора? | ☑ | ||
---|---|---|---|---|
0
Алеша
19.10.04
✎
16:11
|
Кто может дать общие рекомендации - при построениях отчетов в каких случаях лучше использовать запрос, а в каких - перебор?
|
|||
1
Рупор абсурда
19.10.04
✎
16:17
|
Правило простое:
Когда быстрее запросом, используй запрос ..., когда быстрее перебором, используй перебор ... |
|||
2
gr13
19.10.04
✎
16:19
|
(1) а когда быстрее запрос, и когда быстрее перебор?...
|
|||
3
!МногоЗнайка
19.10.04
✎
16:20
|
запрос - это тот же перебор. Но, я думаю, основной прикол такой - в запросе получаем выборку, которую можно дальше гонять по всякому; перебор - ну перебежал всю базу, а если надо еще данные - еще раз придется бегать... Т.е. вся штука как раз в хранении результатов.
|
|||
4
gr13
19.10.04
✎
16:24
|
(3) пробежал базу, потом нужные результаты загнал в ТЗ, потом уже пользуешься ею, чтобы не делать повторно выборку. Раньше запросами не пользовался, не приходилось делать ресурсоемкие выборки. Сейчас сделал одну, и тормозит, даже на небольшой базе, нужно переделать на запрос, все никак не соберусь...
|
|||
5
Рупор абсурда
19.10.04
✎
16:26
|
(2) Это сложный вопрос ...
Сейчас я для определения пользуюсь интуицией и опираюсь на свой богатейший опыт ..., а раньше бывало делал два варианта и смотрел, какой быстрей ... |
|||
6
12345
19.10.04
✎
16:45
|
(0) в случае, если в запросе одна группировка и много документов (>10000) или движений, запрос быстрее. Особенно заметен выигрыш в скорости по оборотному регистру.
|
|||
7
Алеша
19.10.04
✎
16:50
|
5) А поделись, если можно, все же хоть какими-либо рекомендациями. Все же богатейший опыт...
|
|||
8
Алеша
19.10.04
✎
16:51
|
6) Уже что-то, спасибо.
|
|||
9
12345
19.10.04
✎
16:58
|
сказанное справедливо в скл. А вероятнее всего,самый быстрый метод Рег.ВыгрузитьИтоги() для оборотного реристра и затем игры с таблицей значений. При достаточном количестве оперативной памяти можно работать с миллионами записей при терпимом времени формирования отчетов - десятки секунд.
|
|||
10
HanProg
19.10.04
✎
17:03
|
Всегда запрос лучше, особенно в 8.0
|
|||
11
Рупор абсурда
19.10.04
✎
17:04
|
(7) Например, если в справочнике есть всего две записи, то для получения выборки по нему, я никогда не использую запрос ...
|
|||
12
12345
19.10.04
✎
17:07
|
Добавлю, что методы ВыбратьДвижения() и ВыбратьДокументы() в скл при количестве в выборке порядка 100000 чаще всего отрабатывают дольше, чем полное врямя выполнения достаточно простого запроса, а ведь потом надо еще и перебрать саму выборку!
|
|||
13
Алеша
19.10.04
✎
17:07
|
1), 5) Есть мысль писать два варианта, потом программно вычислять какой будет выгоднее в конкретной ситауции и запускать более выгодный вариант. Т. е. интуиция для решения данной задачи не поможет.
|
|||
14
Алеша
19.10.04
✎
17:09
|
11) А какое решение ты принимаешь, например при количестве записей, равному 500, 1000, 10000?
|
|||
15
12345
19.10.04
✎
17:10
|
(11) но перед этим, очевидно, все же делаешь запрос на определение количества записей в справочнике?
|
|||
16
Рупор абсурда
19.10.04
✎
17:15
|
(15) :))
(14) Вспомнилось почему то: Не дружил Алёша с мылом, в результате стал дeбилом ... |
|||
17
Рупор абсурда
19.10.04
✎
17:16
|
(14) Не обижайся ... Меня тоже Алёшей зовут ...
|
|||
18
Алеша
19.10.04
✎
17:39
|
17) Не обижаюсь. Я знаю, что Алешей. Ну а все же, можешь что-либо посоветовать для решения данной задачи?
|
|||
19
Crew
19.10.04
✎
17:43
|
(18)
Лучший ответ в (5) Жалко только что интуицией и опытом РА не всем дано воспользоваться :( |
|||
20
bsg
19.10.04
✎
17:45
|
Запрос всегда лучше
|
|||
21
Алеша
19.10.04
✎
17:57
|
Рупор, смори-ка, с тобой не согласны в (20) :)
|
|||
22
12345
19.10.04
✎
17:59
|
(20) не всегда. до 1-500 записей - можно сделать быстро и перебором. Все что больше, смотри обсуждение выше.
|
|||
23
Рупор абсурда
19.10.04
✎
18:00
|
(21) Он просто пока чайник, не имеющий моего богатейшего опыта ...
|
|||
24
12345
19.10.04
✎
18:00
|
+ и вообще нужно смотреть конкретную задачу!
|
|||
25
Алеша
19.10.04
✎
18:15
|
24) См. задачу в 13)
|
|||
26
est
19.10.04
✎
19:41
|
если много памяти запрос однозначно быстрее, при ограниченном размере памяти результат запроса надо куда-то втиснуть - здесь лучше выборка.
|
|||
27
SHAdowRun_K
19.10.04
✎
22:21
|
(26) И иметь при этом крутой проц :(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |