Reputation: 649
I am building a review site. It will review hotels, restaurants and cafes (lets call them listings), so there will be three categories of listings. Each of these listings will have reviews.
Now end users will be able to like / dislike the listing or individual reviews. I am using AWS Amplify to build this site.
The way the front end will query the data would as follows.
I am new to NoSQL Database concepts, so need some advice on how this should be structured. Below image shows what I have in mind.
Upvotes: 0
Views: 293
Reputation: 542
NoSQL schema modeling should performed based on the access patterns of the data. Based on the access patterns you provided
However, to completely validate your schema I need the following information. In Listing table the Primary Partition key - Category values are in very small number (Hotel, Cafe, Restaurant, etc.) and this can cause hot partitions. DynamoDB expects the primary keys to be uniformly distributed for optimal performance.
Upvotes: 2