We have a golf course booking website where users can search for golf courses and book teetimes.
Currently the courses are sorted alphabetically after uses searches but I think we should implement the popularity attribute and base it of the orders made.
My main question is How often should we update the courses in Algolia? (Keep in mind we have around 30-50 active courses)
I was thinking something like updating once/twice per month using cron jobs where I would search my database order collection and get all the orders in last month and update the algolia with new popularity attribute. The popularity initially would be saved in my database and on each completed order I would increment it by 5.
We have talked about incrementing algolia directly after each order but that would mean we need to expand our current backend to talk to algolia and since we already have cron jobs settuped on a different backend for updating algolia and it’s availability attribute it would make sense to do the same for popularity attribute
What do you guys think about this approach and do you have any recommendations?