Такая задача: люди делают посты в каком-то районе города. На пост можно реагировать лайком. Нужно выводить топ постов по любому району, а также чтобы была возможность брать топ по всему городу. И конечно же это относится к любому району любого города. Лайки и посты находятся в разных базах, то есть сделать простой подзапрос сделать не выйдет. Как бы вы ее решали?
С базами всегда так - либо делаем быстро для чтения,либо для записи. Если делать удобно для чтения, то проще иметь вынесенный отдельно счётчик . Менять его в транзакции вместе с добавлением/изменением/удалением поста.
Но вообще похоже что в самой задаче стоит сначала разобраться в ньюансах, зарефачить и потом только внести правку