der eigen Kartenserver im Keller... Feedback erwünscht
Moin, <http://about.me/matthiasmarquardt> Ich hatte es ja schonmal anklingen lassen - seit dem Begin des Jahres bin ich dabei mich etwas intensiver mit Vektor-Karten (und deren Generierung) zu beschäftigen. Heute bin ich soweit, dass ich den aktuellen Stand mit Euch teilen möchte... https://maps.emac.de Das ganze läuft bei mir zu Hause im Keller auf einem einfachen Linux-System und geht über einen gewöhnlichen DSL-Leitung - erwartet also kein PERFORMANCE-Wunder... Alle Daten & Requests kommen/gehen aber ausschließlich auf den einen Server - es werden keine weiteren Datenquellen angesprochen - keine Cookies oder sonst irgendwas wird getrackt (das habe ich alles abgeklemmt)... Neben der Suche links oben gibt es auf der rechten Seite noch den "Layer" Button mit dem Ihr ein Paar Dinge in der Karte ein/ausblenden könnt. Die Karte selbst, lässt sich beliebig drehen und kippen... Datenquelle für die Karte ist ausschließlich OSM (für die Suche gibt es über Pelias ein paar mehr Quellen die man aber auch abwählen kann). Das ganze ist mein ganz eigenes Hobby Projekt - ganz ohne irgendeinen kommerziellen Hintergedanken. Ich würde mich sehr über positive wie negative Kritik bzw. Anregungen zur Verbesserung freuen - schließlich geht's ja in die WinterSeason und da gibt's viel Zeit die ich noch investieren kann. Ja die Seite selbst ist auf English (die Kartendaten sind aber internationalisiert - und über die Browser Sprache kann man auch auf Japanisch oder Hebräisch wechseln) Grüße & bleibt gesund Matthias
On Thu, Dec 02, 2021 at 11:26:07AM +0100, Matthias Marquardt wrote:
Moin, <http://about.me/matthiasmarquardt>
Ich hatte es ja schonmal anklingen lassen - seit dem Begin des Jahres bin ich dabei mich etwas intensiver mit Vektor-Karten (und deren Generierung) zu beschäftigen.
Heute bin ich soweit, dass ich den aktuellen Stand mit Euch teilen möchte...
Sau cool. Wie hast du die Vector Daten aufbereitet? Ist das am ende auch mbtiles also google protobufs in einer sqlite? Hast du da die ganze welt? Wieviele Daten sind das?
Das ganze läuft bei mir zu Hause im Keller auf einem einfachen Linux-System und geht über einen gewöhnlichen DSL-Leitung - erwartet also kein PERFORMANCE-Wunder...
Alle Daten & Requests kommen/gehen aber ausschließlich auf den einen Server - es werden keine weiteren Datenquellen angesprochen - keine Cookies oder sonst irgendwas wird getrackt (das habe ich alles abgeklemmt)...
Neben der Suche links oben gibt es auf der rechten Seite noch den "Layer" Button mit dem Ihr ein Paar Dinge in der Karte ein/ausblenden könnt. Die Karte selbst, lässt sich beliebig drehen und kippen... Datenquelle für die Karte ist ausschließlich OSM (für die Suche gibt es über Pelias ein paar mehr Quellen die man aber auch abwählen kann).
Pelias hab ich bisher nur mal kurz die Doku angesehen, aber die ganzen Mapzen Projekte waren immer sehr seltsam was das setup anging. Deshalb hab ich davon die finger gelassen. Valhalla hätte mich als weitere quelle für QA im Routing auch sehr interessiert.
Ich würde mich sehr über positive wie negative Kritik bzw. Anregungen zur Verbesserung freuen - schließlich geht's ja in die WinterSeason und da gibt's viel Zeit die ich noch investieren kann. Ja die Seite selbst ist auf English (die Kartendaten sind aber internationalisiert - und über die Browser Sprache kann man auch auf Japanisch oder Hebräisch wechseln)
Flo -- Florian Lohoff f@zz.de Any sufficiently advanced technology is indistinguishable from magic.
Heute bin ich soweit, dass ich den aktuellen Stand mit Euch teilen möchte...
Sau cool. Wie hast du die Vector Daten aufbereitet? Ist das am ende auch mbtiles also google protobufs in einer sqlite?
nein und ja - am Ende liefert das Backend pbf's aus... Du kannst auch direkt auf den TileServer gehen... https://tiles.emac.de/ Die Daten befinden sich in zwei postgres - erzeugt sind die Daten über ein angepasstes OpenMapTiles Projekt (https://github.com/openmaptiles) - die wesentliche Anpassung besteht darin, das OMT versucht komplett fertige MBTiles zu erzeugen und die auf der Platte abzulegen - das ist für (keinere) Regionen machbar - aber nicht für die komplette Welt (zumindest nicht mit meinen Ressourcen)... Ich habe den VectorTileServer Tegola ( https://github.com/go-spatial/tegola) so angepasst (SQL-queries), dass er mit die Daten eben aus der OpenMapTiles DB zieht (und in unterschiedliche Layer packt) - sodass die Daten dann wieder mit dem mapbox tile server kompatible sind (und sich die Daten mit den gängigen Tools weiter verarbeiten lassen... in meinem einfachen Beispiel einfach ein MapboxGL seite... Das Theme habe ich mit Fresco erstellt (auf Basis von OSMLiberty https://github.com/maputnik/osm-liberty) Das ganze ist also eine Kombination - und am Ende könnte ich jetzt so etwas starten wie Maptiler... WILL ich aber nicht ;-) - Ich bau' das ganze jetzt noch in meine GPSLogger App ein... und dann benötige ich dort keinen externen Kartendienst mehr... Reicht Dir das Flo? (ich kann natürlich noch Stundenlang von Technik & Software erzählen)... Hast du da die ganze welt? Ja "natürlich" - nur mit der ganzen Welt ergibt dieses Projekt für mich Sinn...
Wieviele Daten sind das?
Die Contour/Höhendaten sind in einer postgres - die in Summe 2.6TB - die restlichen Vektor Daten in eine zweiten (auf einer SSD) - mit einer Größe von ~300GB - und dann kommen da noch die Hillshade PNG's (auch alles selbst erzeugt) dazu aber das ist ja eh nur static content auf dem Webserver... Also die sich tatsächlich "bewegenden" Daten sind die 300GB OSM-MBTiles-Source-Daten + was die Pelias ElasticSerach Engine noch so frisst... muss ich gerade mal gucken... (passte aber auch noch mit auf die 1TB SSD) - 210GB sind das... also 300GB + 210GB + 2652GB + ebbes
Neben der Suche links oben gibt es auf der rechten Seite noch den "Layer"
Button mit dem Ihr ein Paar Dinge in der Karte ein/ausblenden könnt. Die Karte selbst, lässt sich beliebig drehen und kippen... Datenquelle für die Karte ist ausschließlich OSM (für die Suche gibt es über Pelias ein paar mehr Quellen die man aber auch abwählen kann). Pelias hab ich bisher nur mal kurz die Doku angesehen, aber die ganzen Mapzen Projekte waren immer sehr seltsam was das setup anging. Deshalb hab ich davon die finger gelassen. Valhalla hätte mich als weitere quelle für QA im Routing auch sehr interessiert.
Das mit dem setup & config war jetzt auch nicht super easy - aber wenn man die DockerContainer einmal im Griff hat, geht es eigentlich ganz gut - im nächste Schritt wollte ich hier dann noch ein Graphhopper Routing Servrice an den Start bekommen - dann aber gleich mit angepasstem Farrad-Routing (für meine eigenen Touren)... Aber davor steht jetzt erstmal ein Android taugliches Theme für diese neue Kartenquelle umzusetzen... An dem Webteil habe ich auch über 6 Monate rumgeschraubt bis es das heutige Stadium erreicht hat... Immer wieder stellt man fest, dass einem dann doch noch ein oder zwei OSM-Attribute in der postgres db & in den vector tiles fehlen und dann muss man einmal wieder die komplette Welt durchnudeln lassen (~ 5-7 Tage Datenaufbereitung) um dann wieder weiter machen zu können (als letztes sind jetzt die Wendehämmer dazu gekommen)... Man muss halt alles drei aufeinander abstimmen - Extraktion Prozess (OSM->PG), Tile/Layer Generierung (PG->PBF) und denn eben die Anzeige über das Theme (inclusive so ein pass wie mal fix für die POI's ein Iconset zu erstellen/erweitern)... Grüße Matthias <http://about.me/matthiasmarquardt>
participants (2)
-
Florian Lohoff -
Matthias Marquardt