Diese Frage ähnelt einer früheren Frage zum Anzeigen von Vektordaten in einer Webkarte. Ich möchte eine grundlegende Weboberfläche haben, die OpenLayers verwendet und Rasterdaten anzeigen kann, die sich derzeit in PostGIS befinden, und zwar mithilfe einer Grundkarte wie Google. Ich habe PostGIS2.0 mit der Rasterbibliothek installiert und sehe aus der Dokumentation, dass es mehrere Optionen zum Ausgeben von Daten gibt, wie z. B. JPEG, GeoTIFF und PNG. Ist es ein empfohlenes Format?
Zum Anzeigen von Vektordaten verwende ich derzeit Javascript, um Koordinaten vom Browser des Benutzers an meinen Server zu senden und dann eine Abfrage mit PHP / SQL unter PostGIS durchzuführen. Die Ergebnisse werden dann als GeoJSON zurückgegeben, das der Grundkarte überlagert werden kann. Ich habe mich gefragt, ob ein ähnlicher Ansatz mit Rastern angewendet werden könnte, aber ich weiß nicht, welches Rasterformat am besten ist oder ob es andere Einschränkungen gibt, die ich berücksichtigen sollte.
Ich habe viele Verweise auf GeoServer gesehen, bin mir aber nicht sicher, ob dies für dieses Projekt erforderlich ist (ich bin mir nicht ganz sicher, wann GeoServer verwendet werden soll oder nicht).
Mapserver unterstützt Postgis-Raster und Anweisungen für eine Grundeinstellung finden Sie hier (Punkt 9.9).
In Ihrem Fall würden Sie Mapserver so einrichten, dass er als WMS-Server funktioniert, sodass die Postgis-Raster als normale WMS-Ebenen zurückgegeben werden. Es ist dann fast trivial, die Ebenen mithilfe eines WMS- Ebenenobjekts zu Ihrer OpenLayers-Karte hinzuzufügen .
Diese Art von Lösung ist wahrscheinlich die beste Option, da alles auf OpenSource-Software basiert, ein bewährter Stack ist und keine umfangreiche Middleware erfordert. Alles, was Mapserver benötigt, ist ein Webserver (der Apache, den Sie wahrscheinlich bereits für PHP verwenden, ist in Ordnung), der CGI-Skripte ausführen kann. Wenn die Leistung kein kritisches Problem darstellt, können Sie die Verwendung eines (Kachel-) Caches vermeiden und Mapserver die Layer jedes Mal im laufenden Betrieb rendern lassen.
Wenn Sie die Kacheln zwischenspeichern möchten, um die Serverlast zu minimieren und die Antwortzeiten zu verbessern, sollten Sie Mapcache oder Tilecache verwenden . Mapcache ist ein jüngeres Schwesterprojekt von Mapserver, sollte jedoch alle anderen Caches übertreffen, da es als Apache-Modul ausgeführt wird.
Für Ubuntu-Benutzer ist es am einfachsten, die Abhängigkeiten von Mapserver zu installieren, indem Sie Ihrem System die Ubuntu GIS PPA hinzufügen .
quelle
Es hängt alles ab. Bildgröße, Caching, verfügbare Bibliotheken (einige proprietäre JP2K-Treiber zum Beispiel).
Hier ist ein Link zu einem fantastischen PDF , Geoserver über Steroide. Dies führt Sie durch die verschiedenen Formate, ihre Vor- und Nachteile und einige grundlegende Einstellungen.
quelle