Die postgis skaliert die gleiche Art und Weise als postgresql Skalen. Der Postgis-Index funktioniert genauso wie andere relationale, Sie können es überprüfen here.
Wenn Sie sich den Link ansehen, wird erklärt, dass er mit einem geometrischen Algorithmus indexiert, der bei jeder Einfügeoperation ausgeführt wird, sodass er in Echtzeit-Apps möglicherweise nicht ausreichend reaktionsfähig ist.
Während Elasticsearch Echtzeitindizierung haben, basierend auf Lucene Index.
Für Echtzeit-Apps kann das ACID-Modell, das von jeder relationalen Datenbank verwendet wird, verschwenderisch sein, und die Task benötigt diese Art von Sicherheit möglicherweise nicht.
Postgresql verwendet ACID-Modell, das in schweren Echtzeit-Apps ein Nachteil sein kann.
Während
Elasticsearch ist eine Art Suchmaschine, die für Echtzeit-Suche durchgeführt wird.
Sie müssen basierend auf einer bestimmten Aufgabe entscheiden, welche Art von Suche Sie benötigen?
Beispiel: Das ACID-Modell ist in meiner speziellen Aufgabe unpraktisch, so dass ich keine Zeit für einige Synchronisation und andere Dinge verschwenden möchte, habe ich Back-End für Dating-App basierend auf dem Standort der Benutzer (alle Benutzer im Umkreis von 1 km).
Ich benutze Postgres/Postgis seit Jahren und bin im Begriff, einige Geokodierung und Fuzzy-Adressenabgleich mit Lucene und Solr (die ich nie verwendet habe, aber ich habe ein paar sehr positive Präsentationen auf gesehen) zu testen. Ich werde dich wissen lassen, wenn ich etwas finde, das dir nützlich sein könnte. Wie groß sind die Datensätze, die Sie sich ansehen, und könnten Sie ein wenig mehr Informationen über die Art der Abfragen geben, die Sie möglicherweise ausführen? –
@ JohnBarça Das wäre großartig, lass es mich wissen, wenn Sie etwas interessantes herausfinden. Ich interessiere mich für 2 Arten von Abfragen (obwohl sehr ähnlich in der Natur): 1) erhalten eine Reihe von Ergebnissen, die in einer bestimmten Nähe in keiner bestimmten Reihenfolge (dh ein Filter durch Nähe), und 2) eine Reihe von Ergebnissen zurückgeben sortiert nach Nähe, am nächsten zuerst. – lms