Description
For a new project, I'm looking for someone to design a schema for a database. We are building a new website that allows users to compare products based on their characteristics.
Example:
- CPU speed or screen size for a smartphone.
- Magnesium and Sugar for fruits.
Scoring:
Based on these characteristics, we want to calculate a score for each product and classify them to answer questions like :
- What's is the best smartphone/fruits
- What is the least sweet fruit?
- Which smartphones are similar in terms of pixel density that this one?
To calculate this score, we want to be able to define some configuration for each characteristic like:
- Weight: the importance of the characteristic defined by us. Some factors are less important than others for the users.
- Votes: We want to allow users to vote. "This factor is more important for me."
We want to be able to classify these factors in groups like :
- Screen: Pixel density / Resolution
- Performance: CPU SPEED / RAM
The idea is to calculate the score of each group ( based on all factors they contain). To answer questions like :
- Which smartphone is best in terms of performance?
What we are looking for:
We are looking for someone to design the database, not to implement it. We use MongoDB through mongoose, but we have some difficulties finding the best way to represent data. We are open to other alternatives than MongoDB.