[GIS 개발환경 세팅] 1. 개요

2022. 2. 7. 06:00[개발] 지식/GIS

GIS 개발을 위해 아래와 같은 오픈소스 및 툴을 사용하여 개발환경을 세팅하고자 한다.

  • GeoServer
  • PostgreSQL
  • PostgreGIS
  • QGIS

개발환경은 Windows, MacOS, Linux 등을 지원하지만 이번 세팅에서는 Windows를 기준으로 작성될 예정이다.

GIS 란?

국토교통부의 국가공간정보포털(http://www.nsdi.go.kr/lxportal/?menuno=4066)에 GIS에 대한 정의가 잘 되어 있어 이를 차용하였다.

정의

  • GIS(Geographic Information System) 란 인간생활에 필요한 지리정보를 컴퓨터 데이터로 변환하여 효율적으로 활용하기 위한 정보시스템이다.
  • GIS는 지리적 위치를 갖고 있는 대상에 대한 위치자료와 (spatial data)와 속성자료(attribute data)를 통합·관리하여 지도, 도표 및 그림들과 같은 여러 형태의 정보를 제공한다.
  • 즉 GIS란 넓은 의미에서 인간의 의사결정능력 지원에 필요한 지리정보의 관측과 수집에서부터 보존과 분석, 출력에 이르기까지의 일련의 조작을 위한 정보시스템을 의미한다.

주요기능

  • GIS는 모든 정보를 수치의 형태로 표현한다. 모든 지리정보가 수치데이터의 형태로 저장되어 사용자가 원하는 정보를 선택하여 필요한 형식에 맞추어 출력할 수 있다. 이것은 기존의 종이지도의 한계를 넘어 이차원 개념의 정적인 상태를 삼차원 이상의 동적인 지리정보의 제공이 가능하다.
  • GIS는 다량의 자료를 컴퓨터 기반으로 구축하여 정보를 빠르게 검색할 수 있으며 도형자료와 속성자료를 쉽게 결합시키고 통합 분석 환경을 제공한다.
  • 다양한 도형자료와 속성자료를 가지고 있는 수많은 데이터 파일에서 필요한 도형이나 속성정보를 추출하고 결합하여 종합적인 정보를 분석, 처리할 수 있는 환경을 제공하는 것이 GIS의 핵심 기능이다.

다시말해 공간정보(위치, 경계, 좌표 등) 를 DB에 담아 관리함으로써 이에 대한 변경과 관리가 용이하게 하며, 이 데이터를 기반으로 만든 Map 시각화 이미지를 SW에서 요청하는 시점에 동적으로 생성하여 빠른 속도로 제공하는 기술이라고 볼 수 있다.

네이버 지도, 카카오 지도, 구글 맵, 호갱노노, 배달의 민족 등 지도 정보를 활용하고 보여주는 IT 서비스에서도 광범위하게 사용되고 있다. 일례로 사용자에게 유용한 시각화 레이어를 지도 위에 덧씌워 보여주는 기능이 GIS를 활용하여 구현된다.

GeoServer 란?

먼저 위키피디아의 정의를 살펴보면 아래와 같다.

GeoServer(지오서버)는 지리공간 데이터를 공유하고 편집할 수 있는 Java로 개발된 오픈 소스 GIS 소프트웨어 서버이다. 상호운용성을 전제로 개발되었기 때문에, 개방형 표준을 사용하여 다양한 공간 데이터 소스를 서비스할 수 있게 한다.

GeoServer - 위키백과, 우리 모두의 백과사전

GeoServer는 Java로 개발된 오픈 소스 GIS 서버이다. 지리 정보를 제공하는 웹서비스를 만들고자 할 때 GeoServer와 같은 지리정보시스템을 구축해서 사용할 수 있다. 특히 GeoServer는 위에서 명시된 것 처럼 오픈소스 소프트웨어이기 때문에 자유롭게 사용할 수 있으며, GNU General Public License를 따르고 있다.

DB

PostgreSQL

db는 PostgreSQL을 사용할 것이다. 당연하게도 PostgreSQL만을 사용할 수 있는 것은 아니지만(Oracle 가능), PostgreSQL은 무료로 사용할 수 있으며 많은 사용량으로 인해 검증된 DB이기 때문에 사용에 무리가 없다. 게다가 Refractions Research에서 개방형 공간데이터베이스인 PostGIS를 만들어 배포하였기 때문에 GeoServer와 PostgreSQL의 궁합이 향상되었다.

PostGIS

PostGIS는 PostgreSQL 관계형 데이터베이스를 위한 공간 데이터베이스 확장 모듈이다. PostgreSQL에서 데이터베이스를 생성한 뒤, PostGIS 확장 모듈을 활성화 하여 사용이 가능하다. 또한 파일로 저장된 공간정보를 PostgreSQL 데이터베이스로 import 할 수 있는 기능도 제공하기 때문에, 지리정보데이터를 편집할 수 있는 툴(QGIS 같은)을 사용해 생성된 공간정보를 곧바로 DB로 이관하기 용이하다.

Tool

QGIS

QGIS는 데이터 뷰, 편집, 분석을 제공하는 크로스 플랫폼 자유-오픈 소스 데스크톱 지리 정보 체계(GIS) 응용 프로그램이다. 2013년까지 사용된 이름은 Quantum GIS이다. 셰이프파일(shape file)형식을 지원한다.

QGIS에서 공간정보를 시각화 할 수 있는 그래픽 작업을 지원하며, 동시에 데이터까지 수정이 가능하다. 예를 들면 우리나라 행정구역 경계에 대한 스타일을 지정할 수도 있고, 경계 데이터도 변경할 수 있다. 최종적으로 여기서 생성된 스타일 파일과 데이터 파일을 export하여 PostGIS 툴을 사용해 PostgreSQL DB로 import 하는 방식으로 사용된다.

<