3단계 · GDAL 레시피
웹 형태 변환
브라우저가 바로 읽는 포맷으로 변환. 뷰어별 처리 방식.
방식·도구 고르기
통째 파일이 무거울 때: ① 타일로 굽기(파일) → 화면 범위 조각만 받음. ② 그래도 브라우저 그리기 부담 → WMS(서버)로 서버가 그림까지. 갱신·조회·연동이 필요하면 크기와 상관없이 서버.
정사영상·래스터 · 데이터 상태별 (크기 기준은 어림)
| 데이터 상태 | 방식 | 고르는 이유 · 형태 |
|---|---|---|
| 단일 영상 수 MB (jpg·png·webp + 월드파일) | 파일 | 그림 한 장 + 네 모서리 좌표. 타일 불필요. |
| 수십 MB~GB 영상 | 파일 | COG: Range 요청으로 필요한 블록·해상도만. OpenLayers 직접, 그 외 뷰어는 XYZ 타일. |
| 모든 뷰어 공통 · CDN 배포 | 파일 | XYZ 타일 굽기: z/x/y PNG. 줌 1단계마다 타일 수 4배. |
| 여러 장 모자이크 · 주기 갱신 · 색 바꾸기 | 서버 | GeoServer WMS·WMTS: 원본 COG를 두고 요청 때 잘라 그림. 색 지도(SLD)는 서버에서. |
카드 안 도구 선택 → 아래 단계·결과 전환. ?: 고르는 기준·장단점.
파일 방식
맞는 경우
- 갱신 드문 데이터 (연 1회 공개 등)
- 서버 운영 없는 배포: 정적 호스팅·CDN
- 미리 구운 타일 → 요청마다 연산 없음, 동시 접속에 강함
한계
- 원본이 바뀌면 다시 굽기
- 속성 조건 조회 불가 → 받은 범위 안 클라이언트 필터만
- 타일 수만~수백만 개 → 올리기·저장 부담 (PMTiles 한 파일로 완화)
결과를 파일로 구워 정적 호스팅. 브라우저가 파일을 직접 읽음.
도구
GDAL · 장점
- 가장 단순: 파일 하나
- 타일 굽기 없음 → 준비 빠름
- 모든 뷰어 지원
단점
- 통째 로드 → 큰 영상은 느림·메모리 부담
- 확대하면 원본 해상도 한계 그대로
GDAL (XYZ 타일) · 장점
- 보이는 타일만 → 큰 영상도 빠름
- 모든 뷰어 공통 XYZ
- WebP 타일로 용량 축소
단점
- 타일 수천~수만 개
- 원본이 바뀌면 다시 굽기
서버 방식
맞는 경우
- 자주 바뀌는 데이터: DB 수정 즉시 반영
- 속성 조건 조회: WFS (CQL_FILTER)
- WMS·WFS 표준 요구: GIS 소프트웨어·타 기관 시스템 연동
- 저사양 단말: WMS는 서버가 그림까지 → 브라우저는 이미지만
- 접근 권한·사용량 관리
한계
- 서버 상시 운영: 메모리·DB·보안 패치
- 요청마다 연산 → 타일 캐시(GeoWebCache 등) 없으면 동시 접속에 약함
- 구성 요소 증가: DB + 서버 + 프록시
떠 있는 서버에 발행. 요청마다 서버가 응답 생성.
도구
GeoServer · 장점
- 원본 COG 그대로 → 타일 굽기 없음
- SLD ColorMap으로 색을 서버에서
- WMS·WMTS로 모든 뷰어
단점
- 서버 상시 운영
- 요청마다 연산 → 타일 캐시 필요
GDAL 요약 파일 방식
- 걸린 시간
- -
- 결과 용량
- -
- 파일 수
- -
- 그릴 수 있는 뷰어
- 4 / 4
변환 단계
1256색 색상표 재생성GDAL/OGR C++, MIT, v3.13.3공간데이터 변환 표준 엔진. 래스터(GDAL)·벡터(OGR) 수백 가지 포맷.자세히 보기
gdal raster rgb-to-palette /work/web_3857.tif /work/palette.tifrgb-to-palette: 재투영으로 섞인 색 → 256색 색상표. 색 적은 지도는 RGB 대비 몇 배 작음.
2PNG 한 장 내보내기GDAL/OGR C++, MIT, v3.13.3공간데이터 변환 표준 엔진. 래스터(GDAL)·벡터(OGR) 수백 가지 포맷.자세히 보기
gdal_translate -of PNG -co ZLEVEL=9 /work/palette.tif /out/image.png원본도 PNG — 좌표계 (EPSG) 지구 위 위치를 숫자로 적는 약속. EPSG:4326: 위경도, EPSG:3857: 웹 지도 미터 좌표, EPSG:5186: 국내 중부원점. 자세히 재투영·축소본으로 다시 저장. 이 크기는 타일 분할 불필요: 그림 한 장 + 네 모서리 좌표로 모든 뷰어 표시.
결과물
PNG 한 장단일 이미지
원본도 PNG — 웹 메르카토르 재투영·축소본. 네 모서리 위경도(9.907, 53.426, 10.203, 53.602)와 함께 이미지 오버레이로 사용.
뷰어별 처리 · GDAL
OpenLayers 2D미검증
- 결과물
- PNG 한 장 (image.png)
- 처리
ImageLayer + ImageStatic — 네 모서리 범위
MapLibre 2.5D미검증
- 결과물
- PNG 한 장 (image.png)
- 처리
image 소스 — 네 모서리 좌표
MapLibre + Deck.gl 3D미검증
- 결과물
- PNG 한 장 (image.png)
- 처리
BitmapLayer — 네 모서리 범위
CesiumJS 3D미검증
- 결과물
- PNG 한 장 (image.png)
- 처리
SingleTileImageryProvider
직접 처리: 원본과 같은 형식을 그대로 읽음. 변환 후 처리: 바꾼 결과물을 읽음. 일부 기능만: 그리지만 빠지는 기능 있음(카드의 주의). 미검증: 성공한 실행 기록 없음.