2D GeoQuery on MongoDB + Redis Caching

As a background, I’m attempting to test a database to power backend of an app that matches users with other users based on time and coordinates (with preference for geoproximity but also adaptability to adjust time scare if no or few matches found nearby) based on user generated string search query (with hopefully some natural language clustering/suggestion generation).

Received this recommendation from a friend: “Install as clusters on DigitalOcean using $near 2D GeoQuery in MongoDB. Additionally filter data and store in REDIS and perform REDISsearch.”

Could anyone please share their thoughts on whether this would be a working solution? MongoDB would be the primary database and Redis would supplement with caching and machine learning functionality?

And do they compres with Elasticsearch? And why DigitalOcean over MongoDB’s cloud hosting with AWS? Can Mongo and Redis be better integrated if on same platform?

Lastly any other possible stack configurations (the simpler the better since no network engineers) anyone would recommend for this deployment?

Thank you.