Можете попробовать такой подход.
habrahabr.ru/post/147744/
Думаю, что даже для миллиардов точек вам подойдет предложенный выше Postgres + Postgis.
Про фильтрацию большого объема данных сошлюсь на другой пост того же автора.
habrahabr.ru/post/114113/
Вам лишь стоит объединить эти два подхода, в том числе и в случае использования mongo.