Сценарий:
Большая система (~ 200 таблиц).
60 000 пользователей.
Сложные отчеты, которые потребуют от меня выполнения нескольких запросов для каждого отчета, и даже это будут сложные запросы свнутренние запросы повсюду + некоторая обработка в PHP.
Подход:
Я видел подход, в котором я не уверен:
Имею одну централизованную, ненормализованную таблицу, в которой регистрируется любая активность в системе, которая подлежит отчетности,Эта таблица будет содержать в основном внешние ключи, поэтому она должна быть достаточно компактной и быстрой.
Так, например (Моя система представляет собой систему управления виртуальным обучением), пользователь записывается на курс, таблица хранит идентификатор пользователя, дату,идентификатор курса, идентификатор организации, вид деятельности (зачисление).
Конечно, я также храню эти данные в нормализованной БД, которую использует реальное приложение.
Плюсы: просто, легко обслуживаемозапросы и код для обработки данных и быстрого поиска.
Минусы: существует опасность, что ненормализованная таблица будет не синхронизирована с реальной БД.
При таком подходестоит задуматься, или (желательно из опыта) это всего $ #% #% t?