운용성을 향한 Open GIS 분야의 혁신
Open GIS의 이해운용성을 향한 GIS 분야의 혁신OGC(Open GIS Consortium)는 OGIS(Open Geodata Interoperability Specification; 개방형 지리자료 상호가동성 사양)을 개발하고 촉진시키기 위해, 지리정보체계의 각 분야의 의견 일치를 목적으로 설립된 회원제 비과세 법인이다. OGC는 OCF(Open GIS Foundation; 개방형 지리정보체계 재단) 위원회에 의해 1994년 8월 25일에 설립된 이후로 지리정보처리 분야에서 활동 중인 공공 민간 단체를 중심으로 협회를 구축해왔다. 이 글에서는 OGC를 중심으로 오픈GIS에 관한 전반적인 사항에 대해 알아본다.■ 김 광 수 / ETRI GIS팀에서 선임연구원으로 근무하고 있다. E-Mail은 enoch@etri.re.krGIS 기술은 처음에는 일부 전문가들이 사용하는 전문가 GIS에서 발전하였으나, 최근 인터넷의 보급과 더불어 일반인들의 GIS 기술에 대한 수요가 급격히 증가하고 있다. 이러한 경향은 GIS라는 특수한 부문의 정보기술이 주류 정보기술 속으로 합류하고 있음을 의미하며, 다양한 시장의 요구를 만족시켜 줄 수 있도록 보다 대중적인 정보 기술로 탈바꿈하고 있음을 의미한다. 현재 우리가 사용하고 있는 정보 중 약 60∼80% 정도는 지리적인 정보를 포함하고 있는 것으로 조사되고 있다. 주소, 차량 위치, 시장 조사, 인구 조사 등이 대표적인 예가 될 수 있다.이러한 정보 환경 변화 속에 등장한 중요한 GIS 기술 발전 동향은 개방화이다. 이러한 움직임은 분산 컴퓨팅 환경의 발전과 궤를 같이 하는 것으로, 지금처럼 특정 환경에서만 상호 정보 공유가 가능한 것이 아니라, 상이한 이기종 간에도 정보 공유가 가능하도록 하려는 노력에서 출발하였다. 즉, GIS 기술을 개발하는 측에서 서로 데이터의 공유에 필요한 각종 환경에 대한 합의를 통해 해당 기술의 개방화를 도모하려는 것으로 분산 환경을 지원하는 지리 정보 처리 기술의 중심에 개방형 GIS 협회(OGC, Open GIS Consortium)가 자리잡고 있다.1. 달라진 환경 변화 수용을 위해1960년대 GIS가 처음으로 세상에 나온 이후, 지리공간 자료는 특정 응용 프로그램의 요구 조건을 만족시키기 위해 다양한 데이터 포맷으로 존재해 왔으며, 다양한 분야에서 필요에 따른 데이터 구축이 계속되고 있어 공간 데이터에 대한 집적량이 급속도로 늘어가고 있다. 따라서, 과거에는 공간 데이터를 초기에 어떠한 형식으로 어떻게 구축할 것인가에 대한 문제에 많은 관심을 기울였으나, 현재에는 기존에 구축되어진 많은 양의 분산된 공간 데이터 중 목적에 맞는 데이터에 대한 접근 및 효율적인 이용에 관한 문제에 주된 관심의 초점이 옮겨지고 있다. 그러나, 기존의 시스템들은 각각 다른 데이터 포맷, 변환 방법, 데이터 처리 방법을 가지고 있으며, 소프트웨어가 사용되어지는 목적에 따라 복잡성이 점점 증폭되어 왔다. 이러한 폐쇄성과 복잡성으로 인해 기존 시스템간의 공간 데이터 공유가 거의 불가능해졌다.과거와 달라진 지리정보처리 환경의 변화를 효과적으로 수용하기 위하여, 전세계 주요 GIS S/W 업체와 공공기관 및 학계로 구성된 비영리 단체인 OGC가 1994년 창설되었다. 이 단체에서는 이기종 시스템간의 공간 데이터 공유를 목적으로 하는 개방형 표준 사양을 정의하여 공포하고 있다.2. 이기종 시스템간의 공간데이터 공유오픈GIS 인터페이스에 기초하여 시스템을 구축하는 개발자들은 모든 종류의 지리 자료와 지리 정보처리 기능을 다룰 수 있는 미들웨어와 컴포넌트 및 어플리케이션을 만들 수 있다. 서로 다른 목적을 가지고 다른 시스템을 사용하는 서로 관계없는 그룹에 의해 각각 다른 시간대에 데이터가 만들어진다 하더라도, 오픈GIS 기반 시스템 이용자는 잠재적으로 거대한 네트워크 데이터 공간을 공유할 수 있으며, 이 공간에서는 모든 지리 자료가 기본적인 데이터 모델에 적합하게 작동한다. 기존 지리 자료 역시 오픈GIS 인터페이스에 기초한 소프트웨어를 통해 접근 가능하게 된다. 오픈GIS에서 추구하고 있는 이기종 시스템간의 공간 데이터 공유를 위한 구조를 <그림 1>에 표현하였다.그림 1. 이기종 지리 자료 접근을 위한 오픈GIS 분산 환경 구조오픈GIS 사양에 기반한 인터페이스네트워크 클라이언트/서버 기술관계형 DBMS 비관계형 DBMS 실시간 자료 획득 파일포맷3. 20여개 국, 200여개 단체들이 활동 중현재 전세계 20여개 국과 200여개의 공공기관, 학교, 업체에서 OGC에서 활동 중이다. 대표적인 기관으로는 Adobe Systems, Autodesk, Cadcorp, Compaq Computer, Bentley, ESRI, Hitachi, HP, Informaix, Laser-Scan, MapInfo, MIT, Oracle, PCI Geomatics, SGI, SmallWorld, Sun Microsystems, US NASA, US National Imagery and Mapping Agency 등이며, 국내에서는 국립지리원, 부산대학교, 서울대학교, 한국전자통신연구원(ETRI), 한동대학교 등 6개 기관 및 학교가 회원으로 등록되어 있다.그림 2. OGS 홈페이지 ogc001.jpg4. 오픈GIS 사양 개발 현황상호운용 가능한 지리정보시스템의 구현을 위한 OGC의 노력은 오픈GIS 추상사양(Abstract Specification)과 오픈GIS 구현사양(Implementation Specification)의 형태로 구체화되었다. (1) 오픈GIS 추상 사양현재 오픈GIS 추상사양은 Topic 16개에 대해 버전 4.0까지 나와 있다. 버전 4.0의 경우, 이전 버전에 비해 가장 크게 변경된 부분은 UML(Unified Modeling Language)에 대한 부분이다. 이전에는 OMT(Object Modeling Technique) 표시법을 이용해서 의미를 전달하였으나 최근 각종 국제 표준의 개념 모델에 UML이 공식적으로 사용되고 있음을 감안하고, 의사소통의 편리성과 정확성을 향상시키기 위한 목적으로 각 토픽별 오픈GIS 핵심모델을 UML로 기술하고 있다. <표 1>은 각 주제별 내용과 상호 연관성에 대해 표현하고 있다.표 1. 추상 사양의 주제별 분류 및 연관성Topic1 Feature Geometry Topic2 Spatial Reference Systems Topic3 Locational Geometry Topic8 Relations Bet'n Features Topic11 MetadataTopic10 Feature Collections Topic14 Semantics and Info Com't's Topic9 QualityTopic4 Stored Functions and Interpolation Topic5 The Open GIS FeatureTopic6 The Coverage Type Topic12 The Open GIS Service Arch.Topic7 Topic13 Catalog Services Topic15 Image Expl. Services Topic16 Image Coord. Transf Services(2) 오픈GIS 구현 사양OGC의 모델이 OGC에서 추구하는 목적의 달성을 위해 지구상의 다양한 실체 및 현상을 어떻게 정보시스템에서 다룰 것인가 하는데 그 핵심이 있는 만큼, 처음 OGC가 결성된 후부터 지금까지 바로 이 부분에 대하여 기술위원회(OGC Technical Committee)에서 심도 깊게 기술정보를 수집하여 오픈GIS 추상 사양을 작성하고 지속적으로 개정 작업을 하고 있다.OGC에서 지금까지 수행해온 사양개발의 최종 성과물은 바로 구현 사양이라고 할 수 있다. 구현사양은 실제로 시스템 개발에 필요한 사양으로서, 동일한 플랫폼 상에서 이를 준수하면 서로 다른 업체에서 개발했더라도 지리정보 및 지리정보처리의 '제한된 상호 운용성'이 확보될 수 있기 때문에 중요하다. 1996년 오픈GIS 피처 사양 제안서가 발표된 후 현재 최종적으로 발표된 오픈GIS 구현사양은,OpenGIS Simple Feature Specification for SQL 1.1, OpenGIS Simple Feature Specification for OLE/COM 1.1, OpenGIS Simple Feature Specification for CORBA 1.1,OpenGIS Catalog Interface Implementation Specification 1.0,OpenGIS Web Map Server Interfaces Implementation Specification 1.0등이다.이 사양에서 지리 객체는 객체 지향형 구조에서와 같이 계층적 구조를 가진다. 그러나, OpenGIS 모델은 객체 지향형 구조와는 구현 방법에 있어서 차이가 난다. OpenGIS에서는 상호 운용성 제공을 위하여 각각의 지리 객체들을 컴포넌트(Component)로 구현할 것을 요구한다. 따라서, 각 지리 객체들은 자신의 기능들을 인터페이스(Interface)를 통하여 외부에 노출한다.(1) 오픈GIS Simple Feature Specification for SQL오픈GIS Simple Feature Specification for SQL은 서문, 개요, 아키텍처, 컴포넌트 사양, 지원되는 공간참조 데이터 등의 내용으로 구성되어 있다. 이 사양의 목적은 ODBC API를 통해서 Simple Geospatial Feature를 저장, 재생, 질의, 갱신하기 위한 표준 SQL 스키마를 정의하는 것이다.Simple Geospatial Feature Collection은 개념적으로 RDBMS의 테이블로 저장되며, 이 테이블의 칼럼이 Geometry 값을 갖는다. Feature의 비공간적 속성은 표준 ODBC/SQL92 데이터타입을 가지고 있는 칼럼으로 매핑되고, Feature의 공간적 속성은 SQL의 Geometry 확장 데이터타입을 가지는 칼럼으로 매핑된다. 오픈GIS Feature를 나타내는 테이블을 Feature Table이라고 하는데, 이러한 테이블의 칼럼 값은 Geometry Value이다. SQL92와 SQL92 with Geometry Types의 두 가지 환경을 위한 Feature Table 구현이 설명된다.SQL92 환경에서, Geometry 값을 가지는 칼럼은 Geometry 테이블에 대한 Foreign key이다. Geometry 값은 Geometry 테이블에 저장된다. Geometry 테이블은 표준적인 SQL Numeric Type이나 SQL Binary Type을 이용해서 구현된다. SQL92 with Geometry Types란 Geometry Type으로 확장된 SQL92 환경을 말한다. 이러한 환경에서 Geometry 값 칼럼은 Geometry Type에 근거한 SQL 타입의 칼럼으로 구현된다.이 사양은 오픈GIS Geometry Model과 이에 대한 SQL 함수에 기반한 표준적인 SQL Geometry Type에 대한 설명이다. 이 사양은 SQL 환경에서 Geometry Type을 추가하고 관리하기 위한 메커니즘을 표준화하기 위한 것이 아니다(SQL 데이터베이스의 데이터타입을 확장하기 위한 SQL3 메커니즘은 사용자 정의 Abstract Data Type을 통해 이루어진다). SQL92와 SQL92 with Geometry Type 구현은 데이터베이스에서 Feature Table 목록, 특정 Feature Table을 위한 Geometry 칼럼 목록, 특정 Geometry 칼럼을 위한 공간참조시스템을 반환할 표준적인 Metadata Query를 지원하기 위해서 단일한 방식으로 SQL92 정보 스키마를 확장한다. SQL92와 SQL92 with Geometry Types 구현은 표준 정수, 캐릭터, 바이너리 ODBC SQL 타입을 저장하고 불러오기 위해서 ODBC를 통해서 접근된다.Geospatial Feature Collection을 위한 오픈GIS 사양과 호환되기 위해서는 Geometry 저장과 ODBC 저장을 위해 Numeric SQL Type을 사용하는 SQL92 Feature table, Geometry 저장과 ODBC 저장을 위해 Binary SQL Type을 사용하는 SQL92 Feature table Geometry에 대한 텍스트 ODBC 접근과 바이너리 ODBC 접근 모두를 지원하는 SQL92 with Geometry Types 구현의 3가지 중 하나를 선택해야 한다.(2) 오픈GIS Simple Feature Specification for OLE/COM오픈GIS Simple Feature Specification for OLE/COM은 개요, 아키텍처, 컴포넌트 사양, 지원되는 공간참조데이터 등의 내용으로 구성된다. 개요에서는 OLE/DB 활용의 의미를 소개하고 있으며, Architecture 부분에서는 데이터제공자, 서비스제공자, 소비자로 구성되는 데이터접근 아키텍쳐를 설명하고, Geometry Object Model과 관련 속성과 메소드, Spatial Reference System Object Model에 대한 기본적인 설명을 제시하고 있다.오픈GIS Simple Feature Specification for OLE/ COM에서 양적으로 가장 많은 비중을 할당하고 있는 부분이 바로 컴포넌트 사양이다. 컴포넌트 사양은 OLE/DB와 ADO 컴포넌트, Geometry 컴포넌트의 인터페이스와 클래스 Geometry를 위한 Well-known Binary 표현인 WKBGeometry, 공간참조체계 컴포넌트의 인터페이스와 클래스 공간참조체계를 위한 Well-known Text 표현에 대한 설명으로 구성된다.이 사양은 기존의 산업표준을 최대한 활용하여, GIS 기술 제공자들에 대한 영향을 최소화하면서도 GIS 사용자들의 상호운용성과 통합에 대한 요구를 최대한 충족시킬 수 있는 방향으로 지리공간적 표준을 구축하고 발전시키기 위해서 만들어진 것이다. OLE/DB는 그 자체로 유용한 기술이지만, MS와 다른 third party 개발자들에 의해 제공되는 분산처리조정자(Distributed Transaction Coordinator), ODBC, 인덱스 서버, RDS 등과 같은 기술이 뒷받침되어 더욱 강력해진다.오픈GIS Simple Feature Specification for OLE/COM 사양의 아키텍처를 구성하는 주요 컴포넌트는 데이터 제공자 구현을 위한 OLE/DB, OLE/DB의 맨 위에서 쉽게 데이터 접근 모델을 나타내 주기 위한 ADO, 상세한 기하 및 참조 오퍼레이션을 수행하기 위한 Geometry and Spatial Reference이다.이러한 컴포넌트들의 각각은 MS 객체 모델(COM)을 사용하여 구현된다. ADO와 Geometry and Spatial Reference 객체는 IDispatch로 구현되기 때문에, 비주얼 베이직, 자바, 파워빌더와 같은 빠른 개발(RAD) 언어로 접근할 수 있다. 또한, 모든 COM 인터페이스는 최적의 실행을 위해 C++ 과 같은 낮은 수준 언어로도 접근할 수도 있다.(3) 오픈GIS Simple Feature Specification for CORBA오픈GIS Simple Feature Specification for CORBA는 서문, 개요, 아키텍처, 컴포넌트 사양, Feature Identity 등으로 구성된다. 이 사양의 목적은 GIS 소프트웨어 엔지니어가 OMG의 CORBA 기술을 이용해서 Simple Geometry의 Feature로 구성되는 지리공간 정보에 접근하고 조작할 수 있는 애플리케이션을 개발할 수 있는 인터페이스를 제공하는 것이다.CORBA는 언어, 운영체계, 플랫폼, 벤더 등과 독립적인 방식으로 객체지향 분산시스템을 구축하기 위해서 필요한 사양을 제공한다. CORBA는 다양한 상업적 ORB와 많은 사양의 객체 서비스와 애플리케이션 설비(CORBA services and CORBA facilities)로 구현된다. 설비에는 GUI나 업무관리처럼 애플리케이션이 일반적으로 필요로 하는 서비스를 제공하는 수평적, 특정 산업이나 도메인을 목표로 하는 서비스를 제공하는 수직적 설비가 있다. 본 사양은 OMG 작업에 지리공간정보 관리를 수행하기 위한 CORBA 설비를 포함하는 것이 될 것이다.CORBA를 이용하기 위해서는 CORBA의 OMA 추상 사양에 나타나 있는 추상 아키텍처를 설명하는 것이 필요하다. CORBA의 추상 아키텍처는 CORBA-IDL에 정의된 인터페이스를 구축함으로써 얻을 수 있다. 이 인터페이스들은 Feature와 Geometry의 2가지 서브시스템 혹은 모듈로 구성되어 있다.5. 적합성 판정(Conformance Testing)OGC에서는 제정된 사양을 구현한 업체에 대해서 OGC 사양과의 적합성 여부를 판정하는 프로그램이 있다. 이 프로그램에서 통과된 업체에 대해서만 OGC 표식의 사용을 허가함으로써 OGC 사양의 가치를 높이는 역할을 하고 있다. 이 프로그램에 참여하고자 하는 업체는 각 업체의 매출액과 회원 종류에 따라 정해지는 비용을 OGC에 지불한다. 판정대상이 되는 사양은 오픈GIS Simple Features Specification for SQL, 오픈GIS Simple Features Specification for OLE/COM, 오픈GIS Catalog Services Interface Specification 등 3가지이다. 이 프로그램에 통과된 업체와 제품은 <표 2>와 같다.표 2.업체 제품 Release 구현 사양ESRI Spatial Database Engine for Informaix Version 3.0.2 SFSESRI Spatial Database Engine for DB2 Datajoiner Informaix Version 3.0.2 SFSESRI Spatial Database Engine for Oracle Version 3.0.2 SFSOracle Corporation Oracle8 Spatial Cartridge Version 8.0.5 SFSOracle Corporation Oracle8I Spatial Version 8.1.5 SFSCadcorp Cadcorp Simple Features for COM Component, used in Cadcorp SIS Version 5.1 SFOCadcorp Cadcorp Simple Feature for COM Component, used in Cadcorp PowerMap Version 1 SFOHitachi Software Engineering HiRDB Spatial Search Plug-in Version 01-01 SFSHitachi Software Engineering GeoMation GeoAdapter/J for HiRDB Version 01-00 SFC■ SFS : 오픈GIS Simple Feature Specification for SQL, ■ SFO : 오픈GIS Simple Features Specification for OLE/COM■ SFC : 오픈GIS Simple Features Specification for CORBA6. 관련 표준 제정 기관OGC와 연관되어 있는 표준 제정 기관과 관련 내용은 <표 3>과 같다.표 3.표준관련기관 내용ISO/IEC JTCI SC32 SQL의 공간적 확장, Geometry 모델ISO/IEC JTCI SC24 컴퓨터그래픽ISO TC204 Mobile 컴퓨팅, 자동항법 시스템ISO TC211 지리자료의 표준 : 메타 데이터, 공간 스키마, 좌표 참조 체계, 카다로그 등OMG CORBA 사양, 객체 관리, 도메인 서비스W3C 웹 상에서의 전자 상거래, HTML, XML 등의 사양IETF 보안, HTTP, 교통SEDRIS Scene SynthesisSun Microsystems Java, JINIMicrosoft COM 기반 표준과 개념WAP Wireless Applications Protocol7. 맺음말종래의 지리정보시스템은 독자적인 시스템으로 독립된 자료 형식과 처리 모듈로 구성되어 있으므로 시스템들 사이의 직접적인 자료 교환이 불가능하여 이기종 시스템으로 구현된 서로 다른 업무를 통합하여 관리하는 것이 불가능하다. 이러한 기존의 지리정보시스템의 문제점을 해결하기 위하여 자료의 공유를 위한 개방형 지리정보 체계를 수용하고, 필요한 기능을 표준 인터페이스를 통하여 제공하는 컴포넌트로 구성함으로써 지리정보 데이터의 구조나 위치에 종속되지 않고, 지리정보시스템을 손쉽게 구현할 수 있는 상호 작동 가능한 분산형 지리정보처리 컴포넌트 시스템을 구성할 수 있는 기반을 제공하는 것이 OGC의 역할이라고 할 수 있다.그러나, OGC 표준은 기존 GIS 업체의 제품을 대신하거나 경쟁 관계에 있는 것은 아니라 상호 보완 관계에 있다고 하는 것이 적합할 것이다. 응용 분야는 특성에 맞는 제품을 선정하여 시스템을 구축하고 이기종 시스템과의 통합 관리가 필요한 분야에서는 OGC 사양을 따라 시스템을 구현하면 독립 시스템과 통합 시스템의 조화를 통한 발전을 모색할 수 있으리라 생각된다. 또한, 현재의 추세라면 GIS 소프트웨어 개발 업체들은 각 제품의 내부에 OGC 사양을 지원하여 독립 시스템과 통합 시스템의 구별이 없어지는 방향으로 GIS 세계가 변화할 것으로 확신한다. ■ 참고문헌김은형, News Letter 제4호, 1996. 11김은형, News Letter 제20호, 1999. 7.Open GIS Consortium, Inc., Abstract Specification Overview Version 4, 1999. 6Open GIS Consortium, Inc., The OpenGIS Guide 3rd Edition, 1998. 6OGC, Inc., The OpenGIS Simple Feature Specification for SQL Revision 1.1, 1999OGC, Inc., The OpenGIS Simple Feature Specification for OLE/COM Revision 1.1, 1999OGC, Inc., The OpenGIS Simple Feature Specification for CORBA Revision 1.0, 1998CAD&Graphics 2001년 1월호
작성일 : 2005-09-28