< < Vorheriger BeitragNächster Beitrag > >

Beschaffung des Orts- und Flurnamenrepertoires von La Réunion

Version:

Zitation: Stephan Lücke (2020): Beschaffung des Orts- und Flurnamenrepertoires von La Réunion. Version 1 (27.01.2020, 14:23). Lehre in den Digital Humanities. , url: https://www.dh-lehre.gwi.uni-muenchen.de/?p=157476&v=1



Eine umfassende toponomastische Datenquelle bietet das Projekt OpenStreetMap (OSM)

OSM stellt seine Daten im XML-Format zur Verfügung

Die Exportfunktion von OSM (https://www.openstreetmap.org/export#map=12/-20.9887/55.5630) ist umständlich zu bedienen. Z.B. besteht eine Beschränkung auf maximal 50000 "Nodes". Dieses Maximum erzwingt die Auswahl von sehr kleinen Rechtecken, so dass selbst im Fall von La Réunion sehr viele Teilexporte durchgeführt werden müssten. Dadurch ergäbe sich das zusätzliche Problem von Überlappungen und Duplizierungen.

Es gibt eine Reihe von Dienstleistern, die gleichsam als Mittler komfortable Downloads von OSM-Daten anbieten. Einer davon ist die Geofabrik GmbH in Karlsruhe.

Der folgende Link der Geofabrik führt zur Download-Page für La Réunion:

https://download.geofabrik.de/europe/france/reunion.html

Die Daten liegen dort im sog. pbf-Format sowie in XML zum Download bereit. Das pbf-Format ("Protocolbuffer Binary Format") ist ein binäres Format, das mit geeigneten Tools in XML verwandelt werden kann.

Für die Umwandlung eignet sich z.B. das Kommandozeilen-Programm osmconvert (https://wiki.openstreetmap.org/wiki/Osmconvert; verfügbar für Linux und Windows).

Das pbf-File mit den Daten von La Réunion wird nach der Installation von osmconvert mit folgendem Kommando in eine OSM-XML-Datei verwandelt:

osmconvert reunion-latest.osm.pbf > reunion.osm

osmconvert kann anschließend auch für die Umstruktierung der XML-Datei in das MySQL-gerechte csv-Format verwendet werden:

osmconvert reunion.osm --all-to-nodes --csv="@id @lon @lat name natural waterway wikidata highway place tourism building" --csv-headline > reunion.csv

Das dabei erzeugte csv-File kann anschließend in eine MySQL-Datenbank importiert werden. Diese Prozedur gestaltet sich vor allem aufgrund der sehr großen Datenmenge (Das csv-File enthält fast 3,8 Millionen Zeilen und belegt über 160 MB) als aufwendig.

Nicht alle der im csv-File eingetragenen Nodes enthalten Namenmaterial. Die Entfernung der Zeilen/Datensätze ohne Namenmaterial kann theoretisch vor oder nach dem Import in die Datenbank erfolgen. Problematisch ist, dass die einzelnen nodes auch aufeinander bezogen sein können, so dass Vorsicht angebracht ist.

Die Daten von La Réunion sind in die Datenbank lab_reunion im Datenbankcluster des dhvlab importiert:

https://dhvlab.gwi.uni-muenchen.de/sql/index.php?db=lab_reunion&table=&server=1

Create-Syntax für die Tabelle import:

CREATE TABLE `import` (
 `id` bigint(20) NOT NULL DEFAULT '0',  -- wichtig: unbedingt bigint()! int(20) hat Fehler beim Import produziert
 `lon` decimal(9,7) DEFAULT NULL,
 `lat` decimal(10,7) DEFAULT NULL,
 `name` varchar(75) DEFAULT NULL,
 `nature` varchar(50) DEFAULT NULL COMMENT 'eigtl. "natural"; von MySQL aber reserviert',
 `waterway` varchar(50) DEFAULT NULL,
 `wikidata` varchar(50) DEFAULT NULL,
 `highway` varchar(50) DEFAULT NULL,
 `place` varchar(50) DEFAULT NULL,
 `tourism` varchar(50) DEFAULT NULL,
 `building` varchar(50) DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
;

Der Import muss über die Konsole (z.B. des DHVLabs) mit dem Programm mysqlimport erfolgen (die Datei ist für den Import über PMA zu groß):

mysqlimport --defaults-file=~/.my.cnf --fields-terminated-by="\t" -h dhvlab.gwi.uni-muenchen.de -P 3306 -s -L --fields-enclosed-by="" --ignore-lines=1 lab_reunion import.csv

 

 

< < Vorheriger BeitragNächster Beitrag > >

Schreibe einen Kommentar