|
|
Порционное выполнение запроса
Тындр, Anton1307, Il19, Волшебник, craxx, DrLekter, kittystark, alexxx961503, H A D G E H O G s, Затейник, Lama12, Lazy Stranger, Мультук, obs191, AAA, banco, Гипервизор, Prog_man, Bigbro, Chameleon1980
| ☑ |
|
0
Max57
05.06.26
✎
17:13
|
Всем привет.
Есть свой РН Обороты.
По нему собираются данные в JSON.
Если период в запросе превышает месяц, запрос падает.
Я хочу реализовать запрос в цикле, предварительно разбив период на месяцы. Какие еще могут быть варианты оптимизации? Добавить автономер и выполнять с указание первые n не получится же, так как придется сначала выполнить за год, например, запрос, поместить в вт, а потом к ней делать в цикле запрос? Порядок записей от сотен тысяч до десятков миллионов.
|
|
|
1
Bigbro
05.06.26
✎
17:16
|
а точно запрос падает? может падает вывод/формирование джейсона все же.
запрос имхо должен быть один а дальше результат уже нарезать в зависимости от ограничений.
|
|
|
2
Max57
05.06.26
✎
17:17
|
(1) JSON тоже режется, собирается в файлы через поток.
|
|
|
3
lubitelxml
05.06.26
✎
17:20
|
(0) покажи запрос. Что значит падает?
|
|
|
4
Lama12
05.06.26
✎
17:46
|
(0)Полей которые дают уникальную запись много? Можно выбрать первые N делать. Результат помещать во временную таблицу. Потом делать тот-же запрос, но без того что есть во временной таблице. И так до конца.
|
|
|
5
Dmitrii
гуру
05.06.26
✎
18:36
|
(0) >> запрос в цикле, предварительно разбив период на месяцы
ИМХО, нормальный вариант.
Вряд ли другие методы дадут хоть сколько-нибудь заметно более качественный результат. В (4) по сути это самое и предлагает - запрос в цикле.
|
|
|
6
Dmitrii
гуру
05.06.26
✎
18:37
|
(0) >> запрос падает
Как и с какой ошибкой?
Просто интересно...
|
|
|
7
shuhard
05.06.26
✎
18:41
|
(6) +1
[запрос падает] напрашивается на детализацию
|
|
|
8
Garykom
гуру
05.06.26
✎
21:05
|
(0) Использовать параллельное выполнение на куче фоновых
Например весь период разбить на дни, запускать запрос в отдельном фоновом для каждого дня
Результат фоновых собирать в массив из ТЗ или сразу структур
Затем как все фоновые выполнятся - соединить в JSON
|
|
|
9
breezee
05.06.26
✎
22:18
|
А зачем такая аналитика на регистре - если нельзя получить даже месяц оборотов?
|
|
|
10
timurhv
06.06.26
✎
04:15
|
(0) Бля, как может запрос по РН Оборотам падать? Сиди ковыряй свои левые внутренние соединения и обращения через точку. Ну я блин не знаю, там что каждая позиция чека отражена в какой-нибудь х5 или Магните по всей РФ?
|
|
|
11
timurhv
06.06.26
✎
04:21
|
Ну вот было типо остатки марок выгрузить в SAP (в Excel бля), а там 50+млн марок, надо выгрузить артикулы номенклатуры, код организации\склада, вот там да, запрос падал и Excel падал и сиди объясняй что ОЗУ на SQL в 2Гб недостаточно и Excel тоже говно.
Я к тому что явно в (0) не 4Гб ОЗУ выделено, чет не то все-таки. 10млн записей за месяц - это что?
|
|
|
12
timurhv
06.06.26
✎
04:24
|
(9) Это скорее всего, ошибка проектирования. Кому она нужна - никому, РН тут нафик не нужен
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший