Sven Rautenberg: JOIN-Query sehr langsam

Beitrag lesen

Moin!

Keinem Berater sind Städte zugeordnet :)
Ich habe ein paar Berater, bei denen eine PLZ hinterlegt ist und anhand der PLZ schaue ich nach den zugehörigen Längen-und-Breiten-Koordinaten (diese stehen in der Tabelle "staedte").

Das - ist schlecht!

Wann ändert sich der geographische Ort einer Postleitzahl? Nur bei heftigen Erdbeben (beim Tsunami im indischen Ozean wurden Inseln um bis zu 30 Meter verschoben), ansonsten ist diese Angabe als konstant anzunehmen.

Was spricht also dagegen, direkt beim Eintragen der PLZ bei einem Berater direkt auch die Geo-Koordinaten aus deiner PLZ-Tabelle zu ermitteln und als Beraterdaten direkt mit abzuspeichern? Das Büro eines Beraters kann sich nur an einem Ort befinden, wenn du nur eine Adresse speicherst.

Damit beschleunigst du den Suchvorgang dann phänomenal, denn wenn du eine Umkreissuche realisierst, mußt du schließlich noch den Standort des Suchenden mit allen Standorten der existierenden Berater vergleichen, deren Entfernung ermitteln und nach Größe sortieren.

Gewiß ist diese Vorgehensweise nicht optimal hinsichtlich Redundanz - aber Redundanz ist erforderlich, wenn man mehr Geschwindigkeit haben will. Und reale Probleme lassen sich eben nicht immer in einer totnormalisierten Datenbank performant regeln.

- Sven Rautenberg

--
"Love your nation - respect the others."