Сессию в базе хранят на тот случай, если там есть что-то ценное.
Например, есть конструктор сайтов или социальная сеть. И пользователь может кое-что сделать ещё до регистрации, например, создать пост или профиль свой заполнить. Можно все его временные данные сериализовать и поместить в базу, чаще всего JSON в NoSQL.
В обычную сессию тоже можно сохранить, но обычно пространство для хранения сессий регулярно чистят и тогда данные потеряются.
Сохранять в базу стоит только тогда, когда пользователь сделал что-то. Для каждого пользователя выделять место в базе бессмысленно.
Когда пользователь авторизуется, временные данные переносят на постоянное место хранения.
Регулярно область сессий неавторизованных пользователей чистят, но гуманно, то есть не очень активно, с большим интервалом хранения.
Я обычно с другим сталкивался - данные из базы выгружают в сессию, чтобы меньше нагружать базу.
Вот схема:
https://toster.ru/answer?answer_id=645494