GIS 데이터 용 PostGIS 및 SQL Server


15

그래서 저는 최근에 새로운 회사를 시작하고 있으며 PostGIS 인스턴스를 계속 사용하여 고객에게 데이터를 제공하기 위해 많은 ArcGIS 사용자를 보유하고 있습니다. 나는 이것에 문제가 없지만, 우리는 95 % SQL Server와 5 % Oracle 샵입니다. 현재 내부 GIS는 SQL Server를 사용하고 있지만 아직 불만 사항이 없습니다.

나는 SQL Server가 2012 년에 개선 된 공간 / 기하학적 기능을 가지고 있다는 것을 알고 있지만 PostGIS에 새로운 플랫폼으로 침입 할 가치가있는 킬러 기능이 있습니까? 나는 그것을 연구하려고했지만 실제로 깊이있는 것을 찾을 수 없거나 완전히 편견이 아닌 것은 없습니다.

나는 그들이 작업을 수행 할 수있는 최고의 도구를 제공하고 싶지만 처음부터 Postgres / GIS를 배우고 그 자체로의 여정이라는 사실을 평가해야합니다.


1
ArcGIS For Server를 사용하여 데이터를 클라이언트에서 서비스하는 경우 성능 만 고려해야합니다. 더 넓은 범위의 공간 기능을 가지고 있지만 이것 중 어느 것도 살인자 기능이거나 ArcGIS에 필요할 것으로 생각하지 않습니다. 불행히도 나는 성능에 대한 벤치 마크가 없습니다.
MickyT

당신이 알고있는 오래된 사용 만트라가 여기에 적용됩니다. 다른 플랫폼으로 전환 하면 변경을 시작하기 전에 항상 좋은 아이디어처럼 보입니다. 그 후 6 개월이 지나서야 필요한 지식을 얻기 시작했을 뿐이라는 사실을 알지 못합니다. 기회 비용에 대해 들어 본 적이 있습니까?
Max Vernon

2
ARC 제품에는 경험이 없지만 데이터베이스 만 사용하는 경우에는 경험이 없습니다. PostGIS는 MSSQL 서버보다 공간 데이터베이스를 더 완전하게 구현 한 것으로, 더 많은 예제와 더 많은 무료 콘텐츠입니다. db에서 공간 관련 작업이 필요한 경우 PostGIS에는 더 많은 옵션이 있습니다. PostGIS는 무료이며 MS SQL은 그렇지 않으며 공간 데이터베이스는 예상보다 커지는 경향이 있습니다. 라이센스 등으로 인해 골치 아픈 문제가 있습니다. 물론 Linux + PostGIS는 관리자가 Windows 환경에 더 익숙하다면 자체 문제가 있습니다.
simplexio

답변:


21

Postgres와 SQL Server 모두와 협력했습니다. Postgres가 GIS 기능이 우수하다는 것을 알았습니다. 아래에서 발견 한 내용을 간략하게 설명하려고하면서 다음과 같이 제안합니다. 구체적 목표를 염두에두고 아는 솔루션에 대해 익숙하지 않은 솔루션을 검토 할 수있는 간단하지만 합리적인 시간을 제공하십시오. 예를 들어, 현재 사용중인 특정 기능을 설치하고 배우는 데 2 ​​주가 소요될 수 있습니다. 해당 기간 내에 기능이 멈췄거나 기능이 부족한 경우에는 해당 기능이 적합하지 않다는 것을 알고 있습니다. 그것은 당신의 견해를 넓히고 이전에 알지 못했던 것을 놓쳤거나 현재의 과정이 바로 지금임을 확인하는 데 도움이되는 연구에 대한 투자입니다.

데이터베이스가 진행되는 한, Postgres는 더 짧고 더 얕고 학습 곡선이있는 것으로 나타났습니다. 문서는 믿어지지 않습니다. SQL Server에는 상당히 많은 문서가 있지만 예제와 자습서가 충분하지 않아 읽기가 어렵습니다.

PostGIS 대 SQL Server Spatial은 위의 문서와 관련이 있지만 PostGIS는 SQL Server Spatial의 기능을 능가합니다. 예를 들어, Google지도 및 Bing지도는 조금이라도 최근에 geoJSON 지원을 전체지도 API에 추가했습니다. PostGIS는 ST_AsGeoJSON ()을 사용하여 데이터베이스 쿼리에서 직접 geoJSON 결과를 쉽게 반환 할 수 있습니다 . 이 geoJSON 결과는 geoJSON을 이해할 수있는 모든 사람에게 직접 전달 될 수 있습니다. SQL Server에서는 추가 라이브러리 및 처리 를 사용 하거나 ogr2ogr을 사용해야합니다. 또한 PostGIS에는 약 70-100 개의 SQL Server와 비교하여 데이터베이스로 /에서 데이터를 변환 할 수있는 300 개 이상의 기능이 있습니다.


다각형이 필요한 즉시 PostGIS를 사용하면 많은 문제를 해결할 수 있습니다. 점만 필요한 경우 SQL-Server로 충분할 수 있지만 소수 열 2 개만 사용할 수도 있습니다 (거리 계산을 수행해야하는 경우 2 열은 권장되지 않음-GeoPoint 사용). EntityFramwork / LINQ2SQL / AverageCrappyORM을 사용하는 경우 GeoPoint는 권장되지 않습니다.
Quandary

0

어느 db가 더 낫다는 것이 여기의 주요 관심사가 아니라 비즈니스 지식과 고객의 욕구에 대한 두 가지 다른 고려 사항이 있습니다. 궁극적으로 이는 기술적 결정이 아닌 비즈니스 결정일 것입니다.

맥스가 논평에서 언급 한 것처럼 분명히 기회 비용이있다. 그 주위에는 방법이 없습니다. Postgres 경로를 사용하는 경우 좋은 컨설팅 계약, 노련한 dba 또는 둘 다의 형태로 도움을받는 것이 좋습니다.

사용자가 PostGIS를 원한다면 그것은 순이익 일 수 있습니다. 전환하여 서비스를 얼마나 더 많이 판매 하시겠습니까? 기회 비용 측면에서 가치가 있습니까? 이는 어떤 DB가 당신의 눈이나 기술 사양 측면에서 더 나은지에 기초하여 결정되는 것이 아니라 학습 곡선과 마케팅 측면에서 결정됩니다.


선택에 대한 훌륭한 통찰력-Chris 감사합니다.
LowlyDBA

어느 db가 더 낫습니까? SQL Server는 해당 크기의 데이터 (planet.osm)를 처리 할 수 ​​없습니다. 또한 학술 연구 (벡터 타일, geojson 등) 이상을 수행하려는 경우 실제로 필요한 많은 기능이 누락되었습니다. 또한 적도의 한 쪽에서 다른쪽으로 이동하는 다각형을 처리 할 수 ​​없습니다 (브라질, 적도, 콜롬비아, drc, 가봉, 케냐, 소말리아, 말레이시아, 인도네시아, 싱가포르, 파푸아 또는 인도, 태평양 또는 대서양 등. 또한 다각형의 방향이 자동 변환 대신 잘못된 방향 인 경우 오류가 발생합니다.
Quandary
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.