Ищете хорошую структуру базы данных для достижения Facebook/SO как уведомлений

Я хочу иметь уведомления на своем сайте, похожие на то, как SO делает это. Я искал хорошую структуру таблицы, чтобы сделать это, но я не могу понять это.

Я думал что-то вроде этого.

Уведомления

id, notification_type_id, user_id, type_id

Типы уведомлений

id, notification_text

Если тип уведомления будет связан либо с новым сообщением, либо с новым комментарием, либо с любыми функциями, которые я добавляю позже по строке... Идентификатор пользователя будет относиться к тому, для кого предназначен уведомление. Type_id и тип уведомления будут идти рука об руку, поэтому, если notification_type был новым комментарием, type_id будет comment_id, чтобы перейти.

Мне кажется, что это хорошо для меня, но я хочу, чтобы все пользователи могли уведомлять, когда что-то меняется. Например, на facebook, когда вы что-то прокомментируете, вы получаете уведомление о том, что кто-то еще прокомментировал то же самое после вас.

Кажется, я не могу понять это... Помощь нужна

Спасибо

РЕДАКТИРОВАТЬ: То, как я думал об этом, было указано, что notification_type_id будет отображаться в таблице notification_type, которая будет содержать текст для каждого уведомления ( "У вас есть новый комментарий", "бла-бла-бла также прокомментировал blah blah blah" и т.д.), type_id будет сопоставлять primary_id с любым комментарием. например, если в уведомлении говорится, что у вас есть новый комментарий к вашему сообщению, тогда type_id будет основным идентификатором сообщения для легкой связи. IDK, это была просто мысль.

Ответы

Ответ 2

Можете ли вы подробнее рассказать о каждом столбце, потому что ваш текст не очень точен, поскольку вы упоминаете "тип уведомления" и не являетесь столбцом в вашем примере. Какой столбец указывает на идентификатор в типах уведомлений таблицы: notification_type_id или type_id?