Столкнулся с проблемой сохранения статистики. Длительный гуглинг показал что простого и красивого решения данной проблемы не существует.
Есть такая таблица

В таблице храниться статистика которую потом нужно смотреть и группировать примерно такими запросами
SELECT dev_type, COUNT(dev_type) FROM `views` WHERE camp_id = 10 AND date > 20170116 GROUP BY dev_type ORDER BY dev_type ASC
В тестовой таблице 10 млн. строк
Выполнение такого запроса около 3 секунд, учетом того что у меня SSD и проиндексированы все поля (индексы весят больше самой таблицы)
Вот такой запрос выполняется побыстрее (0.3 секунды)
SELECT ad_id, COUNT(ad_id) FROM `views` WHERE camp_id = 10 AND date = 20170117 GROUP BY ad_id ORDER BY ad_id ASC
Вобщем приходит на ум только одно.
Статистика мне нужна с детализацией по дням (часы, минуты ненужны)
Думаю создавать для каждого дня новую таблицу, такого типа views_stat_2017_01_30 и писать стату в нее.
По моим подсчетам за один день в таблице будет не более 1 млн. строк. А это уже более менее нормальная скорость.
А юзеру в админке предоставлю возможность удалять "старые" таблици.
Не будет ли это *овнорешением проблемы?