goblor grübelt

Ein unabhängiges Denker-Blog aus Karlsruhe
Preis: 0 €
Thursday 11.03.2010
   

Wetter

Karlsruhe, BW

Nebel
-4°C
Nebel

VORSCHAU

Do. Fr. Sa. So.
Nebel Nebel Nebel Nebel
Werbung

Schon vor über einem Jahr habe ich mich etwas ausführlicher mit dem Projekt OpenStreetMap beschäftigt. Damals ging es um das Einlesen der Daten in eine eigene Datenbank und es gab schonmal ein HowTo, dessen Datenbankschema sich aber recht schnell als unnötig groß herausgestellt hat. Wirklich ordentlich beschrieben habe ich die dann folgende Lösung bis dato allerdings nicht, deshalb startet heute eine kleine Artikel-Serie zum Thema.

Datenbankschema für OpenStreetMap-Daten
Datenbankschema für OpenStreetMap-Daten

Im ersten Teil soll es darum gehen die Openstreetmap-Daten in eine MySQL-Datenbank einzulesen. Später wird eine Möglichkeit gezeigt, aus den Daten einen gerichteten Graphen z.B. für eine Wegsuche zu erstellen, danach wird eine Wegsuche realisiert.

Aber zunächst müssen die Daten eingelesen werden. Benötigt wird:

  • Eine funktionierende Installation eines MySQL-Servers (> Version 5.0) mit ordentlich Speicherplatz (Ich rede hier mindestens von Gigabyte-Zahlen für Baden-Württemberg, ganz Deutschland dürfte im Bereich um die 10GB liegen) und Administrations-Umgebung
  • Eine funktionierende Java-Installation. Das von mir für den Import geschriebene Skript gibt eine SQL-Befehlskette auf der Standardausgabe aus, mit der Bash (Linux-Kommandozeile) lässt sich das direkt in eine MySQL-Verbindung schicken.

Als erstes wollen wir einen Blick auf die Openstreetmap-Daten werfen. Sie liegen im XML-Format vor und können auch auszugsweise z.B. bei Geofabrik heruntergeladen werden. Ich habe mir für das Projekt die Daten von Baden-Württemberg (baden-wuerttemberg.osm) heruntergeladen.

Wenn man die knapp 80MB große bz2-Datei entpackt hat, liegen ca.1 GB Daten auf der Festplatte. In die kann man mal reinschauen (aber bitte mit einem Tool, das Zeilenweise liest, z.B. “less”). Eine Analyse dieser Datei und ein Blick auf diese zwar veraltete, aber für diesen Zweck ausreichende Wikiseite führte mich zum Datenbankschema, wie in der Grafik.

Hier ist die zugehörige MySQL-Import-Datei.

Nachdem man eine Datenbank angelegt hat kann das oben gezeigte Schema erzeugt werden. Jetzt fehlt natürlich noch der Datenimport. Dafür entstand nach mehreren Versuchen ein Java-Programm, das aus einer *.osm-Datei einen entsprechenden Import herstellt.

Der Quellcode des Java-Programms lässt sich hier herunterladen. Seine Benutzung ist einfach. Das Programm erwartet einen Parameter mit dem Pfad/Dateinamen einer *.osm-Datei und erzeugt daraus einen MySQL-Input auf dem Std-Out. Nach dem Kompilieren von osm2sql sollte sich (zumindest auf der Linux-Bash) mit einem entsprechend angepassten Befehl der Art

java osm2sql baden-wuerttemberg.osm | mysql --host=localhost --database=osm --user=osm --password=abc

die Datenbank füllen lassen. Jetzt kann man normalerweise erst mal einen Tee kochen gehen. Ein wenig Zeit sollte man dem Datenbankserver schon gönnen.

Kommentare und Hinweise zum Thema sind hier nicht nur erlaubt, sondern ausdrücklich erwünscht.

4Kommentare…

Heute auf dem Heimweg von der Arbeit kamen wir (Fritsch und ich) auf dem Europaplatz am Stand der wohlbekannten “rechten Mitte” CDU vorbei. Wir haben es uns nicht nehmen lassen und mal einen der Wahlkämpfer befragt, warum wir denn die schwarzen wählen sollen.

Sein erstes Statement war, wegen der guten Wirtschaftspolitik der Union und der FDP (!). Sie seien für eine Senkung der Unternehmens-Steuern bzw. eine Änderung des Gesetzes zur Erbschaftssteuer, wegen kleiner Unternehmen. Die kommen bei der Übergabe an die Kinder öfters in die Bredouille, da ist tatsächlich eine Änderung fällig.

Natürlich kamen wir auf Sicherheitspolitik zu sprechen und den bösen bösen internationalen Terrorismus vor dem die CDU ja fürchterlich Angst haben muss. Der Typ wusste nicht mal, dass einer der mutmaßlichen Sauerland-Leute vom CIA war.

Weiter (und kommentieren)…

Die Piratenpartei hat die Aktion “Enter den Raab” gestartet, die mich nicht nur aus politischen Gründen interessiert. Es geht darum Druck auf Pro7 auszuüben, dass in die Stefan Raabs “TV-Total Bundestagswahl 2009″ am Vorabend zum Wahlsonntag auch ein Vertreter der Piratenpartei eingeladen wird.

Warum mich das auf nichtpolitischer Seite interessiert:

Weiter (und kommentieren)…

Wer Musik auf einer Website abspielen will, hat viele Möglichkeiten. Zum Beispiel:

  • Die Musik als Video auf YouTube stellen und mit dem dortigen Flash-Player einbinden
  • Einen von vielen Flash-Playern mit hübscher Oberfläche benutzen, die andere Menschen programmiert haben.
  • Ein Plugin benutzen (z.B. Windows-Media-Player, Totem, RealPlayer)

Das Problem stellt immer die Oberfläche dar. Sie kann nur in Grenzen frei gewählt werden, wenn man keine Möglichkeit hat, direkt in Flash mit ActionScript zu hantieren.

Nach langer Suche bin ich heute auf den SoundManager 2 gestoßen. Der scheint eine beinahe perfekte Lösung für diesen Wunsch zu bringen:

Weiter (und kommentieren)…

Bill Bryson - Eine kurze Geschichte von fast allem

Das im Goldmann-Verlag erschienene Buch als kurz zu bezeichnen ist sehr mutig, erzählt es doch die Geschichte der Wissenschaft in den letzten 300 Jahre. Man erfährt über viele Wissenschaftler, die es trotz bahnbrechender Entdeckungen nie zu Ruhm gebracht haben und über eher unbekannte Teile der Wissenschaft, die heute als Irrtümer betrachtet werden.

Weiter (und kommentieren)…

Hier sieht man die Abweichung des Signals vom Nullwert sehr schön
Hier sieht man die Abweichung des Signals vom Nullwert sehr schön

Lange habe ich gedacht, die Tatsache, dass meine Aufnahmen so schlecht sind, liegt an den nicht vom Soundkarten-Hersteller unterstützten Alsa-Treibern meines Ubuntu 9.04. In den letzten Tagen habe ich ein wenig herumexperimentiert und dabei festgestellt: Auf Windows Vista ist der Fehler exakt der gleiche. Ich weiß nichteinmal, wie man das genau beschreibt, auf jeden Fall ist das Signal nicht bei Null, wenn es keinen Ausschlag hat.

Weiter (1 Kommentar)…

Wenn ich schon so ein Veröffentlichungsmedium habe..

Seit einiger Zeit mache ich mit ein paar Leuten Musik im Raum Karlsruhe. Das hat sich inzwischen zu einer Band entwickelt und jetzt fehlt uns der Schlagzeuger.

Wenn wer einen Drummer auf Bandsuche kennt oder einen kennt, der einen Drummer auf Bandsuche kennt, soll der sich bitte melden. (newbie@nrtr.de) Wir machen unsere eigene Musik in der Rock/Pop-Ecke mit Blues und Jazz-Einflüssen.

Einen Proberaum bräuchten wir mit Schlagzeuger dann natürlich auch. Wird sonst etwas zu laut für die Nachbarn, aber ohne Drummer bleibt das erst mal  irrelevant.

Weiter (und kommentieren)…

Stoppt die Vorratsdatenspeicherung! Jetzt klicken & handeln!Willst du auch bei der Aktion teilnehmen? Hier findest du alle relevanten Infos und Materialien: