Guide · GIS

GIS 파일 포맷 완벽 비교

SHP, GeoJSON, KML, TopoJSON, GPX — 비슷해 보이지만 용도가 다른 GIS 파일 포맷들을 실무 기준으로 비교합니다.

GIS 파일 포맷이 이렇게 많은 이유

공간 데이터(점·선·면과 그 위치 정보)를 저장하는 방식은 하나가 아닙니다. 각 포맷은 만들어진 배경과 주요 사용처가 달라서, "더 좋은 포맷"이 있다기보다는 상황에 맞는 포맷이 있습니다. 오래된 공공기관 시스템은 여전히 Shapefile(SHP)을 표준으로 요구하고, 웹 지도는 GeoJSON을 선호하며, 구글어스 공유용으로는 KML이 쓰입니다. 이 차이를 모르고 파일을 주고받으면 "열리지 않는다", "속성값이 깨진다", "위치가 어긋난다" 같은 문제가 자주 생깁니다.

포맷별 한눈에 비교

포맷확장자구조대표 용도
Shapefile.shp(+.dbf,.shx,.prj 등)여러 파일 묶음(바이너리)공공기관·측량, GIS 소프트웨어 표준
GeoJSON.geojson / .json단일 텍스트(JSON)웹 지도, API, 개발자 친화적 공유
KML / KMZ.kml / .kmz단일 텍스트(XML)구글어스·구글맵 공유, 스타일 포함
TopoJSON.topojson단일 텍스트(JSON, 위상 압축)웹 지도의 용량 최적화
GPX.gpx단일 텍스트(XML)GPS 기기의 트랙·웨이포인트

Shapefile(SHP): 가장 오래됐지만 여전히 표준

1990년대 Esri가 만든 포맷으로, 지금도 국내 공공기관·지자체 데이터 제공 표준으로 가장 널리 쓰입니다. 특징은 파일 하나가 아니라 여러 파일의 묶음이라는 점입니다. 도형 정보(.shp), 속성 테이블(.dbf), 인덱스(.shx), 좌표계 정보(.prj) 등이 같은 이름으로 세트를 이루며, 이 중 하나라도 빠지면 정상적으로 열리지 않습니다. 그래서 SHP 파일은 보통 이 세트를 통째로 압축한 ZIP 형태로 주고받습니다. 또 다른 제약은 속성(필드) 이름이 최대 10자로 제한된다는 점으로, 긴 필드명을 쓰던 다른 포맷에서 SHP로 변환하면 이름이 잘리거나 겹칠 수 있습니다.

GeoJSON: 웹과 가장 잘 어울리는 포맷

이름 그대로 JSON 문법으로 공간 데이터를 표현하며, 파일 하나로 도형과 속성을 모두 담습니다. 사람이 텍스트 에디터로 열어도 구조를 바로 읽을 수 있을 만큼 단순하고, 대부분의 웹 지도 라이브러리(Leaflet, Mapbox GL 등)와 프로그래밍 언어에서 표준처럼 다뤄집니다. 좌표계는 관례적으로 EPSG:4326(WGS84 위경도)을 기본으로 간주하므로, 다른 좌표계의 데이터를 GeoJSON으로 옮길 때는 미리 4326으로 변환해두는 것이 안전합니다.

KML / KMZ: 구글어스와 함께 성장한 포맷

구글어스(Google Earth)를 위해 만들어진 XML 기반 포맷으로, 도형·속성뿐 아니라 선 색상, 채우기 색, 아이콘, 카메라 시점 같은 스타일 정보까지 파일 안에 함께 담을 수 있는 것이 가장 큰 특징입니다. 그래서 "지도를 그대로 보여주고 공유"하는 목적에 특히 잘 맞습니다. KMZ는 KML 파일과 이미지 등의 리소스를 압축해 하나로 묶은 형태입니다.

TopoJSON: 웹 지도 용량을 줄이는 포맷

여러 지역(예: 전국 시군구 경계)을 표현할 때, 인접한 두 지역은 국경선을 공유합니다. GeoJSON은 이 공유 경계를 각 지역마다 중복해서 저장하지만, TopoJSON은 위상(topology) 구조를 이용해 공유 경계선을 한 번만 저장하고 어느 지역들이 그 선을 공유하는지만 표시합니다. 그 결과 같은 내용이라도 파일 용량이 크게 줄어, 브라우저에서 빠르게 불러와야 하는 전국 단위 지도 시각화에 자주 쓰입니다.

GPX: GPS 기기와 트래킹 앱의 언어

등산·자전거 트래킹 앱이나 GPS 수신기에서 흔히 볼 수 있는 포맷입니다. 지점 하나하나가 아니라 웨이포인트(중요 지점), 트랙(이동 경로), 루트(계획 경로)라는 GPS 특화 개념으로 구조화되어 있어, 일반적인 GIS 분석용 포맷이라기보다는 "다녀온 길·갈 길"을 기록하고 공유하는 데 최적화되어 있습니다.

상황별로 어떤 포맷을 고를까

포맷을 변환할 때 자주 놓치는 것들

바로 사용해보기 지오시프트의 GIS 탭에서 SHP·GeoJSON·KML·TopoJSON·GPX 간 상호 변환과 좌표계(EPSG) 변환을 브라우저에서 바로 처리할 수 있습니다. 파일이 서버로 전송되지 않습니다.

자주 묻는 질문

SHP 파일 하나만 있으면 여는 데 문제없나요?

대부분의 경우 문제가 생깁니다. Shapefile은 .shp 하나가 아니라 .dbf(속성), .shx(인덱스) 등 여러 파일이 한 세트로 있어야 정상적으로 열립니다. 파일을 주고받을 때는 같은 이름의 관련 파일을 모두 포함해 ZIP으로 압축하는 것이 안전합니다.

GeoJSON과 TopoJSON 중 뭘 써야 하나요?

지역 수가 적거나 경계가 단순하다면 다루기 쉬운 GeoJSON으로 충분합니다. 반면 전국 시군구·행정동처럼 지역 수가 많고 경계가 서로 맞닿아 있는 데이터를 웹에서 빠르게 불러와야 한다면, 중복 경계를 줄여주는 TopoJSON이 유리합니다.