DE:Component overview

From OpenStreetMap Wiki
Jump to: navigation, search
Verfügbare Sprachen — Component overview
Afrikaans Alemannisch aragonés asturianu azərbaycanca Bahasa Indonesia Bahasa Melayu Bân-lâm-gú Basa Jawa Baso Minangkabau bosanski brezhoneg català čeština dansk Deutsch eesti English español Esperanto estremeñu euskara français Frysk Gaeilge Gàidhlig galego Hausa hrvatski Igbo interlingua Interlingue isiXhosa isiZulu íslenska italiano Kiswahili Kreyòl ayisyen kréyòl gwadloupéyen kurdî latviešu Lëtzebuergesch lietuvių magyar Malagasy Malti Nederlands Nedersaksies norsk norsk nynorsk occitan Oromoo oʻzbekcha/ўзбекча Plattdüütsch polski português português do Brasil română shqip slovenčina slovenščina Soomaaliga suomi svenska Tiếng Việt Türkçe Vahcuengh vèneto Wolof Yorùbá Zazaki српски / srpski беларуская български қазақша македонски монгол русский тоҷикӣ українська Ελληνικά Հայերեն ქართული नेपाली मराठी हिन्दी অসমীয়া বাংলা ਪੰਜਾਬੀ ગુજરાતી ଓଡ଼ିଆ தமிழ் తెలుగు ಕನ್ನಡ മലയാളം සිංහල ไทย မြန်မာဘာသာ ລາວ ភាសាខ្មែរ ⵜⴰⵎⴰⵣⵉⵖⵜ አማርኛ 한국어 日本語 中文(简体)‎ 吴语 粵語 中文(繁體)‎ ייִדיש עברית اردو العربية پښتو سنڌي فارسی ދިވެހިބަސް

Diese Seite soll Entwicklern einen technischen Überblick über das logische System und die Komponenten von OpenStreetMap geben.

Diagramm

OSM Components.svg

Datenbank

Die Datenbank enthält alle Kartendaten in Form von Knoten (Punkten), Wegen und Relationen. Siehe das Datenbank-Schema(en).

Protokoll

Das OSM-Protokoll (auch bekannt als "die API") ist ein REST Web-Service-Interface für Lese- und Schreibzugriffe auf die Datenbank. Andere OSM-Komponenten greifen über dieses Interface auf die Datenbank zu. Es ist auch für externe Zugriffe aus dem Internet verfügbar.

Die Implementierung des Protokolls ist Teil der selben Ruby on Rails-Anwendung, die auch das Frontend und die Webseite implementiert.

OSM Front-End

Die Front-End-Webseite ist in Ruby on Rails (vgl. Rails Port(en)) geschrieben. Es bietet Nutzern eine Login-Möglichkeit unter Verwendung einer direkten Verbindung zur Benutzer-Datenbank (nicht im obigen Diagramm dargestellt). Der wichtigste Zweck der Webseite jedoch ist die Anzeige der Slippy Map (scrollbare Karte - Reiter Ansicht), sowie für authentifizierte Nutzer den Online-Editor iD (Reiter Bearbeiten).

Slippy Map

Hauptartikel: Slippy Map

Dies ist die Komponente, die die Karten anzeigt! Es handelt sich um ein AJAX-Interface mit der Möglichkeit, zu zoomen und den Kartenausschnitt zu verschieben ("flottes" ["slippy"] Verschieben des Kartenausschnitts per Maus).

iD

iD ist der Editor, der standardmäßig mit Bearbeiten verknüpft ist. Auch hierfür hat die Rails-Anwendung einen View. iD ist in Javascript geschrieben. Es kann in andere Webseiten eingebunden werden, um eine konfigurierbare Bearbeitungsmöglichkeit zu geben. Der Vorgänger Potlatch 2 ist über das Drop-down-Menü erreichbar.

Kartenkacheln (en. "tiles") und Rendern der Kacheln

In einem fortlaufenden Prozess werden über die API Kartendaten empfangen und Kartengrafiken als Rastergrafiken, die man als Kacheln bezeichnet, gerendert. Viele neue Kacheln müssen gerendert werden, um eine volle (globale) Abdeckung zu erreichen, aber auch Aktualisierungen der zugrundeliegenden Kartendaten haben zur Folge, dass bereits vorhandene Kacheln neu gerendert werden müssen.

Mapnik

Mapnik ist ein Rendering-System, das die Darstellung für die Default-Ansicht (voreingestellte Ansicht) der Slippy Map liefert. Der Rendering-Prozess läuft auf dem Server 'tile' und Mapnik-Kachelgrafiken werden von dieser Maschine geliefert. Der Renderer erhält die Daten von einer Postgres-Datenbank(en). Diese Daten liegen dort in einem Mapnik-tauglichen Format vor. Dieses Format ist verschieden von dem der zentralen OpenStreetMap-Datenbank. Die Mapnik-Datenbank wird mit minütlichen Änderungen(en) aktualisiert, die mittels osm2pgsql verarbeitet werden.

Renderer

Wie bereits erwähnt, nutzen wir Rendering-Software namens Mapnik und Osmarender, um Rastergrafiken für die Kartenkacheln zu erstellen. Renderer können auch auf einer Ad-hoc-Basis genutzt werden, um Kartengrafiken aus unseren Daten zu generieren. Es gibt unbegrenzte Möglichkeiten, neue Wege zu entwickeln, um unsere Daten zu rendern.

Editoren

Neben dem Reiter Bearbeiten auf unserer Webseite (iD) gibt es andere Werkzeuge, sowohl Offline-Anwendungen als auch andere Webseiten, die es ermöglichen, die OSM-Daten über die API zu bearbeiten. Es gibt eine Übersicht über gängige Editoren.

Das Protokoll erlaubt die Authentifizierung mittels OAuth. Dies bedeutet, dass der Benutzer der Anwendung einzelne Berechtigungen gewährt, ohne jedoch sein Passwort nennen zu müssen. Editoren gibt es in Form von Onlineanwendungen, klassischen Computerprogrammen oder als App für unterwegs.