Я создаю приложение, которое должно хранить изрядное количество событий, которые выполняют пользователи. (Подумайте много, как в миллионах в месяц).
Мне нужно сообщить об этих событиях (всего типа x за последний месяц и т. Д.), И мне нужно что-то гибкое и быстрое.
Я играл с Redis и т. Д. Для хранения агрегатов данных, но это может означать, что я создаю огромное хранилище однозначных агрегатов, которые не подлежат восстановлению.
Хотя это не плохое решение, я смотрю на хранение необработанных данных о событиях в таблицах, которые затем я могу запрашивать по мере необходимости и потенциально генерировать статистические счетчики на периодической основе. Таким образом, это дало бы мне возможность добавлять счетчики с течением времени, а также проводить специальные проверки того, что происходит, чего не позволяют агрегаты.
Вопрос в том, как лучше это сделать? Я, очевидно, не хочу создавать модель для каждой таблицы (что предпочитает Rails), поэтому я просто создаю таблицы и взаимодействую с необработанным SQL на основе потребностей, или есть какой-то другой выбор для работы с такого рода данные?