Architecture to support 2D GeoQuery
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 and how functionality would differ from Elasticsearch? And why DigitalOcean over MongoDB’s cloud hosting with AWS?
Or any other possible stack configurations (the simpler the better since no network engineers)? In terms of simplicity I was wondering if it were simply possible to use MongoDB at least for now.
Depends on your loads, Elasticsearch, Redis, and other configurations may be unnecessary. MongoDB with indexes could be very fast without additional caches and other stuff
Not sure how you want to use time in geospartials, but if it is something like "was near you 5 hours ago", this is just another stage in pipeline.”