Во-первых, подумайте над созданием прототипа производительности, чтобы проверить, что объединение будет слишком дорогим. Возможно, вы преждевременно оптимизируете что-то, что не является проблемой.
Если это реальная проблема, рассмотрите таблицу, предназначенную исключительно для хранения данных фида событий, которые должны обновляться параллельно с другими таблицами.
например. при создании записи заметки также создайте запись события в таблице событий с указанием даты, описания и пользователя.
Рассмотрим индексирование таблицы событий на основе идентификатора пользователя (или идентификатора пользователя и даты). Также рассмотрите возможность очистки старых данных, когда они больше не нужны.
Это не нормализованная схема, но она может быть быстрее, если получение ленты событий является частой операцией.