forum.bitel.ru
http://forum.bitel.ru/

После обновления перестал работать отчет
http://forum.bitel.ru/viewtopic.php?f=12&t=11295
Страница 1 из 1

Автор:  skyb [ 30 янв 2016, 11:06 ]
Заголовок сообщения:  После обновления перестал работать отчет

Отчет долгий, порядка 15 мину(это нормально, за весь месяц с разбивкой по дням считает количество сессий в ЧНН), через минуты 3, кнопка сгенерировать отжимается, но в логах показывает что отчет выполняется, после выполнения данные не показываются. до обновления работал
Код:
01-30/07:50:21  INFO [http-bio-127.0.0.1-8080-exec-1] BGCSVReport - Running dyncode for csv report
01-30/07:50:21  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 1 AND hour = 21 GROUP BY sessionId
01-30/07:50:47  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 2 AND hour = 21 GROUP BY sessionId
01-30/07:51:11  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 3 AND hour = 21 GROUP BY sessionId
01-30/07:51:35  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 4 AND hour = 21 GROUP BY sessionId
01-30/07:52:00  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 5 AND hour = 21 GROUP BY sessionId
01-30/07:52:23  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 6 AND hour = 21 GROUP BY sessionId
01-30/07:52:46  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 7 AND hour = 21 GROUP BY sessionId
01-30/07:53:06  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 8 AND hour = 21 GROUP BY sessionId
01-30/07:53:28  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 9 AND hour = 21 GROUP BY sessionId
01-30/07:53:50  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 10 AND hour = 21 GROUP BY sessionId
01-30/07:54:11  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 11 AND hour = 21 GROUP BY sessionId
01-30/07:54:33  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 12 AND hour = 21 GROUP BY sessionId
01-30/07:54:56  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 13 AND hour = 21 GROUP BY sessionId
01-30/07:55:19  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 14 AND hour = 21 GROUP BY sessionId
01-30/07:55:41  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 15 AND hour = 21 GROUP BY sessionId
01-30/07:56:03  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 16 AND hour = 21 GROUP BY sessionId
01-30/07:56:26  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 17 AND hour = 21 GROUP BY sessionId
01-30/07:56:48  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 18 AND hour = 21 GROUP BY sessionId
01-30/07:57:11  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 19 AND hour = 21 GROUP BY sessionId
01-30/07:57:33  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 20 AND hour = 21 GROUP BY sessionId
01-30/07:57:56  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 21 AND hour = 21 GROUP BY sessionId
01-30/07:58:17  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 22 AND hour = 21 GROUP BY sessionId
01-30/07:58:41  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 23 AND hour = 21 GROUP BY sessionId
01-30/07:59:03  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 24 AND hour = 21 GROUP BY sessionId
01-30/07:59:24  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 25 AND hour = 21 GROUP BY sessionId
01-30/07:59:47  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 26 AND hour = 21 GROUP BY sessionId
01-30/08:00:10  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 27 AND hour = 21 GROUP BY sessionId
01-30/08:00:33  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 28 AND hour = 21 GROUP BY sessionId
01-30/08:00:56  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 29 AND hour = 21 GROUP BY sessionId
01-30/08:01:19  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 30 AND hour = 21 GROUP BY sessionId
01-30/08:01:41  INFO [http-bio-127.0.0.1-8080-exec-1] LoggingPrintStream - query  SELECT * FROM inet_session_log_detail_11_201601 AS detail  WHERE day = 31 AND hour = 21 GROUP BY sessionId
01-30/08:02:03  INFO [http-bio-127.0.0.1-8080-exec-1] BGCSVReport - Process time => 702288

Код:
  Сервер: вер. 6.2.1001 / 19.01.2016 20:30:21
    os: Linux; java: Java HotSpot(TM) Server VM, v.1.8.0_66

  reports: вер. 6.2.198 / 25.12.2015 04:05:05

Автор:  Phricker [ 30 янв 2016, 14:38 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

nginx?
обрати внимание на
Код:
    proxy_connect_timeout;
    proxy_send_timeout;
    proxy_read_timeout;

Автор:  skyb [ 30 янв 2016, 15:55 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

кстати паходу да, буду ковырять, спасибо

Автор:  stark [ 01 фев 2016, 15:40 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

ну и отчет наверное можно как-то оптимизировать скорее всего

Автор:  dimOn [ 01 фев 2016, 16:49 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

полагаю, что для "с разбивкой по дням считает количество сессий в ЧНН" запрос типа
Код:
SELECT sessionId, count(*) FROM inet_session_log_detail_11_201601 AS detail WHERE day = 1 AND hour = 21 GROUP BY sessionId
будет быстрее в пятьдесят восемь тысяч раз, чем в запросе у топикстартера, но не уверен, нужно проверять. Или может задача неясна и запрос нужен не для того.


з.ы. Это не говоря уж о том, что по-хорошему в полях после SELECT не должно быть элементов, не входящих в GROUP BY или не связанных агрегирующими функциями, и тем более "*", в любом случае если они там есть, то они бесполезны в данном случае. И второй факт - COUNT(*) для GROUP BY отдельно оптимизируется, потому лучше реализовать запрос нормально. Не должен запрос работать 15 минут.

Автор:  skyb [ 01 фев 2016, 17:21 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

stark писал(а):
ну и отчет наверное можно как-то оптимизировать скорее всего

если подскажите как сделать за каждый день месяца подобный запрос с оптимизацией, буду признателен
SELECT * FROM inet_session_log_detail_11_201601 AS detail WHERE day = 1 AND hour = 21 GROUP BY sessionId

Автор:  dimOn [ 01 фев 2016, 21:05 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

Что именно нужно то? Сколько разных(?) сессий было в каждый день месяца или что?

Автор:  skyb [ 02 фев 2016, 14:28 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

dimOn писал(а):
Что именно нужно то? Сколько разных(?) сессий было в каждый день месяца или что?

вообще нужно знать какое количество сессий было в определенный час, ну или максимальное, в каждый день месяца

Автор:  dimOn [ 02 фев 2016, 14:50 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

там ещё по trafficTypeId делится внтури сессий, потому не так просто группировкой count сделать. но по-хорошему можно сделать что-то типа день-час-сессия:
Код:
SELECT day, hour, sessionId FROM inet_session_log_detail_11_201601 AS detail GROUP BY day, hour, sessionId
а потом сгруппировать ещё раз по выборке уже внутри день-час:
Код:
SELECT day, hour, count(*)
FROM
   (SELECT day, hour, sessionId FROM inet_session_log_detail_11_201601 AS detail GROUP BY day, hour, sessionId) as grouped_detail
GROUP BY day, hour

один запрос. Будет день — час — кол-во разных sessionId внутри часа (НЕ учитывая разные trafficTypeId внутри этих записей, т.е. их может быть хоть сколько внутри день-час для этой сессии)
Ну, как-то так.

Автор:  skyb [ 02 фев 2016, 18:27 ]
Заголовок сообщения:  Re: После обновления перестал работать отчет

да, так делается быстрей, плюсанул признание ;-)

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/