Я изучаю дизайн базы данных nosql, разрабатывая серверную часть nodejs для приложения типа социальной сети.
Пользовательская схема в моем бэкэнде такова:
userSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
email: {
type: String,
required: true
},
hashed_password: {
type: String,
required: true
},
isVerified: {
type:Boolean,
default: false
},
emailVerificationToken: String,
emailVerificationTokenExpires: Date,
followers: [{ type: ObjectId, ref: 'User'}],
following: [{ type: ObjectId, ref: 'User'}],
pins: [{type: ObjectId, ref: 'Pin'}],
bio: String,
website: String
});
Я храню массив ссылок на подписчиков, который является неограниченным массивом.Я знаю, что максимальный размер документа составляет 16 МБ.Я хочу разработать бэкэнд, который должен быть масштабируемым для работы с миллионами пользователей.Должен ли я иметь отдельную схему для хранения подписчиков, следующих данных или текущий дизайн базы данных в порядке?