꾸준한 개발일기
GIS:: 프로그래밍 기초 6. 주요 오픈소스 GIS SW 본문
- PostgreSQL(+PostGIS)
- GeoServer
- OpenLayers
- QGIS
PostgreSQL
PostgreSQL은 오픈 소스 객체-관계형 데이터베이스 시스템(ORDBMS)이다. 다른 관계형 데이터베이스 시스템과 달리 연산자, 복합 자료형, 집계 함수, 자료형 변환자, 확장 기능 등 다양한 데이터베이스 객체를 사용자가 임의로 만들 수 있는 기능을 제공함으로써 마치 새로운 하나의 프로그래밍 언어처럼 무한한 기능을 손쉽게 구현할 수 있다.
PostgreSQL의 구조
PostgreSQL은 클라이언트/서버 모델을 사용한다. 서버는 데이터베이스 파일들을 관리하며, 클라이언트 애플리케이션으로부터 들어오는 연결을 수용하고, 클라이언트를 대신하여 데이터베이스 액션을 수행한다. 서버는 다중 클라이언트 연결을 처리할 수 있는데, 서버는 클라이언트의 연결 요청이 오면 각 커넥션에 대해 새로운 프로세스를 fork한다. 그리고 클라이언트는 기존 서버와의 간섭 없이 새로 생성된 서버 프로세스와 통신하게 된다.
PostgreSQL의 기능
PostgreSQL은 관계형 DBMS의 기본적인 기능인 트랜잭션과 ACID(Atomicity, Consistency, Isolation, Durability)를 지원한다. ANSI:2008 구격을 상당 부분 만족시키고 있으며, 전부 지원하는 것을 목표로 계속 기능을 추가하고 있다. PostgreSQL은 기본적인 신뢰도와 안정성을 위한 기능 뿐만 아니라 진보적인 기능이나 학술적 연구를 위한 확장 기능도 많이 가지고 있다.
PostGIS
PostGIS는 객체 관계형 데이터베이스 시스템인 PostgreSQL의 확장 프로그램으로, 데이터베이스에 GIS(지리정보 시스템) 객체를 저장할 수 있게 해줍니다. PostGIS는 GiST 기반 R-Tree 공간 인덱스를 지원하며, GIS 객체의 분석 및 공간 처리를 위한 기능을 포함하고 있습니다.
GeoServer
GeoServer는 지리공간 데이터를 공유하고 편집할 수 있는 Java로 개발된 오픈 소스 GIS 소프트웨어 서버다. 상호운용성을 전제로 개발되었기 때문에, 개방형 표준을 사용하여 다양한 공간 데이터 소스를 서비스할 수 있다.
실행환경: 지원OS
- Windows, MacOS, Linux 등
- GeoServer는 Java Web Application으로 JAVA를 먼저 설치해야 실행할 수 있음.
- GeloServer와 호환되는 Java 버전은 홈페이지에서 확인 가능함.
주요 기능
1. WMS(Web Map Service)
- GIS 데이터베이스에서 데이터를 사용하기 위해 맵 서버에서 생성된 지도 이미지를 인터넷상에서 제공하기 위한 표준 프로토콜.
- 데이터서버에 저장된 레이어 또는 분석을 통해 생성된 벡터 및 래스터 데이터를 시각화(Visualiziont)하는 서비스
2. WFS(Web Feature Service)
- 웹을 통해 벡터 형식으로 GIS데이터를 제공하기 위한 인터페이스
- 데이터서버에 저장된 벡터 레이어를 공간 및 속성조건을 이용해서 불러오거나 관리(피쳐의 추가, 수정, 삭제)하기 위한 서비스.
3. WCS(Web Coverage Service)
- 웹을 통해 래스터 형식의 GIS 데이터를 제공하기 위한 인터페이스
- 다음과 같은 자료를 서비스 함.
- 위성영상
- DEM, Degital Elevation Model
- TIN, Triangulated Irregular Network
- 기타.
4. WPS(Web Processing Service)
- 지리정보에 대한 다양한 처리서비스를 웹상에서 정의하고 접근할 수 있도록 하기 위한 인터페이스
- 모든 OGC 표준 웹 서비스들과 상호호환성을 갖도록 정의함.
OpenLayers
- 웹브라우저에서도 지도 데이터를 표현하고 조작할 수 있는 자바스크립트 라이브러리
- 지도 서버로의 접속을 OGC표준에 의해 요청하므로 지도 서버와 독립적으로 동작
- WMS, TMS, ArcGIS, Google 등 다른 지도와 연동 가능
- 여러 자바크르립트 라이브러리와 결합 가능(Jquery, Ext js 등)
주요 기능
- 원하는 좌표에 마커 기능
- 그리기(Draw) 기능 ( 점, 선, 원, 다각형 등 )
- 좌표체계의 변환을 돕는 기능 내장
- 레이어 형식을 제공하여 맵위에 레이어를 쌓을 수 있음
- 객체들을 각각 관리할 수 있음
- 좌표와 좌표간 거리 측정 등 다양한 계산 기능
- PostgreSQL(PostGIS), GeoServer를 연동하여 기능을 더욱 더 확장시킬 수 있음
GeoServer, OpenLayer, PostGIS 관계
QGIS
QGIS는 쉐이프파일(*.shp) 형식의 데이터 파일을 열어서 그 데이터 파일에서의 탐지된 객체 라벨 정보를 볼 수 있는 소프트웨어이다.
주요기능
- 데이터 보기
- 데이터 탐색 및 지도 제작
- 데이터 생성, 편집, 관리 및 내보내기
- 데이터 분석
- 온라인 맵 발행
출처:
https://mangkyu.tistory.com/71
https://rlawls1991.tistory.com/entry/GeoServer-PostGIS
https://rlawls1991.tistory.com/entry/GeoServer-PostGIS
https://rlawls1991.tistory.com/entry/GeoServer-PostGIS
https://rlawls1991.tistory.com/entry/GeoServer-PostGIS
공간관계 유형 알아보기
공간정보 주요 파일 포맷 알아보기
'GIS' 카테고리의 다른 글
GIS:: SHP파일 PostGis로 import하기 (0) | 2022.08.10 |
---|---|
GIS:: 공간정보 단어 알아보기 (0) | 2022.08.03 |
GIS:: 프로그래밍 기초 5. 공간정보 주요 파일 포맷 (0) | 2022.01.17 |
GIS:: 프로그래밍 기초 4. 공간관계(Spatial relation) 유형 (0) | 2022.01.16 |
GIS:: 프로그래밍 기초 3. Geometry 유형 (0) | 2022.01.15 |