где и как правильно написать посты для соцсети

Я ради интереса решил написать собственную соцсеть, на подобии вк или телеграмма. И задался вопросом, как вообще стоит хранить посты в профиле? Перерыв пол интернета, так ничего и не нашел и принялся делать сам.

Написал я Модель поста для MongoDB

const PostSchema = new Schema({
    PID:{type:Number,required:true}, //Id профиля к которому привязан пост
    title:{type:String,required:true},
    author:{
        id: {type: Number, required: true},
    },
    images:[{key:String,link:String}],
    likes:{
        count:{type:Number, default:0,required:false},
        users:{type:[Number],default:[],required:false}
    },
    views:{
        count:{type:Number, default:0,required:false},
        users:{type:[Number],default:[],required:false}
    },
    params:{
        private:{type:Boolean,default:false,required:false}
    }
})

С автором поста у меня возникли первые проблемы, как мне получать данные об авторе 1-2 запросами? Прикинул что можно записывать о нем данные сразу в пост, но как быть если они поменяються(Например медиа файлы или никнейм)? В общем адекватного решения у меня не возникло, умные люди подскажите как быть.

Вот для примера диаграмма СУБД:

Диаграмма


Ответы (0 шт):