Reputation: 1449
I'm using Nestjs
and Mongoose
as ODM. I have a model called Product which has the following properties:
Product Model
@Schema({ timestamps: true, id:true, toJSON:{virtuals:true} })
export class Product {
@Prop({ required: true, type: String })
title: string
@Prop({ type: String })
brand: string
@Prop({ type: String })
description: string
@Prop({ type: Number})
currentPrice: number
}
every 4 hours product price will get updated. I'm wondering what's the best way to store product price history in MongoDB
. in a SQL database like PostgreSQL
, we make a ProductPrice table with (productId, price, date). But as MongoDB
max document size is 16MB and thousands of products that I have& what is the best solution in MongoDB
??
Upvotes: 1
Views: 457
Reputation: 1836
This is not challenging for MongoDB
feel free and just create a ProductHistory
collection for that:
{
id: ObjectId,
product_id: ObjectId,
created_at: Date,
price: 99,
currency: "$",
expiration: 4,
expired: false
}
Upvotes: 1