|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
Есть чат между оператором и клиентом. Все сообщения хранятся в таблице. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Нужно определить среднее время ответа оператора клиенту. Каким образом это лучше сделать? Выгрузить все сообщения в цикле обработать? (тут свою уже нюансы ибо нужно учитывать сообщение клиента а после ответ оператора) Или можно сделать запросом? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 14:45 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
TsyklopИли можно сделать запросом? Можно. Только при чем здесь Java? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 14:47 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
BlazkowiczМожно. Только при чем здесь Java? Подскажете как? ибо это на Java обрабатывать или делать запрос. я хз. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 14:48 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
Blazkowicz, Подскажите запрос. Пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 14:49 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
TsyklopBlazkowicz, Подскажите запрос. Пожалуйста. Сделать за вас или отправит вас в профильный форум где обсуждают SQL запросы? Вы даже не сделали декомпозицию проблемы. У вас же не в вычислении среднеарифметического вопрос? А в том как правильый JOIN сделать чтобы из одной колонки получить две? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 14:58 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
BlazkowiczTsyklopBlazkowicz, Подскажите запрос. Пожалуйста. У вас же не в вычислении среднеарифметического вопрос? А в том как правильый JOIN сделать чтобы из одной колонки получить две? JOIN тут не нужен, кстати. Всё делается через lag(), и в mysql он вроде бы есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 16:37 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
vslJOIN тут не нужен, кстати. Всё делается через lag(), и в mysql он вроде бы есть. Возможно. Но тогда нужно найти способ схлопнуть последовательные сообщения от одной стороны. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 16:52 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
vslBlazkowiczпропущено... У вас же не в вычислении среднеарифметического вопрос? А в том как правильый JOIN сделать чтобы из одной колонки получить две? JOIN тут не нужен, кстати. Всё делается через lag(), и в mysql он вроде бы есть. mysql не имеет lag. И в mysql все это решается через переменные, но убей бог я не понимаю людей, которые что-то сложнее 2+2 описывают в логике бд. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 16:57 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
BlazkowiczvslJOIN тут не нужен, кстати. Всё делается через lag(), и в mysql он вроде бы есть. Возможно. Но тогда нужно найти способ схлопнуть последовательные сообщения от одной стороны. Как то так должно быть. Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 16:57 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
BlazkowiczvslJOIN тут не нужен, кстати. Всё делается через lag(), и в mysql он вроде бы есть. Возможно. Но тогда нужно найти способ схлопнуть последовательные сообщения от одной стороны. Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
Как-то так. Озверинmysql не имеет lag. Верю, конечно, но поиск по «mysql window functions lag» выдал что-то осмысленное, вот я и предложил. Озверинно убей бог я не понимаю людей, которые что-то сложнее 2+2 описывают в логике бд. А я не понимаю людей, которые предпочитают выносить простую обработку потока данных на сторону java, не думая о затратах на fetch всей этой массы записей. Многие при этом даже fetchSize не настраивают, выбирая 100500 строк порциями по 5 штук. Сортировать-то всё равно на стороне БД будете, а здесь это наиболее ресурсоёмкая задача. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 17:29 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
А ещё есть такой подход как вычислять статистику во время вставки в БД, а не уже когда-то потом после. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 19:25 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
Эта задача решается вообще без БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2018, 19:50 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
vslА я не понимаю людей, которые предпочитают выносить простую обработку потока данных на сторону java, не думая о затратах на fetch всей этой массы записей. Многие при этом даже fetchSize не настраивают, выбирая 100500 строк порциями по 5 штук. Сортировать-то всё равно на стороне БД будете, а здесь это наиболее ресурсоёмкая задача. Потом границы озвучьте, где "простая обработка потока" данных - который надо обрабатывать в потоке до вставки в бд, к слову, а где уже сложная? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 10:05 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
ОзверинvslА я не понимаю людей, которые предпочитают выносить простую обработку потока данных на сторону java, не думая о затратах на fetch всей этой массы записей. Многие при этом даже fetchSize не настраивают, выбирая 100500 строк порциями по 5 штук. Сортировать-то всё равно на стороне БД будете, а здесь это наиболее ресурсоёмкая задача. Потом границы озвучьте, где "простая обработка потока" данных - который надо обрабатывать в потоке до вставки в бд, к слову, а где уже сложная? В 2 км на юго-запад от упомянутых Вами 2+2. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 11:47 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
vslОзверинпропущено... Потом границы озвучьте, где "простая обработка потока" данных - который надо обрабатывать в потоке до вставки в бд, к слову, а где уже сложная? В 2 км на юго-запад от упомянутых Вами 2+2. Мои 2+2 - это триггер для обеспечения нефункциональных требований(дата создании записи, логирование, etc.) Когда я встречаю проект, в котором бизнес логика размыта по нескольким слоям тонким слоем, причем один из слоев - БД, я начинаю переживать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 12:34 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
TsyklopКаким образом это лучше сделать? Для данной структуры это вообще никак не сделать, поскольку нет связи между обращением и ответом. Нет способа определить к какому обращению относится ответ. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 13:42 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovTsyklopКаким образом это лучше сделать? Для данной структуры это вообще никак не сделать, поскольку нет связи между обращением и ответом. Нет способа определить к какому обращению относится ответ. Согласен, заставьте пользователя в чате перед каждым ответом выбирать сообщение, по которому он задает вопрос, а оператора - на которое отвечает. Еще лучше заставить пользователя в ручную нумеровать свои ответы по уникальным цепочкам, чтобы было понятно - это он задает вопросы по ответу оператора или спрашивает уже что-то новое. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 13:59 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovДля данной структуры это вообще никак не сделать, поскольку нет связи между обращением и ответом. Нет способа определить к какому обращению относится ответ. Ерунда. Есть время. Известно от кого сообщение. Всё реализуемо. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 15:43 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
ОзверинСогласен, заставьте пользователя в чате перед каждым ответом выбирать сообщение, по которому он задает вопрос, а оператора - на которое отвечает. Еще лучше заставить пользователя в ручную нумеровать свои ответы по уникальным цепочкам, чтобы было понятно - это он задает вопросы по ответу оператора или спрашивает уже что-то новое. Я, как пользователь, пошлю такую систему куда подальше :)) Хотя смотря о какой системе речь, вот если это чат моего поставщика товаров или услуг с которых я имею свой процент, тогда да, можно дополнительные усилия применять. А если это поставщик домашнего интернета или сотовый оператор, ну их в баню с их нумерацией :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 18:13 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
Еще нюанс, вопросы клиента могут быть такими, что на какие-то ответить можно сразу же, а на какие-то постратить эNное кол-во времени. Как это учесть? К чему такой подсчет тогда. Как говорят - средняя температура по больнице :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 18:15 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
NixicЕще нюанс, вопросы клиента могут быть такими, что на какие-то ответить можно сразу же, а на какие-то постратить эNное кол-во времени. Как это учесть? К чему такой подсчет тогда. Как говорят - средняя температура по больнице :) Согласен что нюансов тут много. Был бы я заказчиком... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 18:46 |
|
Средняя скорость ответа юзера
|
|||
---|---|---|---|
#18+
В подобного рода задачах численная точность не особо важна. Сами входные данные - не очень точные. Важнее сделать просто классификацию. Типа за сегодняшний день 90% ответов операторов были не более чем 15 минут. Процентиль типа. А остальные - дольше. Если нужна детализация - дать срез таблицы по операторам. Но во всех случаях - численная точность не имеет значения. Вообще в системах принимающих решения часто мы имеем дело с грубыми данными. Или с композицией нескольких потоков данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2018, 23:15 |
|
|
start [/forum/topic.php?fid=59&fpage=45&tid=2121981]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 323ms |
total: | 481ms |
0 / 0 |