Reputation: 3033
I am in a bit of dilemma.. in the database if have lots of posts which all have a longitude and latitude attribute. What I am currently doing is observing the whole post group, and then doing the validation on the device. Which will become very heavy if there are more than 1000 or more posts.
if (location (latitude + longitude)).distance(currentUser.location) < 5000
Is there a way to do the validation directly on the database? And keep in mind that the currentUser.location is relative to the device, so I always would need to construct the location from the post and compare it to the current location of the user.
Any help would be much appreciated.
Upvotes: 0
Views: 94
Reputation: 4858
It's possible if you would use something like geohashes. Then you could filter your locations based on their geohash indexes. Or you can also achieve that by creating your data structure based on geohashes. But there's no need for this since there are libraries which do that.
I've created a library for geo queries, check it out.
Or there's also a good library from firebase itself.
Upvotes: 1