11
공간 데이타의 효율적인 관리를 위한 모바일 GIS 시스템의 개발 395 본 연구는 국토해양부 첨단도시기술개발사업 - 지능형국토정보기술혁신 사업과 제의 연구비지원(10국토정보J71)에 의해 수행되었습니다. 논문접수 심사완료 : : 20118182011919†† ††† 정 회 원 학생회원 종신회원 : : : 건국대학교 컴퓨터공학부 강의교수 [email protected] 건국대학교 컴퓨터공학부 [email protected] 건국대학교 컴퓨터공학부 교수 [email protected] (Corresponding author) Copyright2011 한국정보과학회ː개인 목적이나 교육 목적인 경우, 이 저작 물의 전체 또는 일부에 대한 복사본 혹은 디지털 사본의 제작을 허가합니다. 이 때, 사본은 상업적 수단으로 사용할 수 없으며 첫 페이지에 본 문구와 출처 를 반드시 명시해야 합니다. 이 외의 목적으로 복제, 배포, 출판, 전송 등 모든 유형의 사용행위를 하는 경우에 대하여는 사전에 허가를 얻고 비용을 지불해야 합니다. 정보과학회논문지: 데이타베이스 제38권 제6(2011.12) 공간 데이타의 효율적인 관리를 위한 모바일 GIS 시스템의 개발 (Development of a Mobile GIS System for Efficient Management of Spatial Data) 김정준 신인수 †† 한기준 ††† (Joung-Joon Kim) (In-Su Shin) (Ki-Joon Han) 최근 무선 통신 기술의 발전과 모바일 단말기 사용의 보편화는 유비쿼터스 컴퓨팅 기술의 발 전을 가져왔다. 이에 따라 유비쿼터스 환경에서 공간 데이타에 대한 효율적인 질의 처리를 할 수 있는 모 바일 GIS 시스템의 연구가 활발히 진행되고 있다. 현재 모바일 GIS 시스템들은 모바일 DBMS를 이용하 고 있다. 그러나 기존 모바일 DBMS는 공간 데이타 처리 기능을 지원하지 않기 때문에 공간 데이타에 대 한 질의 처리가 효율적이지 않는 문제점이 있다. 따라서, 본 논문에서는 유비쿼터스 환경에서 효율적인 공 간 데이타 관리를 위해 기존 모바일 DBMS에 기반하여 모바일 GIS 시스템을 설계 및 구현하였다. 모바 GIS 시스템은 효율적인 공간 질의 처리를 위해 공간 데이타 타입 및 공간 연산자를 제공하고, 공간 데 이타 캐싱 기능, 인덱스, 압축 기법, 그리고 공간 데이타 타입을 변환하여 모바일 DBMS에 저장하는 기능 을 지원한다. 마지막으로, 본 논문에서는 모바일 GIS 시스템을 가상 시나리오에 적용해 봄으로써 효용성 을 입증하였고 성능 평가를 통해 모바일 GIS 시스템이 기존의 모바일 DBMS에 비해 향상된 공간 질의 처리 성능을 보임을 확인하였다. 키워드 : 유비쿼터스 컴퓨팅, 모바일 지리정보시스템, 모바일 데이타베이스, 공간 데이타 Abstract Recently the development in wireless technology and the generalization of use of mobile phone have brought development of ubiquitous computing technology. Accordingly, a study on the mobile GIS system which can conduct efficient query processing about spatial data in ubiquitous environments is progressing actively. The current mobile GIS application systems are using the mobile DBMS. However, since the existing mobile DBMS does not support the spatial data processing function, the query processing about spatial data is not supported efficiently in the mobile GIS application systems. Thus, this paper designed and implemented a mobile GIS system based on existing mobile DBMS for efficient spatial data processing in ubiquitous environments. The mobile GIS system based on mobile DBMS supports spatial data types and spatial operators, and supplies the spatial data cashing, indexing, compression, and spatial data type conversion functions for efficient spatial query processing. Also, this paper proved the efficiency of the mobile GIS system by applying it to virtual scenario, and verified its performance improvement of spatial data processing compared to existing mobile DBMS, through the performance evaluation. Key words : Ubiquitous Computing, Mobile GIS, Mobile Database, Spatial Data

(Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

공간 데이타의 효율 인 리를 한 모바일 GIS 시스템의 개발 395

․본 연구는 국토해양부 첨단도시기술개발사업 - 지능형국토정보기술 신 사업과

제의 연구비지원(10국토정보J71)에 의해 수행되었습니다.

논문 수

심사완료

:

:

2011년 8월 18일

2011년 9월 19일

††

†††

정 회 원

학생회원

종신회원

:

:

:

건국 학교 컴퓨터공학부 강의교수

[email protected]

건국 학교 컴퓨터공학부

[email protected]

건국 학교 컴퓨터공학부 교수

[email protected]

(Corresponding author임)

CopyrightⒸ2011 한국정보과학회ː개인 목 이나 교육 목 인 경우, 이 작

물의 체 는 일부에 한 복사본 혹은 디지털 사본의 제작을 허가합니다.

이 때, 사본은 상업 수단으로 사용할 수 없으며 첫 페이지에 본 문구와 출처

를 반드시 명시해야 합니다. 이 외의 목 으로 복제, 배포, 출 , 송 등 모든

유형의 사용행 를 하는 경우에 하여는 사 에 허가를 얻고 비용을 지불해야

합니다.

정보과학회논문지: 데이타베이스 제38권 제6호(2011.12)

공간 데이타의 효율 인 리를 한모바일 GIS 시스템의 개발

(Development of a Mobile GIS System for Efficient

Management of Spatial Data)

김 정 † 신 인 수 †† 한 기 †††

(Joung-Joon Kim) (In-Su Shin) (Ki-Joon Han)

요 약 최근 무선 통신 기술의 발 과 모바일 단말기 사용의 보편화는 유비쿼터스 컴퓨 기술의 발

을 가져왔다. 이에 따라 유비쿼터스 환경에서 공간 데이타에 한 효율 인 질의 처리를 할 수 있는 모

바일 GIS 시스템의 연구가 활발히 진행되고 있다. 재 모바일 GIS 시스템들은 모바일 DBMS를 이용하

고 있다. 그러나 기존 모바일 DBMS는 공간 데이타 처리 기능을 지원하지 않기 때문에 공간 데이타에

한 질의 처리가 효율 이지 않는 문제 이 있다. 따라서, 본 논문에서는 유비쿼터스 환경에서 효율 인 공

간 데이타 리를 해 기존 모바일 DBMS에 기반하여 모바일 GIS 시스템을 설계 구 하 다. 모바

일 GIS 시스템은 효율 인 공간 질의 처리를 해 공간 데이타 타입 공간 연산자를 제공하고, 공간 데

이타 캐싱 기능, 인덱스, 압축 기법, 그리고 공간 데이타 타입을 변환하여 모바일 DBMS에 장하는 기능

을 지원한다. 마지막으로, 본 논문에서는 모바일 GIS 시스템을 가상 시나리오에 용해 으로써 효용성

을 입증하 고 성능 평가를 통해 모바일 GIS 시스템이 기존의 모바일 DBMS에 비해 향상된 공간 질의

처리 성능을 보임을 확인하 다.

키워드 : 유비쿼터스 컴퓨 , 모바일 지리정보시스템, 모바일 데이타베이스, 공간 데이타

Abstract Recently the development in wireless technology and the generalization of use of mobile

phone have brought development of ubiquitous computing technology. Accordingly, a study on the

mobile GIS system which can conduct efficient query processing about spatial data in ubiquitous

environments is progressing actively. The current mobile GIS application systems are using the mobile

DBMS. However, since the existing mobile DBMS does not support the spatial data processing

function, the query processing about spatial data is not supported efficiently in the mobile GIS

application systems. Thus, this paper designed and implemented a mobile GIS system based on

existing mobile DBMS for efficient spatial data processing in ubiquitous environments. The mobile GIS

system based on mobile DBMS supports spatial data types and spatial operators, and supplies the

spatial data cashing, indexing, compression, and spatial data type conversion functions for efficient

spatial query processing. Also, this paper proved the efficiency of the mobile GIS system by applying

it to virtual scenario, and verified its performance improvement of spatial data processing compared

to existing mobile DBMS, through the performance evaluation.

Key words : Ubiquitous Computing, Mobile GIS, Mobile Database, Spatial Data

Page 2: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

396 정보과학회논문지 : 데이타베이스 제 38 권 제 6 호(2011.12)

1. 서 론

최근 무선 통신 기술의 발 과 모바일 단말기 사용의

보편화는 유비쿼터스 컴퓨 기술의 발 을 가져왔으며

GIS(Geographical Information System) 서비스도 차

모바일 환경으로 이동하는 추세이다. 특히, 이동성을 갖

는 모바일 단말기의 치 리를 한 LBS(Location

Based Services) 기술과 더불어 모바일 GIS 기술이

속히 발 함에 따라 유비쿼터스 환경에서 공간 데이타

에 해 효율 인 질의 처리를 수행할 수 있는 공간 질

의 처리 기술에 한 연구 개발이 활발히 진행되고 있

다[1-4].

한, 모바일 단말기에서 효율 인 데이타 처리를

한 다양한 모바일 DBMS(DataBase Management

System)가 출시되고 지속 인 업그 이드가 진행되고

있다[5-7]. 이러한 모바일 DBMS는 모바일 단말기 내에

서 데이타베이스를 리하기 한 데이타베이스 리

시스템으로 최근 도로/교통, 물류/유통, 의료/보건, 시설

물 리, 공공 안 등의 다양한 분야에서 장 업무를

해 리 활용되고 있다.

그러나 이러한 모바일 DBMS는 다양한 공간 데이타

타입 공간 연산자들을 지원하지 않고 있다. 한 모바

일 GIS에서 효율 으로 공간 질의를 처리하기 해 국제

GIS 표 인 OGC[8]에서 제공하는 다양한 공간 데이타

타입 공간 연산자의 지원이 필요한 실정이다[9,10].

본 논문에서는 이러한 모바일 단말기에서 효율 인

공간 질의 처리를 제공하기 해 모바일 DBMS 기반

모바일 GIS 시스템을 연구 개발한다. 본 논문에서 개발

하는 모바일 GIS 시스템은 모바일 공간 인터페이스

리자, 모바일 공간 질의 처리 리자, 그리고 모바일 공

간 장 리자로 구성되는데, 표 인터페이스를 이용

하여 다양한 모바일 DBMS를 지원하므로 상호운용성을

향상시킬 수 있다.

모바일 공간 인터페이스 리자는 응용 로그램으로

부터 공간 데이타 삽입/삭제/갱신/검색 질의를 입력받고

싱하여 모바일 공간 질의 처리 리자로 달해주는

기능과 모바일 공간 질의 처리 리자로부터 달받은

질의 결과를 텍스트나 지도 형태로 디스 이하는 기

능을 제공한다.

모바일 공간 질의 처리 리자는 모바일 공간 인터페

이스 리자로부터 달된 질의에 한 분석 처리

기능, 모바일 단말기에 최 화된 공간 인덱스 공간

데이타 캐싱 기능을 제공한다.

모바일 공간 장 리자는 모바일 DBMS에서 공간

데이타의 압축 해제 기능, 모바일 DBMS에 공간 데

이타를 장하기 해 공간 데이타 타입을 변환하는 기

능, 모바일 DBMS와의 연계를 한 기능을 제공한다.

마지막으로 본 논문에서는 모바일 GIS 시스템을 부동

산 정보 서비스에 용해 으로써 효용성을 입증하고,

공간 데이타에 한 삽입/삭제/갱신/검색 연산의 성능

평가를 통해 공간 데이타 처리 시 모바일 GIS 시스템

성능의 우수성을 보인다.

2. 련 연구

2.1 모바일 DBMS

최근 노트북 컴퓨터나 PDA, 인터넷 속이 가능한

스마트폰 등 이동하면서 사용할 수 있는 모바일 컴퓨

단말기의 발 과 더불어 공간 한계를 갖는 기존의 오

피스 개념을 뛰어넘어 이동하면서 업무를 처리할 수 있

는 모바일 오피스가 가속화되고 있다. 이를 이용하면 언

제 어디서나 시간과 장소에 구애받지 않고 업무를 처리

할 수 있으므로 업무처리의 신속성을 높임으로써 장

서비스가 강화되며 그로인한 고객만족도 향상과 사무실

공간 축소로 인한 경비 감 등의 정 인 효과가 있는

것으로 평가된다.

이러한 모바일 서비스에 한 수요의 증가로 모바일

환경에서 용량 데이타와 다양한 질의에 한 요구가

증가하면서 모바일 DBMS에 한 심이 높아지고 있

다. 특히, PDA 장치의 특성 서비스 형태를 고려한

모바일 DBMS 련 기술에 한 연구는 기업체뿐만 아

니라 연구소나 학에서도 다양한 시도 속에서 더욱 활

발하게 이루어지고 있다[3,10].

재 모바일 DBMS는 단순히 개발자에게 손쉽게 표

SQL 질의문을 사용할 수 있는 API를 제공하는 것

뿐만이 아니라, 제한된 공간에 필요한 데이타만을 서버

측에서 다운로드 할 수 있고, 다운로드한 데이타와 서버

측 데이타간의 동기화를 제공한다. 한 특정 랫폼만

을 지원하는 것이 아닌 Windows mobile, Palm OS,

Symbian 등 다양한 랫폼을 지원함으로써 기업 내의

근무 형태나 환경에 따라 각각 다른 다양한 모바일 단

말기 수요를 충족시키고 있다.

표 인 모바일 DBMS 련 제품에는 Oracle의

Oracle Database Lite[6], Sybase의 SQL Anywhere

Ultra Lite[5], Microsoft의 SQL Server CE[7] 등이

있다. 먼 , Oracle의 Oracle Database Lite는 모바일

임베디드 환경을 한 애 리 이션을 개발, 구축

리할 수 있는 포 인 솔루션이다. Oracle Database

Lite는 Client와 Mobile Server로 구성되어 있고 Client

는 모바일 기기에 탑재되어 SQL 데이타베이스를 제공

하며 Mobile Server는 엔터 라이즈 데이타베이스 서버

와 Client 사이에 치하여 Client와 동기화를 담당한다.

그리고 사이베이스의 UltraLite는 SQL Anywhere에 속

Page 3: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

공간 데이타의 효율 인 리를 한 모바일 GIS 시스템의 개발 397

그림 1 Geometry 타입 계층구조

해있으며 스마트폰과 같은 모바일 기기에서 사용되는

가벼운 계형 데이타베이스로서 단일 데이타베이스

장소 내에서 테이블 기반의 장 공간을 제공한다. 마지

막으로, Microsoft SQL Server Compact Edition은 모

바일 데스크톱 응용 로그램에서 사용할 수 있는

소형 계형 데이타베이스이다. 특히, SQL Server

Compact Edition에서는 다른 SQL Server 버 과 공통

의 로그래 모델을 공유함으로써 개발자가 보다 쉽

고 빠르게 응용 로그램의 개발이 가능하다.

이러한 제품들은 공통 으로 Windows CE, Palm

OS 등의 다양한 모바일 랫폼을 지원하며, 표 SQL

질의 처리 기능, 엔터 라이즈 서버와의 동기화 기능,

모바일 DBMS의 회복 기능, 빠른 검색을 한 인덱스

기능 등을 제공하고 있다. 그러나 이러한 모바일

DBMS는 모바일 GIS에서 공간 데이타의 처리를 한

공간 데이타 타입, 공간 연산자, 공간 인덱스 등은 지원

하지 않고 있다.

2.2 Simple Feature Specification for SQL

OGC에서 제안한 “Simple Feature Specification for

SQL”[8]은 ODBC API를 경유하는 심 공간 피쳐 집합

의 장, 검색, 질의, 그리고 갱신을 지원하는 표 SQL

스키마를 정의하고 있다. 그림 1은 Geometry Class 계

층 구조를 보여 다.

그림 1에서 보는 것과 같이 계층 구조의 최상 타입

인 Geometry는 Point, Curve, Surface, GeometryCol-

lection의 하 타입을 갖는다. 여기서 동종의 Geometry

타입은 Point, Curve, Surface이고, 이종의 Geometry

타입은 GeometryCollection이다. 동종의 Geometry 타

입 가운데, Point 타입은 0차원의 geometric object이고,

좌표값 한 개를 의미한다. Curve 타입은 1차원의

geometric object이고, 하 타입으로 LineString 타입

을 가진다. LineString 타입은 하 타입으로 두 개

만으로 이루어진 Line 타입과 단순하게 닫힌 형태의

LineSting으로 이루어진 LinearRing 타입을 가진다.

Surface 타입은 2차원의 geometric object이고, 하

타입으로 1개 이상의 LinearRing으로 이루어진 Polygon

타입과 1개 이상의 서로 붙어있는 Polygon들로 이루어

진 PolyhedralSurface 타입을 가진다.

이종의 Geometry 타입은 GeometryCollection이고,

하 타입으로 MultiPoint, MultiCurve, MultiSurface

를 가진다. MultiPoint 타입은 0차원의 geometric

object이고, 서로 다른 2개 이상의 좌표로 구성된다.

MultiCurve 타입은 1차원의 geometric object이고, 하

타입으로 LineString의 집합으로 이루어진 Multi-

LineString 타입을 가진다. MultiSurface 타입은 2차원

의 geometric object이고, 하 타입으로 Polygon의 집

합으로 이루어진 MultiPolygon 타입을 가진다.

그림 1의 계층 구조에서 보이는 SQL Geometry 타입

Geometry, Curve, Surface, MultiCurve는 인스턴스

를 생성할 수 없는(non-instantiable) 공간 데이타 타입

이다. 따라서 SQL에서 사용 가능한 인스턴스를 생성할

수 있는(instantiable) 공간 데이타 타입은 의 4개 타

Page 4: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

398 정보과학회논문지 : 데이타베이스 제 38 권 제 6 호(2011.12)

그림 2 체 시스템 구성도

표 1 공간 데이타 타입의 WKT 표

공간 데이타 타입 WKT 표

Point POINT (10 10)

LineString LINESTIRNG (10 10, 20 20, 30 40)

Polygon POLYGON ((10 10, 10 20, 20 20, 20

15, 10 10))

MultiPoint MULTIPOINT (10 10, 20 20)

MultiLineString MULTILINESTRING ((10 10, 20 20),

(15 15, 30 15))

MultiPolygon

MULTIPOLYGON (

((10 10, 10 20, 20 20, 20 15, 10 10)),

((60 60, 70 70, 80 60, 60 60)) )

PolyhedralSurface

POLYHEDRALSURFACE (

((30 30, 30 40, 40 40, 40 35, 30 30)),

((80 80, 50 50, 60 40, 40 40)) )

GeometryCollection

GEOMETRYCOLLECTION (

POINT (10 10), POINT (30 30),

LINESTRING (15 15, 20 20) )

입을 제외한 나머지 8가지이며, 표 1은 이러한 인스턴스

생성이 가능한 타입들의 WKT(Well-Known Text) 표

을 보여 다.

표 1에서 보는 바와 같이 WKT 표 은 기본 으로

“공간 데이타 타입(좌표값, 좌표값, ...)”으로 나타나며,

GeometryCollection 타입의 경우에는 좌표값 부분에

Point, LineString, Polygon과 같은 공간 데이타 타입의

WKT 표 이 들어가게 된다.

3. 시스템 설계

본 장에서는 모바일 GIS 시스템의 체 구조

반 인 설계에 해서 자세히 설명한다.

3.1 시스템 구조

그림 2는 본 논문에서 개발한 모바일 GIS 시스템의

체 구조를 보여 다. 그림 2에서 보는 바와 같이 모바

일 GIS 시스템은 크게 모바일 공간 인터페이스 리자,

모바일 공간 질의 처리 리자, 모바일 공간 장 리

자로 구성되며, 모바일 DBMS와 상호연계를 통해 공간

데이타를 리한다.

3.2 모바일 공간 인터페이스 리자

3.2.1 입/출력 모듈

입/출력 모듈은 응용 로그램으로부터 공간 데이타

삽입/삭제/갱신/검색 질의를 입력받아 SQL 서 모듈로

달하고, 모바일 공간 질의 처리 리자가 반환한 질의

결과 는 일련의 처리 과정에서 발생하는 에러를 응용

로그램에 달하는 기능을 제공한다.

3.2.2 SQL 서 모듈

SQL 서 모듈은 입/출력 모듈로부터 입력된 공간

SQL 구문을 싱하며, 정상 으로 공간 SQL 싱 작

업이 완료된 질의를 모바일 공간 질의 처리 리자에

달하는 기능을 제공한다. SQL 서 모듈은 입력받은

질의를 숫자와 문자(keyword, non-keyword) 토큰으로

분리하여 장하고, 이를 바탕으로 의미있는 문장을 인

식하며, OGC의 “Simple Feature Specification for

Page 5: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

공간 데이타의 효율 인 리를 한 모바일 GIS 시스템의 개발 399

표 2 공간 연산자

공간 계

연산자

Equals(g1 Geometry, g2 Geometry) 주어진 g1과 g2가 동일한지 여부를 반환한다.

Disjoint(g1 Geometry, g2 Geometry) 주어진 g1과 g2가 분리되는지 여부를 반환한다.

Touches(g1 Geometry, g2 Geometry) 주어진 g1과 g2가 만나는지 여부를 반환한다.

Within(g1 Geometry, g2 Geometry) 주어진 g1에 g2가 포함되는지 여부를 반환한다.

Overlaps(g1 Geometry, g2 Geometry) 주어진 g1과 g2가 첩되는지 여부를 반환한다.

Crosses(g1 Geometry, g2 Geometry) 주어진 g1과 g2가 가로지르는지 여부를 반환한다.

Intersects(g1 Geometry, g2 Geometry) 주어진 g1과 g2가 교차하는지 여부를 반환한다.

Contains(g1 Geometry, g2 Geometry) 주어진 g2가 g1에 포함하는지 여부를 반환한다.

Relate(g1 Geometry, g2 Geometry,

patternMatrix String)주어진 g1과 g2가 패턴매트릭스를 만족하는지 여부를 반환한다.

공간분석

연산자

Intersection (g1 Geometry, g2 Geometry) 주어진 g1과 g2의 교집합을 반환한다.

Difference (g1 Geometry, g2 Geometry) 주어진 g1에서 g2의 차집합을 반환한다.

Union (g1 Geometry, g2 Geometry) 주어진 g1과 g2의 합집합을 반환한다.

Distance(g1 Geometry, g2 Geometry) 주어진 g1과 g2의 거리를 반환한다.

Buffer (g1 Geometry, d Double) 주어진 g1의 역에서 d의 거리만큼 확장된 역을 반환한다.

SQL”에 제시된 공간 데이타 타입과 공간 SQL 구문을

지원한다.

3.2.3 디스 이 모듈

디스 이 모듈은 모바일 단말기에서 지도 화면을 확

는 축소하여 디스 이하는 Zoom In/Zoom Out

기능과 지도 화면을 원하는 방향으로 이동하여 디스

이하는 Pan 기능을 제공한다. Pan 기능은 일정 크기의

X, Y 좌표값 만큼 이동함으로써 동, 서, 남, 북으로 이동

할 수 있고, Zoom In/Zoom Out 기능은 재 역에

하여 ZOOM_RATE에 맞추어 확 축소할 수 있다.

3.3 모바일 공간 질의 처리 리자

3.3.1 질의 처리 모듈

질의 처리 모듈은 공간 데이타 타입과 공간 연산자를

이용하여 유비쿼터스 컴퓨 환경의 다양한 공간 데이

타에 한 검색, 삽입, 삭제, 갱신 연산을 수행하는 기능

을 제공한다. 특히 OpenGIS “Simple Features Speci-

fication for SQL”에서 명시하는 공간 연산자들을 지원

한다. 표 2는 질의 처리 모듈에서 지원하는 공간 계

연산자(Spatial Relation Operators) 공간 분석 연산

자(Spatial Analysis Operators)를 보여 다.

표 2에서 보는바와 같이 질의 처리 모듈은 Equals,

Disjoint, Touches, With in, Overlaps, Crosses, Inter-

sects, Contains의 8개 공간 계 연산자와 Distance,

Intersection, Difference, Union, Buffer의 5개 공간 분

석 연산자를 지원한다.

3.3.2 공간 인덱스 모듈

공간 인덱스 모듈은 공간 데이타를 효율 으로 검색

하기 해 모바일 단말기에 최 화된 RSMBR(Relative-

Sized MBR) 압축 기법[11]과 버퍼를 이용한 R-tree

(a) 좌표 MBR (b) RSMBR

(c) RSMBR 데이타 장 구조

그림 3 RSMBR 압축 기법 구조

인덱스를 제공하며, 모바일 DBMS와의 효율 인 연동

을 하여 공간 데이타에 한 RID(Row-ID)를 생성

장하는 기능을 제공한다. 그림 3은 RSMBR 압축

기법 를 보여 다.

그림 3(a)에서 보는 바와 같이 좌표 MBR은

MBR의 좌하 과 우상 을 각각의 좌표로 표 하

므로 좌표마다 8바이트씩 총 32바이트의 장 공간이

필요하지만, 그림 3(b)에서 보는 바와 같이 RSMBR 압

축 기법에서 MBR의 좌하 은 부모 노드를 기 으로

상 좌표로 표 하고, MBR의 우상 은 MBR의 크기

로 표 한다. 그림 3(c)에서 보는 바와 같이 RSMBR

데이타 장 구조는 2바이트의 좌하 의 상 좌표, 3비

트의 우상 의 길이 래그, 4비트에서 16비트의 우상

의 실제 값으로 이루어진다. 그러므로 RSMBR 압축 기

법을 이용하면 한 MBR을 장하기 해서 최소 8바이

트에서 최 12바이트의 장 공간을 사용하게 된다.

Page 6: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

400 정보과학회논문지 : 데이타베이스 제 38 권 제 6 호(2011.12)

3.3.3 버퍼 리 모듈

버퍼 리 모듈은 공간 인덱스의 성능을 향상시키고

모바일 단말기의 래시 메모리에 공간 데이타를 효율

으로 장하고 리하기 한 모듈이다. 즉, 삽입/삭

제/갱신 버퍼를 사용하여 공간 데이타를 장하고 있다

가 공간 인덱스에 반 시 한꺼번에 일 으로 공간

인덱스에 삽입/삭제/갱신한다. 그림 4는 이러한 버퍼를

이용한 인덱스 구조를 보여 다[12].

그림 4 버퍼를 이용한 인덱스 구조

그림 4에서 보는 바와 같이 일 으로 공간 인덱스에

삽입/삭제/갱신하므로 래시 메모리의 쓰기 연산 횟수를

이고, 노드를 참조하는 포인터를 이용하여 공간 데이타

를 직 근하여 빠른 삽입/갱신/삭제 연산이 가능하다.

3.3.4 데이타 캐시 모듈

데이타 캐시 모듈은 모바일 단말기에서 용량의 공

간 데이타의 검색 효율을 높이기 해 사용자의 치를

기반으로 요청되리라 상되는 주변 데이타를 리하는

치 기반 데이타 리 기능과 검색된 데이타를 사용자

가 정의한 요도에 따라 요도에 따라 이어로 리

하는 요도 기반 데이타 리 기능을 제공한다.

3.4 모바일 공간 장 리자

3.4.1 데이타 압축 모듈

데이타 압축 모듈은 산술 연산 코딩 기법[12]을 사용

하여 공간 데이타를 압축하는 기능을 제공한다. 그림 5

는 산술 연산 코딩 기법의 공간 데이타 압축 구조와 공

간 데이타 압축의 를 보여 다.

그림 5(a)에서 보는 바와 같이 맨 앞의 1비트 래그는

(a) 공간 데이타 압축 구조

(b) 공간 데이타 압축의

그림 5 공간 데이타 압축 구조

양수인지 음수인지를 표시하고, 정수부, 실수부 래그는

실제 값이 차지하는 비트의 크기를 표시함으로써 최소 2

바이트에서 최 6바이트까지 압축이 가능하다. 그림

5(b)의 에서 보는 바와 같이 산술 연산 코딩 기법은

Polygon의 첫 번째 X 좌표값인 207068.9921과 두 번째

X 좌표값인 207061.114의 차이 값인 +7.8781을 압축한다.

3.4.2 공간 데이타 타입 변환 모듈

공간 데이타 타입 변환 모듈은 공간 데이타를 바이

리로 변환하는 기능과 공간 질의문을 매핑 룰에 따라

변환하는 기능을 제공한다. 그림 6은 공간 데이타 타입

별 장 구조를 보여 다.

그림 6 공간 데이타 타입별 장 구조

그림 6에서 보는 바와 같이 본 논문에서는 공간 데이

타를 바이 리로 변환하여 장한다. 이 게 바이 리로

장된 공간 데이타를 처리하기 해 공간 질의문은 변

환 테이블에 장된 매핑 룰에 따라 변환된다. 그림 7은

공간 데이타 타입 변환 모듈에서 테이블 생성시 변환

방법을 보여 다.

그림 7에서 보는 바와 같이 ADDRESS 테이블을 생

성하면 변환 테이블이 없을 경우 변환 테이블(trans-

Column)을 생성하고, 변환 테이블에 ADDRESS 테이

블의 Boundary 컬럼의 데이타 타입이 polygon이라는

정보가 입력된다. 한 실제 모바일 DBMS에는 ADDRESS

테이블이 ADDRESS(ID(integer), Name(char), Boundary

(Blob), Rid (integer))로 변환되어 생성된다. 그림 8은

공간 데이타 타입 변환 모듈에서 데이타 장시 변환

방법을 보여 다.

그림 8에서 보는 바와 같이 공간 데이타 장시 입력

된 질의문과 변환 테이블을 통하여 공간 데이타 타입의

컬럼인지 확인한 후 질의문의 공간 데이타 부분인

POLYGON(806, 282, 806, 287, 813, 286, 812, 301, 818,

300, 818, 280, 806, 282)을 ‘?’로 바꾸고, 공간 인덱스와

의 연계를 해 시스템에서 생성한 Rid 값인 100을 추가

Page 7: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

공간 데이타의 효율 인 리를 한 모바일 GIS 시스템의 개발 401

그림 7 테이블 생성시 변환 방법

그림 8 데이타 장시 변환 방법

그림 9 데이타 검색시 변환 방법

하여 모바일 DBMS에 장한다. 그림 9는 공간 데이타

타입 변환 모듈의 데이타 검색시 변환 방법을 보여 다.

그림 9에서 보는 바와 같이 공간 데이타 검색시 입력

된 질의문과 변환 테이블을 통하여 공간 데이타 타입의

컬럼인지 확인한 후 공간 인덱스에서 polygon을 검색한

다. 공간 인덱스에서 검색된 결과를 바탕으로 질의문을

Select id, name, boundry, rid from ADDRESS where

rid = 101 or rid = 105 or rid = 110; 으로 재작성하여

모바일 DBMS에 질의문을 실행하고 검색된 결과를 바

탕으로 공간 연산을 수행한다. 마지막으로 수행된 공간

연산 결과에서 해당하지 않는 결과를 제거한 후 질의

결과를 돌려 다.

3.4.3 DB 커넥터 모듈

DB 커넥터 모듈은 모바일 DBMS와 모바일 GIS 시

스템간에 데이타를 교환하기 해 데이타 장/삭제/검

색/갱신 요청시 ODBC(Open DataBase Connectivity)

표 인터페이스를 이용하여 모바일 DBMS와 연계하는

기능을 제공한다.

4. 시스템 구 검증

4.1 시스템 구

모바일 GIS 시스템을 구 하기 하여 운 체제로는

Windows XP sp3를 사용하 고, 개발 도구로는 Visual

Studio 2005에 Windows Mobile 5.0 SDK for Pocket PC

Page 8: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

402 정보과학회논문지 : 데이타베이스 제 38 권 제 6 호(2011.12)

를 설치하 다. 한 모바일 GIS 시스템은 Windows CE

를 기반으로 구 되었다. 그리고, Windows Mobile 5.0 운

체제를 사용하는 HP iPAQ rx1950에 Oracle Database

Lite 10g R2를 설치하여 모바일 GIS 시스템을 실행하 다.

4.2 시스템 검증

모바일 GIS 시스템의 효용성을 검증하기 해 다양한

모바일 GIS 응용 분야 모바일 부동산 정보 서비스를

시나리오로 용하 다. 모바일 부동산 정보 서비스 시

나리오는 부동산 정보를 장하기 한 테이블 생성, 부

동산 매물 정보 장, 그리고 원하는 지역 내의 부동산

정보 검색으로 구성된다. 그림 10은 부동산 정보 서비스

에서 부동산 정보를 장하기 한 테이블 생성 화면을

보여 다.

그림 10에서 보는 바와 같이 사용자는 부동산 데이타

를 장하기 해 컬럼들의 정보를 입력한 후 테이블을

생성한다. 그리고 사용자로부터 입력된 정보를 바탕으로

공간 데이타 타입을 갖는 컬럼의 데이타 타입을 변환하

고 RID 컬럼을 추가하여 부동산 정보 테이블을 생성하

고, 변환된 공간 데이타 타입의 정보를 장하기 한 변

환 테이블을 생성한다. 마지막으로 변환 테이블에 공간

데이타 타입의 컬럼 정보를 입력한다. 그림 11은 생성된

테이블에 부동산 매물 데이타를 입력하는 화면을 보여 다.

그림 11에서 보는 바와 같이 부동산 매물 데이타를

입력하면 입력된 데이타에 시스템에서 생성한 RID 값을

추가하여 질의를 작성한다. 작성된 질의를 모바일 DBMS

에 실행하면 오른쪽 화면에서와 같이 질의가 실행된 결

과가 나타난다. 그림 12는 부동산 정보 서비스에서 특정

지역 내의 부동산 정보를 검색하는 화면을 보여 다.

그림 12에서 보는 바와 같이 특정 지역 내의 부동산

그림 10 테이블 생성 화면

그림 11 부동산 매물 데이타 입력 화면

그림 12 부동산 정보 검색 화면

정보를 검색하기 해서 검색 범 를 설정하고 공산 연

산자 Contains를 선택하여 검색을 실행하면, 공간 데이

타 검색 질의가 작성된다. 모바일 GIS 시스템에서 이

게 작성된 공간 데이타 검색 질의를 실행하면 오른쪽 화

면과 같이 검색 범 내의 부동산 정보들을 확인할 수 있다.

4.3 성능 평가

본 논문에서 개발한 모바일 GIS 시스템의 성능을 평

가하기 해 Windows Mobile 5.0 운 체제를 사용하

는 HP iPAQ rx1950에 Oracle Database Lite 10g R2

와 모바일 GIS 시스템을 설치하 다. 모바일 GIS 시스

Page 9: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

공간 데이타의 효율 인 리를 한 모바일 GIS 시스템의 개발 403

템과 Oracle Database Lite와의 성능을 비교 평가하기

한 실험 데이타는 서울시 건물 데이타를 사용하 다.

서울시 건물 데이타의 객체 수는 248,321개이고, 각각의

객체는 실수형으로 최소 8개에서 최 120개의 포인터

수를 가진다.

4.3.1 삽입 연산 성능

삽입 연산의 실험을 해 서울시 건물 데이타

2,000개에서 10,000개의 객체를 임의로 선정하여 삽입하

다. 각 삽입 객체 수에 따라 각각 50번의 삽입 연산을

수행한 평균값으로 모바일 GIS 시스템과 Oracle Data-

base Lite 간의 성능을 비교하 다. 그림 13은 각각의

삽입 객체 수에 따른 삽입 연산 수행 시간을 보여 다.

그림 13 삽입 연산 수행 시간

그림 13에서 보는 바와 같이 모바일 GIS 시스템은 기

존의 Oracle Database Lite에 비해 평균 17%의 시간이

더 소모되는 것을 보 다. 이는 모바일 GIS 시스템에서

공간 데이타 삽입 시 공간 데이타를 바이 리로 변환한

다음 압축하여 장하기 때문이다. 한 모바일 GIS 시

스템은 공간 삽입문을 매핑룰에 따라 변환하여 모바일

DBMS에서 실행하기 때문에 기존의 방식보다 좋지 않

은 삽입 성능 평가 결과를 보여주었다. 그림 14는 각각

의 삽입 객체 수에 따른 장 공간의 크기를 보여 다.

그림 14 삽입 연산 장 공간 크기

그림 14에서 보는 바와 같이 모바일 GIS 시스템은

기존의 Oracle Database Lite에 비해 평균 22%의 성능

향상을 보 다. 이는 모바일 GIS 시스템에서 공간 데이

타 삽입 시 공간 데이타를 바이 리로 변환한 다음 압

축하여 장하기 때문에 기존의 방식보다 좋은 삽입 성

능 평가 결과를 보여 다.

4.3.2 삭제 연산 성능

삭제 연산의 실험을 해 서울시 건물 데이타에 해

서 10%에서 50%의 공간 객체를 임의로 선정하여 삭제

연산을 수행하 다. 삭제 상 객체는 체 서울시 건물

데이타 좌표의 최소 좌표와 최 좌표 사이에서 임의로

선정한 좌표를 사용하 으며 각 삭제 객체 수에 따라

각각 50번의 삭제 연산을 수행한 평균값으로 모바일

GIS 시스템과 Oracle Database Lite 간의 성능을 비교

하 다. 그림 15는 삭제 연산을 수행한 결과를 보여

다.

그림 15 삭제 연산 수행 시간

그림 15에서 보는 바와 같이 모바일 GIS 시스템은

기존의 Oracle Database Lite에 비해 평균 50%의 성능

향상을 보 으며, 삭제 객체 수가 감소할수록 더 좋은

성능을 보여주고 있다. 이는 모바일 GIS 시스템에서 공

간 데이타 삭제 시 장된 체 공간 데이타에 해서

직 삭제 연산을 수행하는 신에 공간 인덱스를 통한

삭제 연산을 수행하므로 기존의 방식보다 좋은 삭제 성

능 평가 결과를 보여 다.

4.3.3 갱신 연산 성능

갱신 연산의 실험을 해 서울시 건물 데이타에 해

서 10%에서 50%의 공간 객체를 임의로 선정하여 갱신

연산을 수행하 다. 갱신 상 객체는 체 서울시 건물

데이타 좌표의 최소 좌표와 최 좌표 사이에서 임의로

선정한 좌표를 사용하 으며 각 갱신 객체 수에 따라

각각 50번의 갱신 연산을 수행한 평균값으로 모바일

GIS 시스템과 Oracle Database Lite간의 성능을 비교

하 다. 그림 16은 갱신연산을 수행한 결과를 보여 다.

Page 10: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

404 정보과학회논문지 : 데이타베이스 제 38 권 제 6 호(2011.12)

그림 16 갱신 연산 수행 시간

그림 16에서 보는 바와 같이 모바일 GIS 시스템은

기존의 Oracle Database Lite에 비해 평균 45%의 성능

향상을 보 으며, 갱신 객체 수가 감소할수록 더 좋은

성능을 보여주고 있다. 이는 공간 데이타 삭제 시와 같

이 공간 데이타 갱신 시 장된 체 공간 데이타에

해서 직 갱신 연산을 수행하는 신에 공간 인덱스를

통한 갱신 연산을 수행하므로 기존의 방식보다 좋은 갱

신 성능 평가 결과를 보여 다.

4.3.4 검색 연산 성능

검색 연산의 실험을 해 서울시 건물 데이타에 해

서 10%에서 50%의 공간 객체를 임의로 선정하여 검색

연산을 수행하 다. 검색 상 객체는 체 서울시 건물

데이타 좌표의 최소 좌표와 최 좌표 사이에서 임의로

선정한 좌표를 사용하 으며, 각 검색 객체 수에 따라 각

각 50번의 검색 연산을 수행한 평균값으로 모바일 GIS

시스템과 Oracle Database Lite간의 성능을 비교하 다.

그림 17은 검색 연산을 수행한 결과를 보여 다.

그림 17에서 보는 바와 같이 모바일 GIS 시스템은

기존의 Oracle Database Lite에 비해 평균 55%의 성능

향상을 보 으며, 검색 객체 수가 감소할수록 더 좋은

성능을 보여주고 있다. 이는 공간 데이타 검색 시 기존

그림 17 검색 연산 수행 시간

의 모바일 DBMS에서는 장된 체 공간 데이타에

해서 직 검색 연산을 수행하는 신에 공간 인덱스를

통한 검색 연산을 수행하므로 기존의 방식보다 좋은 검

색 성능 평가 결과를 보여 다.

5. 결 론

최근 무선 통신 기술의 발 과 모바일 단말기 사용의

보편화로 인하여 GIS 서비스가 차 모바일 환경으로

이동하는 추세이며 그로 인해 모바일 GIS 기술도 격

히 발 하고 있다. 재 모바일 GIS 응용 서비스들은

모바일 DBMS를 기반으로 하고 있으나 모바일 DBMS

는 국제 GIS 표 인 OGC에서 제공하는 다양한 공간

데이타 타입 공간 연산자들을 제 로 지원하지 못하

고 있다.

따라서, 본 논문에서는 이를 해결하기 해 공간 데이

타의 효율 인 처리를 지원하는 모바일 GIS 시스템을

설계 구 하 다. 모바일 GIS 시스템은 공간 데이타

타입 공간 연산자를 지원하고 공간 데이타 캐싱 기

능, 인덱스, 압축 기법, 그리고 공간 데이타 타입을 변환

하여 모바일 DBMS에 장하는 기능을 제공한다.

본 논문에서 모바일 GIS 시스템을 부동산 정보 서비

스에 한 시나리오를 수행함으로써 본 시스템이 모바

일 환경에서 공간 데이타 처리가 필요한 다양한 응용

분야에 유용하게 사용될 수 있음을 검증하 다. 한,

공간 데이타의 삽입/삭제/갱신/검색 연산에 한 성능

평가를 통해 모바일 GIS 시스템이 기존의 모바일

DBMS에 비해 효율 인 공간 질의 처리 성능을 보임을

입증하 다.

참 고 문 헌

[ 1 ] ESRI, ESRI Shapefile Technical Description, 1998.

[ 2 ] ETRI, FUNs Specification (Core) - (Flash-aware

Ubiquitous Navigation System), Version 1.0, 2008.

[ 3 ] 노승기, 이정 , 이상호, 오용철, “PDA기반 단일사용

자 데이타베이스 리 시스템 설계 구 ,” 한국정

보과학회 한국컴퓨터종합학술 회 논문집(C), pp.109-111,

2006.

[ 4 ] 윤재 , 장염승, 한기 , “모바일 GIS를 한 치 기

반 서비스,” 한국정보과학회 데이타베이스 연구지, 제

18권, 제1호, pp.3-15, 2002.

[ 5 ] iAnywhere Solutions, UltraLite SQL Reference,

2010.

[ 6 ] Oracle, Oracle Database Lite - SQL Reference., 2008.

[ 7 ] Rob, T., "SQL Server CE Database Development

with the .NET Compact Framework," 2003.

[ 8 ] Open Geospatial Consortium, Inc, OpenGIS Imple-

mentation Specification for Geographic Information-

Simple Feature Access-Part 2:SQL Option, Ver-

sion 1.2.1, 2010.

Page 11: (Development of a Mobile GIS System for Efficient Management …kiise.or.kr/e_journal/2011/12/db/pdf/06.pdf · 2011-12-14 · 공간 데이타의 효율적인 관리를 위한 모바일

공간 데이타의 효율 인 리를 한 모바일 GIS 시스템의 개발 405

[ 9 ] 시종익, “기존 GIS DB를 활용한 모바일 서비스용

GIS DB 구축 지침 연구”, 한국 산원, 2003.

[10] 안경욱, 안경환, 김주완, 진성일, “실시간 맵 업데이트

를 한 모바일 공간 DBMS 개발”, 한국GIS학회 공

동춘계학술 회 논문집, pp.37-40, 2008.

[11] 김정 , 강홍구, 김동오, 한기 , “메인 메모리 다차원

인덱스를 한 효율 인 MBR 압축 기법”, 한국공간

정보시스템학회 논문지, 제9권 제2호, pp.13-23, 2007.

[12] 김정 , 심희정, 강홍구, 이기 , 한기 , “ 래시 메모

리 기반 효율 인 공간 인덱스”, 한국공간정보시스템

학회 논문지, 제11권 제2호, pp.133-142, 2009.

김 정

2003년 건국 학교 컴퓨터공학 공학사

2005년 건국 학교 학원 공학석사. 2010

년 건국 학교 학원 공학박사. 2010

년~ 재 건국 학교 컴퓨터공학부 강의

교수. 심분야는 공간 데이타베이스, 시

공간 데이타베이스, GIS, LBS, 텔 매틱

스, USN, Geo Semantic Web

신 인 수

2006년 건국 학교 컴퓨터공학 공학사

2008년 건국 학교 학원 공학석사. 2008

년~ 재 건국 학교 컴퓨터공학 박사과

정. 심분야는 공간 데이타베이스, GIS,

LBS, 텔 매틱스

한 기

1979년 서울 학교 수학교육학 이학사

1981년 한국과학기술원(KAIST) 공학석

사. 1985년 한국과학기술원(KAIST) 공

학박사. 1985년~ 재 건국 학교 컴퓨

터공학부 교수. 1990년 Stanford 학

산학과 Visiting Scholar. 2000년~

2002년 한국정보과학회 데이타베이스 연구회 운 원장

2004년~2006년 한국공간정보시스템학회 회장. 2004년~

2008년 한국정보시스템감리사 회 회장. 2007년~ 재 국토

해양부 지능형국토정보기술 신사업단 과제총 원장.

심분야는 공간 데이타베이스, GIS, LBS, 텔 매틱스, 정보

시스템 감리