Usuários vendo uns aos outros no Google Maps

Eu estou desenvolvendo um app que permite que os usuários vejam os outros usuários ativos nos arredores (como na mesma rua ou bairro). Eu estou em duvida de qual seria a melhor estratégia para mostrar a localização dos outros usuários. Eu pensei em agrupar os usuários em um banco NoSql, por latitude e longitude e fazer o calculo da área, ou ainda criar uma arvore onde eu colocaria a cidade e o bairro para depois pegar as coordenadas. Porem com essa ultima estratégia eu teria que mudar o usuário de nó toda vez que ele estivesse em uma cidade diferente ou mesmo o quando ele trocar de bairro.
Alguém teria tem alguma ideia de como poderia realizar essa funcionalidade de maneira mais consistente?