Я пытаюсь построить анализатор веб-журнала на основе журнала tomcat.
И я сначала помещаю журнал в базу данных, затем делаю статистику.
Теперь я сталкиваюсь с проблемой:
Для заданного диапазона данных, например (с 2010-09-20 по 2010-09-25), мне нужно рассчитывать посетителей по дням, поэтому сначала я делю диапазон данных по дням:
Split:(2010-09-20,2010-09-25) to
(2010-09-20 00:00:00, 2010-09-21 00:00:00),
(2010-09-21 00:00:00, 2010-09-22 00:00:00),
(2010-09-22 00:00:00, 2010-09-23 00:00:00),
(2010-09-23 00:00:00, 2010-09-24 00:00:00),
(2010-09-24 00:00:00, 2010-09-25 00:00:00),
Затем я использую sql для запроса количества посетителей каждого диапазона.
Например:
select count(distinct ip) from log
where time between 201009200000 and 201009210000
group by ip.
Этот sql используется для подсчета посетителей 2010-09-20.
Так что, если диапазон данных из пользовательского запроса охватывает более одного дня, я должен подключаться к базе данных более одного раза. это низкая эффективность?
Есть решение?
BWT, я использую MySQL.