Уведомления в аккаунте
Есть некий сайт. Хочу добавить возможность рассылки уведомлений в аккаунты пользователей. Просто нотификация без возможности ответа. Придумал такое.
Создал таблицу уведомлений - notifications
id | message | date_start
-----------------------------------
1 | mess 1 | 27/05/2020 12:00
2 | mess 2 | 27/05/2020 18:00
3 | mess 3 | 27/05/2020 23:00
В нее добавляем все уведомления
Так же создал таблицу связей users_notifications
user_id | notification_id | date_read
--------------------------------------------
150 | 1 | null
151 | 1 | 27/05/2020 12:05
152 | 1 | null
150 | 2 | null
151 | 2 | null
152 | 2 | null
Добавил поле date_read - что бы юзер мог пометить уведомление как прочитанное.
В итоге, при авторизации, мы просто выбираем все не прочитанные уведомления для текущего юзера, и показываем.
Такая струткура удобна тем, что можно слать уведомления конкретным юзерам, хоть одному, хоть 100, хоть всем. Но если юзеров много, таблица связей будет расти как на дрожжах. Допустим 100 000 юзеров * 100 уведомлений 10КК записей. А это уже может существенно повлиять на скорость.
Можно было бы удалять старые уведомления, но хотелось бы иметь историю уведомлений для каждого юзера.
В общем вопрос, такой подход к организации уведомлений правильный?