goblor grübelt

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

Im 2. Teil des Projektes soll es darum gehen, einen gerichteten Graphen aus den in Teil 1 in die Datenbank eingelesenen OpenStreetMap-Daten zu erstellen, mit dem später z.B. eine Wegsuche realisiert werden kann.

Bild1: Beispiel-Darstellung von einigen Wegen nach OSM-Schema
Bild1: Beispiel-Darstellung von einigen Wegen nach OSM-Schema

In Bild1 ist  Beispielhaft ein Ausschnitt aus einer möglichen Karte aus den Rohdaten zu sehen, die allerdings für eine Wegsuche viele unnötige Knoten enthält und deren Datenstruktur für unsere Zwecke nicht sonderlich praktisch ist. Wir brauchen für die Wegsuche nur die Weglänge zwischen zwei verbundenen End- oder Kreuzungs-Knoten. Weiterlesen…

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. Weiterlesen…

Seit etwa einem Monat bastle ich an der neuen Internetseite des Vereins Ratzgiwatz e.V. Sie ist finde ich ganz hübsch geworden, das Wordpress funktioniert eigentlich auch ohne Mucken, aber es ist extrem langsam.

Seit einigen Tagen teste ich jetzt, an was das liegen könnte, dass der Aufbau einer einzigen Seite zwischen drei und fünf Sekunden dauert, denn die gleiche Seite läuft bei mir lokal um ein vielfaches schneller. Auch dieses Blog hier hat im Normallfall Ladezeiten von unter einer Sekunde. Weiterlesen…

Gestern habe ich die Deutschland-Daten auf dem Server importiert. Das hat exzellent und ohne Abbruch geklappt. Direkt aus dem osm2sql in die Datenbank gepiped. Auch wenn fritsch Befürchtungen wegen des Arbeitsspeichers hatte. Die Swap-Größe hat sich seit 2 Tagen nicht verändert.

Heute haben wir uns mal dem Zeit-Problem bei der Entfernungsberechnung zwischen zwei Städten gewidmet. Wir haben mit 10 bis 20 Sekunden pro Abfrage begonnen. Fritsch hat dann heute Mittag beschlossen, die Indizes auf ein anderes Format zu ändern. Weg von BTREE hin zu HASH. Auch wenn das laut MySQL 5.0-Referenz gar nicht geht, hat uns das etwa eine Vervierfachung der Geschwindigkeit gebracht auf etwa 4 Sekunden. Weiterlesen…

Werbung

Irgendwie hab ich ja das Gefühl mich zumindest ein bisschen schämen zu müssen. Vor zweieinhalb Jahren habe ich einmal gelernt, was Transaktionen bei Datenbanken sind. Wenn ich das Wissen parat gehabt hätte, wäre der Import schon gestern komplett fertig geworden.

Nach genau 2 Zeilen in der Import-Datei und damit auch 2 Zeilen im osm2sql ist der Import jetzt etwa um Faktor 40 schneller. Weiterlesen…

Heute war der MySQL-Server durchgehend am Schreiben von OpenStreetMap-Daten. Ein weiterer Bug wurde behoben – int statt float – und der Import neu gestartet. Das Schreiben dauert definitiv zu lange, jetzt kommt es darauf an, wie die Datenbank optimiert wird. 400 MB zu schreiben darf einfach nicht 6 Stunden dauern. Sonst dauern die 40 GB die da irgendwann mal in der Datenbank stehen sollen ja Wochen.

Das hätte ich mir allerdings mal früher überlegen sollen. MySQL hat da so ne nette Funktion, die heißt LOAD DATA INFILE und die sorgt jetzt dafür, dass ich mein bisheriges Parsing komplett überarbeiten muss. Weiterlesen…

Nachdem der letzte Versuch mit OpenStreetMap-Daten an ihrer schieren Menge gescheitert ist, kommen wir jetzt auf eine Alternativ-Idee zurück:

Alle Daten in eine Datenbank importieren und mit geschickten Joins nur die interessanten Daten ausgeben. Um den Import der Daten in die MySQL-Datenbank soll es jetzt gehen.

1. Schritt: Anlegen eines Datenbankbenutzers und einer Datenbank, die ihm gehört. Weiterlesen…

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