Поиск Geofire в очень большой базе данных Firebase Android - PullRequest
0 голосов
/ 19 сентября 2018

я пытаюсь построить карту, которая поддерживает миллионы маркеров.Я работал над всем, от кластерных маркеров до загрузки только видимых маркеров, используя geoquery.atLocation, и вот моя проблема: geofire занимает много времени для поиска в миллионах данных.Если приложение не сбоит в этом случае.Я могу изменить структуру базы данных, чтобы решить проблему, но это создаст много проблем для меня.Так есть ли хитрость, которая делает поиск геофайра в очень большой базе данных для поддержки миллионов.

1 Ответ

0 голосов
/ 19 сентября 2018

вам нужно добавить .indexOn поле g:

{
  "rules": {
    ...
    "locations": {
      ".indexOn": "g"
    }
  }
}

при запуске GeoQuery с круговым радиусом, это будет загружаться немного больше, чем при запросе с прямоугольными границами -хотя это не поддерживается, следовательно, на самом деле этого не избежать.

...