PostGIS

Posted on Jan 1, 2024
tl;dr: -

PostGIS란 무엇인가

PostGIS 공식 홈페이지: 공간 정보를 지원하는 PostgreSQL의 확장패키지

지원하는 기능:

  • Spatial Data Storage: 다양한 타입의 공간 데이터 저장
  • Spatial Indexing: 위치 정보로 검색
  • Spatial Functions: 거리, 면적, 교차면적 등..
  • Geometry Processing: 단순화, 변환, 일반화
  • Raster Data Support: 공간 위에 특정 값을 대치시킬 때; 해발고도, 날씨 등..
  • Geocoding and Reverse Geocoding: 주소 -> 좌표, 또는 반대로 변환

도커 실행하기

postgis/postgis - 안타깝게도 amd64밖에 지원하지않는다.

$ docker run --name mypostgis \
    -e POSTGRES_USER=myuser \
    -e POSTGRES_PASSWORD=mypassword \
    -p 5432:5432 \
    -d postgis/postgis

좌표계와 좌표의 표현

SRS

Spatial Reference System
공간을 나타내는 좌표계

WGS 84

World Geodetic System
1984년에 만들어진 지구의 표준 좌표계
지구는 타원형이지만 완전한 타원은 아니기 때문에 근사한 타원형을 정한 것.

장반경 단반경 편평률의 역수
WGS84 6,378,137.0 m ≈ 6,356,752.314245 m 298.257223563

SRID (Spatial Reference IDentifier)

데이터베이스에서 좌표를 인식하는 방법

EPSG 3857

WGS 84를 평면으로 투영한 좌표 (Pseudo-Mercator coordinates)
위도 85.06°S ~ 85.06°N 를 나타낼 수 있다. 평면으로 투영해서 북극과 남극을 표시할 수 없나보다.
투영된 좌표는 원점으로부터의 거리를 미터로 표시한다.

X lower X upper Y lower Y upper
WGS 84 bounds (°) -180.0 180.0 -85.06 85.06
Projected bounds (m) -20037508.34 20037508.34 -20048966.1 20048966.1

EPSG 4326

WGS 84와 같음
중심에서 뻗은 각도로 위도와 경도로 표현.


용어

용어 설명
geography 지리 좌표(ellipsoidal)를 나타내는 데이터 타입
geometry 평면 좌표를 나타내는 데이터 타입
SRID Spatial Reference IDentifier; SRS에서 쓰이는 좌표

참고