Так что я недавно начал работать в новой компании, и у меня появилось много пользователей ArcGIS, которые, похоже, действительно заинтересованы в продвижении вперед с экземпляром PostGIS для предоставления некоторых данных нашим клиентам. Хотя у меня нет проблем с этим, мы на 95% SQL Server и на 5% Oracle. Наша текущая внутренняя ГИС работает на SQL Server, и мне еще не приходилось слышать никаких жалоб.
Я знаю, что SQL Server имеет множество улучшенных пространственных и геометрических возможностей с 2012 года, но есть ли в PostGIS какие-нибудь убийственные функции, для которых стоит взломать новую платформу? Я пытался исследовать это, но не могу найти что-то действительно глубокое, или это не совсем предвзято.
Я хочу дать им лучшие инструменты для выполнения своей работы, но также должен взвесить тот факт, что я буду изучать Postgres / GIS с самого начала, и это целый путь сам по себе.
Ответы:
Я работал как с Postgres, так и с SQL Server. Я обнаружил, что Postgres превосходит ГИС по функциональности. И хотя я собираюсь кратко изложить свои выводы ниже, я бы предложил следующее: Дайте себе короткий, но разумный период времени, чтобы рассмотреть незнакомое решение по сравнению с тем, которое вы знаете, с учетом конкретных целей. Например, возможно, 2-недельный период времени для установки и изучения некоторых конкретных функций, которые используются в настоящее время. Если вы обнаружите, что застряли или у вас нет функциональности в течение этого периода времени, то вы знаете, что это не для вас. Это инвестиция в исследования, которая расширяет ваши взгляды и помогает вам понять, что вы, возможно, упустили что-то, о чем вы раньше не знали, или просто подтвердите, что ваш текущий курс - прямо сейчас.
Что касается базы данных, я обнаружил, что Postgres имеет более короткую и более мелкую кривую обучения. Документация просто невероятная. В SQL Server есть довольно много документации, но я нахожу ее трудной для чтения, с недостаточным количеством примеров и руководств.
PostGIS и SQL Server Spatial аналогичны приведенным выше в отношении документации, но PostGIS превосходит функциональность SQL Server Spatial. Например, Google Maps и, в меньшей степени, Bing Maps недавно добавили полную поддержку geoJSON в API своих карт. Итак, PostGIS может легко вернуть результат geoJSON непосредственно из запроса к базе данных, используя ST_AsGeoJSON () . Этот результат geoJSON может быть затем передан непосредственно любому, кто может понять geoJSON. SQL Server требует от вас использования дополнительной библиотеки и обработки или использования ogr2ogr. Кроме того, PostGIS имеет более 300 функций, доступных для преобразования данных в базу данных и из нее, по сравнению с SQL Server, который имеет около 70-100.
источник
Мне кажется, что то, какой БД лучше, здесь не является вашей главной задачей, и вместо этого у вас есть два разных соображения, которые касаются друг друга, а именно: знание бизнеса против желания клиента. В конечном итоге это будет бизнес-решение, а не техническое решение.
Очевидно, что есть альтернативная стоимость, как Макс отметил в комментарии. Обойти это невозможно. Если вы едете по маршруту Postgres, пожалуйста, подумайте о том, чтобы получить некоторую помощь в виде хорошего консалтингового соглашения, опытного dba или обоих.
Если ваши пользователи хотят PostGIS, это может быть чистой победой. Сколько еще ваших услуг вы продадите, совершив переход? Будет ли оно того стоить по возможности? Это не решения, которые будут приниматься на основе того, какой дБ лучше в ваших глазах или с точки зрения технических характеристик, а с точки зрения кривой обучения и маркетинга.
источник