« Return to Thread: Fragen zu opengeodb (PLZ-Koordinaten, Performance, andere RDBMS)

Re: Fragen zu opengeodb (PLZ-Koordinaten, Performance, andere RDBMS)

by Andreas Korthaus :: Rate this Message:

Reply to Author | View in Thread

    > Denn wenn ich da eine PLZ angebe und die Entfernung zu
    > Städten in der Umgebung errechnen, ändern sich die Werte bei
    > benachbarten PLZs in einer Stadt.

    Beispiel?

z.B. Aachen: PLZ 52062 und 52078
Beide haben loc_id: 13352

Aber bei 52062 ist das erste Ergebnis (Aachen) 0,3 km entfernt, bei 52078 ist es ebenfalls Aachen, aber > 1km entfernt. Entsprechend haben auch die folgenden Städte andere Distanzen.

Allerdings weiß ich nicht ob das vorher anders war, das hatte ich nicht getestet. Da aber deutlich mehr Koordinaten-Daten in der neuen Version enthalten sind, war ich davon ausgegangen, dass sich hier was geändert hat.

Was mich daran aber wundert ist die Tatsache, dass 2 PLZs, die die gleiche loc_id haben, anscheinend andere Koordinaten haben. Ich hatte das eigentlich so verstanden, dass in der Koordinaten-Tabelle die loc_id referenziert ist. Aber irgendwie muss es ja noch einen zweiten Schlüssel geben, sonst müssten die Koordinaten gleich sein. Was wäre dieser Schlüssel?

Bei Berlin gab es keine Änderung da haben die PLZs die ich getestet hatte alle dieselben Koordinaten (ausgerechnet bei Berlin ;-).


    > Ist irgendwo erklärt, was die folgende Dateien auf dem Server
    > enthalten? DE.sql DE.tab DE9.tab PLZ.tab

    Nein, da muss jemand mal ein README schreiben.

Vermutlich habt Ihr das schon häufiger erklärt, könnt Ich nicht einfach 2-3 Postings aus dieser Liste  in die README eintragen oder von irgendwo verlinken, oder einfach  einen Abschnitt wie den Folgenden in in die README eintragen? Alles ist besser als gar keine Infos. Muss ja keine perfekte Umschreibung sein...

    DE.tab - die Basisdaten für Deutschland
    DE.sql - die Basisdaten konvertiert nach SQL
    DE9.tab - erste Anfänge eines Straßenverzeichnisses für opengeodb,
    exemplarisch Baden-Württemberg. Inzwischen liegen auch Niedersachsen und
    Bayern vor. Diese Daten unterliegen der OSM-Lizenzierung (CC-BY-SA)!


    > Sind z.B. in PLZ.tab alle PLZs inkl. Angaben zu Koordianten und Ort
    > drin, die auch im kompletten Dump stehen?

    Nein, PLZ.tab enthält die Daten von Postleitzahlgebieten, typ 100800000

OK, geodb_type_names  sagt mir, dass es 500300000 gibt (Postleitzahl) und 100800000 (Postleitzahlgebiet). Was genau ist der Unterschied, vor allem für eine Umkreissuche in der Praxis?

Sind beide Listen vollständig?


    > Kann man auf dem Server vielleicht auch die Skripte speichern, mit
    > denen die Listen aus der Datenbank extrahiert wurden? Wäre sicher
    > hilfreich als Vorlage oder für den Fall, dass die Dateien irgendwann
    > nicht mehr gepflegt werden...  (Mich würde z.B. interessieren, wie
    > man nicht-Deutschland Einträge komplett rausbekommt, prinzipiell kann
    > ich mir da vorstellen wie das geht, ist aber alles so verstreut
    > gespeichert...)

    Die kannst du am besten im wiki selbst veröffentlichen:
    http://opengeodb.giswiki.org/wiki/OpenGeoDB

Ich hab die Skripte ja nicht. Ich dachte mir nur, dass jemand irgendwelche kleinen Skripte für solche Zwecke geschrieben hat, z.B. um die auf dem Server vorhandenen Dateien zu generieren, dann könnte derjenige die ja mit hochladen. Oder mit in die README. Wenn ich mal so ein Skript schreiben sollte, kommt das ins Wiki.

    > Jedenfalls wäre die Abfrage der PLZ.tab für mich deutlich effizienter
    > als die der Datenbank. Zur Zeit brauche ich für eine Umkreissuche auf
    > Basis der GeoClass mit aktuellem Dump ca. 10 Sekunden, Das geht
    > natürlich nicht auf einer Homepage...

    Ich selbst verwende direkt diese PLZ.tab für
    <http://www.fa-technik.adfc.de/Codierung/anbieter>

Da hast Du zum Teil dasselbe Problem. Vergleich mal die Ausgabe für 10777 und 13355. Beide haben nach Berlin Mitte 0 km, aber die Angaben für alle anderen folgenden Orte unterscheiden sich. Beim Standard-Dump sind die Listen komplett gleich.

   Bei mir läuft das anders - ich berechne von der Mittelpunktskoordinate
   erst einmal die gewünschten Abweichung in lat/lon (also z.B. 45±1 / 9±1)
   und berechne die Entfernung dann nur für jene Einträge, die sowohl im
   Bereich lat=44..46 als auch lon=8..10 erfüllen. Alle anderen sind schon
   zuvor ausgeschieden.

Ja, genau das hatte ich auch gemeint.

Wie ist das in unseren Breiten, wieviel km hat hier 1° long. bzw. lat.?
Und wie stark ist die maximale Abweichung von diesem Wert für Orte am Rand?
Hast Du ggfs. nen guten Link wo man das nachlesen / ausrechnen kann?

Noch eine andere Frage, wieso wird bei so vielen Programmen der Radius des Äquators auf eine Ganzzahl gerundet? Performance oder ist das irgendein Standard? Wie machst Du das?

Jedenfalls schonmal vielen Dank für die Hilfe!


Grüße
Andreas
_______________________________________________________________________
Jetzt neu! Schützen Sie Ihren PC mit McAfee und WEB.DE. 30 Tage
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=022220

--
Mailingliste OpenGeoDB
Listenadresse: opengeodb@...
Informationen: http://opengeodb.de
Mit freundlicher Unterstütztung von php::bar (http://phpbar.de)

 « Return to Thread: Fragen zu opengeodb (PLZ-Koordinaten, Performance, andere RDBMS)