I am considering using MongoDB for my next project but first I would like to see if it supports functionality that my app will require. So far I didn't see anything in the MongoDB documentation that will be useful for me, but maybe I'm mistaken.
Basically there will be user questionnaire (perhaps hundreds of questions with multiple answer options).
Once a user fills out questionnaire, his answers need to be compared to the answers of all other existing users, some kind of a matching percent need to be calculated and probably saved to the database. The reason I think it needs to be saved to db is that the calculation of the matching percent seem to be a heavy process and I would not want to run it each time a match percent is requested.
So the functionality I'm seeking is:
- Calling a procedure with a parameter (new userid)
- In the procedure I need to get all answers of the new user.
- Run matching code for all existing users' answers against answers of the new user.
- Saving results back in the database.
- Doing all of that with one call without having to return data from db to the client app
It is well possible that MongoDB is not the tool for these requirements.