Newie - Before I learn MongoDB Need to know if it is suitable for my application

I have written a timed program that requires Adverts in between screens in the program.

There are a few parts to setup the scenario.

  1. the user will have criteria ie Age, Gender and location
  2. the advertiser will specify Age , Gender and Major location cities with distance from that city that they are looking for people to see their adverts. The Advertisers might have ranges on each of these criteria.

Then when the user requests a set of adverts (To be done in ms and up to 35 adverts) the DB needs to check for adverts that suit the criteria from multiple advertisers (We do not want repeats from he same advertiser) and send the data of the adverts to be displayed to my system.

Is this something that can be done with MongoDB and is MongoDB the most suitable ?

Thank You

1 Like

Yes, MongoDB is suitable for this. You need to define your data models appropriately and maybe have a rank algorithm to see the best suited ads for each user. If you need more ranks, try Atlas Search also.

1 Like

Hi @Peter_Lewis,

Welcome to MongoDB community.

This is more than possible with MongoDB.

MongoDB allows you to store your flexible data in documents and also allow:

  1. Querying data based on complex filtering as well as GEO queries.
  1. React to your data based on Change Streams or triggers:
  1. Allows text searches and GEO searches with verious tools like Atlas search if you will run on Atlas. Running on Atlas is very recommended as a managed service with lots of tooling like:

MongoDB is definitely a database for such modern apps.

Best regards,