Beschreibungen
Für die Beschreibung (Schlüssel, englisch key) der einzelnen Objekte in OSM gibt es (außer eine Längenbeschränkung von 256 Zeichen) keine Einschränkung.
Die Schlüssel sollten in britischen Englisch (also colour anstatt color) und in Kleinbuchstaben gefasst sein.
Zählt man die Anzahl der unterschiedlichen Schlüssel, wächst deren Anzahl kontinuierlich.
Während in der Grafik vom Ende des ersten Quartals 2011 die Zahl weltweit unter noch 20.000
Schlüsseln lag, ist die Anzahl 70.000 acht Jahre später überschritten.
Noch keine Zeit hatte ich für die Untersuchung, warum die Kurve im November 2007 schlagartig anstieg,
um im Januar 2010 wieder schlagartig zu fallen. Ich persönlich vermute in beiden Fällen eine Umstellung
des Datenmodells als Ursache für diese Verhalten, habe aber noch keine direkte Bestätigung dafür erhalten.
Leider sind die zugrundeliegende Zahlen nicht mehr vorhanden, aber ich habe eine
regelmäßigen Update einer Vergleichsgrafik
für Deutschland und des gesamten Planeten aufgesetzt. Die Daten werden aus einer CSV
Datei gelesen und durch die Javascript Library d3 dargestellt. Damit können die Daten
regelmäßig erweitert werden, ohne dass eine neue Grafik erstellt und hochgeladen werden muss.
Die gleiche Untersuchung mache ich mit einem selbst geschriebenen PHP-Skript für den Deutschland Ausschnitt,
der von der Geofabrik im Downloadbereich angeboten wird.
Hier sehe ich mir besonders die Schlüssel an, die nur einmal in der Datei auftauchen. Dieses Merkmal ist
selbstverständlich erstmal kein Fehler, aber häufig ist ein Tipp- oder Flüchtigkeitsfehler die Ursache.
Eine tagesgenaue, weltweite Auswertung, welche Schlüssel exstieren findet man Taginfo.
Die Korrekturen ergeben dann einen (leider nur kurzfristigen) "Einbruch", in der sonst monoton steigenden Kurve der Anzahl von unterschiedlichen Schlüsseln ergeben.
Für die Auswertbarkeit der OSM-Datenbank ist es wichtig, dass das Verhältnis der Schlüssel, die nur einmal vorhanden sind, zu der Gesamtanzahl der unterschiedlichen Schlüssel nicht zu groß wird. Durch verschieden Maßnahmen kann dieses Verhältnis bei 1/3 Vergleichsgrafik gehalten werden.
Files
count_tag2.php
Das php-Script count_tag2.php im Archiv kann wegen seiner Laufzeit (immerhin wird
knapp 1 GB Daten gelesen) nicht im Browser laufen. Und um meine Pentium IV-CPU mit zwei Kernen im Unix-Server richtig zu
nutzen, wird bei Angabe des komprimierten Files ein Unterprozess zur Dekomprimierung gestartet und direkt vom Programm
gelesen, ohne daß die entkomprimierten Daten abgespeichert werden (spart Platz und Zeit). Durch den Aufruf
php count_tag2.php germany.osm.bz2 >info.txt
wird die Datei info.txt mit folgenden Inhalt erzeugt.
25.09.2010 15:49:28 germany.osm.bz2
25.09.2010 16:29:23
0 Changesets
48416459 Knoten
6861220 Wege
111015 Relationen
64947390 Keys (ohne Keys bei Changesets)
5886 unterschiedliche Keys
N 246420:= additional_directions
N 20833623:= name:xh
N 20833623:= openGeoDB:name:fi
.. gelöscht ..
R 1188569:= freqency
R 1188797:= osmc:symb
2093 Keys mit count=1
Bei der Relation 1.188.569 fehlt wohl ein u im Schlüssel frequency.
Hinweis
Es ist zu erwarten, daß Sie auf das Unterprozess-Feature unter dem Windows-Betriebssystem verzichtet werden müssen, wenn Sie nicht das Programm bzcat (Ausgabe des Inhaltes eines bz2-komprimierten Archivs) installiert und ohne Pfadangabe auf der Kommandooberfläche betreibbar haben. Entpacken Sie die Datei *.osm.bz2 zur Datei *.osm und geben Sie diesen Dateinamen hinter dem PHP-Script an.
Theoretisch könnte man die Routine auch für das direkte Lesen von bzip-Archiven umstellen, aber dies würde bei mir längere Laufzeiten bedeuten, dass dies dann alles auf nur eine CPU laufen würde.