Zum Speichern der Daten sind die ersten beiden zu erwähnenden Alternativen PostGIS und SpatiaLite .
SpatiaLite ist eine SQLite-Datenbank mit räumlichen Funktionen, die dateibasiert, kompakt und schnell ist.
PostGIS bietet räumliche Funktionen für eine PostgreSQL-Datenbank. Das bedeutet, dass es sehr leistungsfähig ist und große Datenmengen und komplexe Abfragen effizient verarbeiten kann.
Bevor Sie auf den Desktop wechseln, sollten Sie sich darüber im Klaren sein, dass sehr viele Aufgaben direkt in der Datenbank sehr effizient erledigt werden können. Die meisten Aufgaben, die Sie in ArcMap normalerweise ausführen , während Sie darauf warten, dass verschiedene Dialogfelder angezeigt werden , werden Sie mit ein paar Zeilen SQL-Code um ein Vielfaches schneller ausführen. Das bedeutet, dass Sie das, was Sie getan haben, auch ganz einfach speichern und in einem anderen Datensatz erneut ausführen können, indem Sie einfach Ihren SQL-Code speichern. Viele der hier gestellten PostGIS-Fragen beziehen sich auf das Schreiben dieser Abfragen. Sie können sich also ein Bild davon machen, was Sie tun können, wenn Sie Fragen mit PostGIS-Tags durchsuchen.
Dann die Desktop-Seite . Es gibt viele Desktop-Lösungen. Ich denke, es ist Zeit zuzugeben, dass ESRI auf der Desktop-Seite gut ist. Wie bereits erwähnt, sind die meisten Aufgaben, die Sie in ArcMap ausführen , in der Datenbank besser erledigt, aber wenn es um die Aufgaben geht, für die Sie die Desktop-Lösung benötigen, ist ArcMap gut. Was ich benutze, ist QGIS . Wenn ich ein Budget hätte, würde ich die ESRI-Lizenzkosten verschieben, um die Fehlerbehebung in QGIS zu unterstützen. QGIS ist eine großartige Software, die mehr oder weniger alles kann, was ArcMap kann. Möglicherweise sind jedoch eine oder zwei ArcInfo-Lizenzen (in Geld) erforderlich, um das Problem zu beheben. Sie können sich auch Open Jump , GvSIG , uDIG und mehr ansehen .
Wenn es um Webservices geht, gibt es MapServer, GeoServer, TinyOWS und mehr.
GeoServer ist wahrscheinlich der einfachste Einstieg, da es eine recht intuitive Weboberfläche hat. GeoServer kann die meisten gewünschten Aufgaben ausführen. Es kann WMS WFS Tiled-Dienste usw. bereitstellen. Es ist alles in Java geschrieben.
MapServer ist in C geschrieben und ich denke, es ist fair zu sagen, dass es der König der WMS-Dienste ist. Zumindest hat es letztes Jahr das Shootout auf der FOSS4G-Konferenz gewonnen (ESRI wagte es nicht, daran teilzunehmen). Mapserver wird über eine "Map-Datei" konfiguriert und ich kenne keine grafische Oberfläche. Aber für ernsthafte WMS-Dienste ist es eine sehr interessante Alternative.
Für editierbare WFS-Dienste haben Sie GeoServer bereits erwähnt, aber auch TinyOWS . TinyOWS ist ein kleiner WFS-Server, der in C geschrieben wurde. In letzter Zeit wurde er stärker in Mapserver integriert, da Sie für beide dieselbe Map-Datei verwenden können.
Dann die Client-Seite im Web . Ich weiß nicht viel über alle Möglichkeiten dort, aber die meisten Lösungen sind auf die eine oder andere Weise auf OpenLayers aufgebaut, bei dem es sich um eine Javascript-Bibliothek handelt.
Ein Umzug aus der ESRI-Welt eröffnet Ihnen meiner Meinung nach eine weitere sehr wichtige Möglichkeit. Wenn Sie möchten, können Sie sich auch von der Windows-Plattform entfernen. Sie können alles auf jede Linux-Distribution schreiben.
Die oben erwähnte Software reduziert zusammen mit Linux den Hardwarebedarf erheblich.
Ein Beispiel für eine gut funktionierende FOSS-Software ist die Karte von Norgeskart , von der offiziellen Kartenbehörde in Norwegen.
Im Grunde verwenden sie PostGIS, um Mapserver zu bedienen. Zwischenspeichern von Kacheln in Geowebcache und Verwenden eines OpenLayer-basierten Clients. Es ist nicht auffällig wie eine Silverlight- Lösung, aber das ist auch möglich.
Sie haben zuvor ESRI-Software verwendet, mussten diese jedoch verlassen, wenn sich ihre Anforderungen in Bezug auf Kapazität und Geschwindigkeit erhöhten.