Отдельные таблицы для каждого типа уведомления не рассматриваются?
Сущности у вас же будут разные, какой тип для resource_id вы выберете? Bigint надо брать :)
Можно иметь общую таблицу уведомлений (notifications) для удобства выборки, в которой будет помимо прочего пара полей FK (notification_type + notification_id) и на каждый тип своя таблица (comment_notifications, like_notifications) с любыми наборами полей, необходимыми для каждого типа.
Ну это так, первые мысли вслух.