시나리오

좋은 서비스를 위하여 데이터의 품질을 높이는 것은 무엇보다 중요합니다. 품질을 높이는 가장 좋은 방법은 육안으로 점검하여 오류를 수정하는 것이지만 이는 많은 비용을 요구합니다. 

1. 간단하게 할 수 있는 방법으로 PostGIS를 이용하여 도형의 무결성을 검증하고, 오류가 있는 도형을 수정하도록 합니다.
2. SQL 을 통해 도형형상을 수정하고 QGIS에서 이를 검증합니다.

 

수행 절차

1. ST_IsValid 함수를 이용하여 유효하지 않은 지형객체 추출 (울주군 추출)

with testdata as
(select ufid, bjcd, name, ST_IsValid(geom) as validflag, geom  from sigungu_5179)
select ufid, bjcd, name, geom from testdata where validflag = 'f';

2. ST_MakeValid 함수를 이용하여 유효한 도형으로 수정

create table sgg_tmp_5179_31710 as
select ufid, bjcd, name, ST_MakeValid(geom) as geom  from sigungu_5179  where bjcd = '3171000000';

3. ST_IsValid 함수를 이용하여 수정된 도형의 무결성 검증 (TRUE: 유효한 도형임)

select ST_IsValid(geom) from sgg_tmp_5179_31710;
 

맺음말

이 전 게시글에 비하면 쉬운 주제입니다. 그러나 이 전 주제에 비하여 무엇보다 중요한 일입니다.

일반적으로 원시 데이터가 품질 문제를 가지고 있는 경우도 있지만, 서비스 이행을 위하여 단순화(Simplify) 과정을 거치게 되면 거의 대부분 무결성 오류가 발생합니다. 따라서 단순화를 진행했다면 꼭 무결성을 검증하여 발생한 오류를 수정해야 합니다. 귀찮더라도 데이터를 이용하는 사용자의 편의를 위하여 데이터의 무결성 오류를 제거하는 습관을 가져야 합니다.

+ Recent posts