Я долгое время пользуюсь программным обеспечением ESRI, и теперь мне нужно использовать бесплатное программное обеспечение с открытым исходным кодом.
Я читал об OpenLayers, PostgreSQL, PostGIS, GeoServer и MapServer, но не могу найти хорошего обзора, в котором указано, что делает каждый продукт, зачем он нужен и как все они сочетаются друг с другом.
Например, http://www.osgeo.org/ и http://freegis.org/ оба перечисляют несколько продуктов, но не дают достаточно информации, чтобы я мог решить, какие из них актуальны.
В ArcGIS я бы использовал следующее:
- файловая база геоданных или база геоданных ArcSDE для хранения данных
- Рабочий стол ArcMap для редактирования данных и составления документа карты
- ArcGIS Server для создания веб-сервисов
- JavaScript API ArcGIS Server для создания карт конечных пользователей из веб-сервисов
Каковы эквивалентные продукты FOSS?
open-source-gis
Стивен Лид
источник
источник
Ответы:
Для хранения данных первые две альтернативы - PostGIS и SpatiaLite .
SpatiaLite - это база данных SQLite с пространственными возможностями, что означает, что она основана на файлах, компактна и быстра.
PostGIS - это пространственные возможности в базе данных PostgreSQL. Это означает, что он очень мощный и способен эффективно обрабатывать большие наборы данных и сложные запросы.
Прежде чем перейти к рабочему столу, вы должны знать, что очень много задач можно выполнять очень эффективно непосредственно в базе данных. Большинство вещей, которые вы обычно делаете в ArcMap, ожидая появления различных диалогов, вы будете делать во много раз быстрее, используя несколько строк кода SQL. Это означает, что вы также можете очень просто сохранить то, что вы сделали, и снова сделать это в другом наборе данных, просто сохранив свой код SQL. Многие из вопросов PostGIS здесь касаются того, как написать эти запросы, поэтому вы можете получить представление о том, что можно сделать, просматривая вопросы с тегами PostGIS.
Тогда настольная сторона . Существует множество настольных решений. Я думаю, что пришло время признать, что на настольном ПК ESRI хорош. Как было сказано ранее, большинство задач, которые вы выполняете в ArcMap , лучше выполнять глубже в базе данных, но когда речь идет о задачах, для которых вам необходимо решение для настольных ПК, ArcMap хорош. Я использую QGIS , и если бы у меня был бюджет, я бы переместил стоимость лицензии ESRI для поддержки исправления ошибок в QGIS. QGIS - отличное программное обеспечение, которое может делать больше или меньше всего, что может ArcMap. Но, возможно, одна или две лицензии ArcInfo (в денежном выражении) необходимы для его полировки. Вы также можете посмотреть на Open Перейти , GvSIG , uDIG и многое другое.
Когда дело доходит до веб-сервисов, у вас есть MapServer, GeoServer, TinyOWS и многое другое.
GeoServer , пожалуй, легче всего начать, поскольку он имеет довольно интуитивно понятный веб-интерфейс. GeoServer может делать большинство вещей, которые вы хотите. Может обслуживать плиточные сервисы WMS WFS и так далее. Это все написано на Java.
MapServer написан на C, и я думаю, будет справедливо сказать, что он является королем WMS-сервисов. По крайней мере, он выиграл прошлогоднюю перестрелку на конференции FOSS4G (ESRI не смел участвовать). Mapserver настроен через «файл карты», и я не знаю ни одного графического интерфейса. Но для серьезного wms-обслуживания это очень интересная альтернатива.
Для редактируемых wfs-сервисов у вас уже упоминался GeoServer, а также TinyOWS . TinyOWS - это небольшой wfs-сервер, написанный на C. В последнее время он стал более интегрированным в Mapserver, поскольку вы можете использовать один и тот же файл карты для обоих.
Тогда клиентская сторона в сети . Я не очень хорошо знаю обо всех возможностях, но большинство решений так или иначе построены на OpenLayers, который является библиотекой Javascript.
Я думаю, что выход из мира ESRI открывает еще одну очень важную возможность для вас. Если вы хотите, вы также можете отойти от платформы Windows. Вы можете поставить все на любой Linux-дистрибутив.
Упомянутое выше программное обеспечение вместе с Linux значительно уменьшит потребность в оборудовании.
Примером хорошо работающего программного обеспечения FOSS является карта Норгескарта от официального авторитета карты Норвегии.
Внизу они используют PostGIS, обслуживающий Mapserver. Кэширование плиток в Geowebcache и использование клиента на основе OpenLayer сверху. Это не кричащее решение Silverlight, но это тоже возможно.
Они использовали программное обеспечение ESRI раньше, но должны были оставить это, когда их потребности увеличились с точки зрения емкости и скорости.
источник
Никлас уже указал на самые популярные пакеты с открытым исходным кодом. Если вы заинтересованы в более тесной взаимосвязи ГИС для настольных компьютеров и серверов, возможно, вы захотите поближе познакомиться с QGIS.
Аналогично настройке, описанной вами для ArcGIS, есть такая настройка для QGIS:
источник
Говоря с точки зрения того, что я использую изо дня в день (хотя это окрашено моим участием в большинстве проектов):
PostGIS, SQLite и Shapefiles, от наилучшей базы данных до наиболее переносимого формата.
QGIS для пространственных операций, TileMill для компиляции документа карты (при условии, что вы имеете в виду документ карты в виде стилей, комбинации источников данных и т. Д.)
TileStream для обслуживания созданных карт из TileMill или TileStache для рендеринга в реальном времени. Однако многие, многие группы идут по пути создания карт, а не обслуживания в реальном времени, учитывая опыт работы серверов в оперативном и быстром режиме.
Брошюра, если вы хотите избежать дополнительной разработки. TurfJS для анализа задач в браузере.
источник
Стек может быть установлен с сайта postgresql с помощью установщика стека.
Простейшим решением является установка стека LAPP с Postgresql, содержащим базу данных Post GIS и, возможно, сервер Tomcat, который вызывает Apache, для последней части вам потребуется доменное имя или поддержка вашего провайдера для передачи данных в Интернет с вашего сервера.
Установите QGIS для приятного графического интерфейса с достойной функциональностью приложения и подключите его к вашему Post GIS контейнеру. Хорошо работает без Apache и Tomcat для интранета.
Вам нужно будет разработать приложение с использованием веб-корня установки apche для обслуживания через Интернет, если только вы не работаете в облаке.
Разработка в браузере в качестве клиента, который может быть вызван в браузере, требует более интенсивного развития и требует чего-то вроде Open Layers или Mapfish. Это наименее болезненный способ, а также множество других вариантов и соображений.
Для рабочего стола это работает хорошо, однако, за исключением Mapfish и Open Layers.
Вот как это выглядит, логично. Post GIS> Postgresql> Geoserver> QGIS> Tomcat> Mapfish
источник