sql >> Database teknologi >  >> RDS >> PostgreSQL

Tilføj indekser for at fremskynde Geokoder nærsøgning

Afmatningen er sandsynligvis forårsaget af matematiske operationer og ikke af at hente tabeldata. En del af dine kriterier er ikke mod postfelter, men mod resultatet af matematikoperationen på andre poster, så det bliver et O(N).

Grunden til at Postgres ikke bruger et indeks og vælger Seq scan i stedet, er fordi det beslutter, at de fleste tabelposter skal hentes under forespørgsel. Når de fleste poster i tabellen skal hentes, giver indekser muligvis ikke den store fordel, hvis nogen.

For at fremskynde tingene bør du overveje at bruge rumlige indekser og nærhedsbaseret søgning af PostGis eller alternativt Elasticsearch med Geo Distance Query .




  1. Sådan udtrækkes data fra xml-kolonnen i sql 2008

  2. Databaseovervågning - Fejlfinding af Prometheus med SCUMM Dashboards

  3. MySQL COS() Funktion – Returner cosinus for et tal i MySQL

  4. Erstatning af værdi i tomt felt efter brug af split_part