실시간데이타베이스시스템을이용한 mobilegis에관한연구 · 실시간...

143
-1- 실시간 데이타베이스 시스템을 이용한 에 관한 연구 Mobile GIS 2002. 7. 31. 주관연구기관 건국대학교 정보통신연구진흥원

Upload: others

Post on 31-Oct-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

- 1 -

실시간 데이타베이스 시스템을 이용한

에 관한 연구Mobile GIS

2002. 7. 31.

주관연구기관 건국대학교

정 보 통 신 부

정 보 통 신 연 구 진 흥 원

- 2 -

제 출 문

정보통신부장관 귀하

본 보고서를 실시간 데이타베이스 시스템을 이용한 에 관한 연구 의 최종 연구" Mobile GIS "

개발결과 보고서로 제출합니다.

년 월 일2002 7 31

주관연구기간 : 건국대학교

과제 책임자 : 한 기 준

참여 연구원 : 윤 재 관

김 동 오

- 3 -

요 약 문

제 목1.

실시간 데이타베이스 시스템을 이용한 에 대한 연구Mobile GIS

연구의 목적 및 중요성2.

최근 컴퓨터의 대용량화 및 고성능화에 따라 에 근거GIS(Geographic Information System)

한 다양한 형태의 응용 시스템들이 연구 및 개발되고 있다 이러한 연구 및 개발은 이전에.

는 주로 를 위한 데이타베이스 기술 측면을 기준으로 많이 진행되었지만 무선 인터넷과GIS ,

와 같은 장치의 발전으로 인하여 점차적으로 사용자의 위치 정보를 기반PDA, HPC Mobile

으로 한 의 형태로 발전되어 가고 있다Mobile GIS .

를 통해 위치 기반 서비스 를 효과적으로 제공Mobile GIS (LBS: Location Based Service)

하기 위해서는 서버에서 동적인 상황 예 차량의 움직임이나 개개인의 위치 파악 을 빠르게( , )

파악하여 처리할 수 있는 실시간 엔진과 작은 양의 기억장치 낮은 처리 능력을 가지는GIS ,

장치에서 데이타를 효율적으로 관리할 수 있는 클라이언트가 필요하다 그Mobile Mobile .

러나 이전의 정적인 데이타를 주로 처리하는 나 에서 사용되는 기술은 이러한 동, GIS DBMS

적인 데이타의 처리 기능이 미비하므로 에 적합하지 않았다 그러므로 본 연구Mobile GIS . ,

에서는 효율적인 위치기반 서비스를 제공하기 위하여 실시간 데이타베이스 시스템을 이용한

에 대하여 연구한다Mobile GIS .

- 4 -

연구의 내용 및 범위3.

는 이전의 에서 사용되는 지도 데이타와 같은 정적인 데이타와 특정 시점에Mobile GIS GIS

사용자의 위치 정보와 같은 위치 데이타가 사용된다 를 통하여 입력되는 이러한 위치. GPS

데이타는 그 특성상 갱신 작업이 많고 수신율이 좋지 않은 지역에서는 데이타의 손실이 발,

생할 수 있는 특성을 가지고 있다 이러한 데이타의 처리를 위해서 실시간 데이타베이스 시.

스템을 이용한 를 사용하게 되면 매우 효과적이다 본 연구에서 개발한 실시간Mobile GIS .

데이타베이스 시스템을 이용한 는 크게 실시간 엔진 미들웨어 그리고Mobile GIS GIS , ,

클라이언트로 구성되어 있다 특히 다양한 위치 기반 서비스 시스템들의 상호 운용Mobile . ,

성을 위해 본 연구에서는 의 사양을 수용하였다OGC OpenLS .

실시간 엔진은 기존의 실시간 데이타베이스 시스템의 기능에 공간 데이타 타입 공GIS HP ,

간 데이타의 삽입 검색 삭제 갱신기능 그리고 공간 연산 기능이 추가되어 있다 또한 공, , , , . ,

간 질의를 처리할 수 있으며 사용자의 위치 정보를 신속하게 처리할 수 있도록 공간 비공, /

간 인덱스를 관리한다 그리고 백엔드 로부터 데이타를 적재하기 위한 데이타 로더 위. , GIS ,

치 데이타를 분산 저장하기 위한 위치 데이타 관리자 레이어를 관리하기 위한 레이어 관리,

자 등을 가지고 있다.

미들웨어는 실시간 엔진과 클라이언트 사이에 위치하여 클라이언트에GIS Mobile Mobile

서 요청한 질의를 파악하고 실시간 엔진에 질의 처리를 요청하여 처리 결과를 반환하는, GIS

기능을 가지고 있다 미들웨어는 질의 관리자 공간 연산 관리자 공간 알고리즘 관리자 데. , , ,

이타 추출기 서버 리스트 관리자 그리고 데이타 전송 관리자로 구성되어 있다, , .

- 5 -

클라이언트는 및 기반의 운영체제에서 위치 기반Mobile Windows CE Embedded Linux

서비스와 같은 서비스를 제공하기위한 기능을 제공한다 클라이언트는Mobile . Mobile GPS

드라이버 데이타 수신 관리자 좌표 변환 관리자 좌표 매핑 모듈 디스플레이 관리자, GPS , , , ,

그리고 인터페이스 관리자로 구성되어 있다.

연구결과4.

본 보고서의 각 장별로 기술되어 있는 주된 연구결과를 요약정리하면 다음과 같다.

제 장1

본 연구의 배경과 목적을 언급하였다- .

제 장2

무선 데이타 통신 에 대하여 설명하고 국내외의 현황에- , GPS, Mobile GIS , Mobile GIS

대하여 조사하였으며 본 연구에서 기능을 확장시킨 실시간 데이타베이스 시스템에 대, HP

하여 기술하였다.

제 장3

의 현재 추세인 위치 기반 서비스의 개념과 위치 기반 서비스를 위해서 국내- Mobile GIS

외 표준화 단체들이 수행중인 서비스 표준화와 프로토콜 표준화에 대하여 설명하였다.

- 6 -

제 장4

실시간 데이타베이스 시스템을 이용한 에 대한 시스템 설계와 각 부분별 관- Mobile GIS

리자들에 대하여 설명하였다.

제 장5

실시간 데이타베이스 시스템을 이용한 에 대한 시스템의 구현 방법과 결과물- Mobile GIS

에 대하여 기술하였다.

제 장6

본 연구의 결론과 향후 연구 과제에 대해서 언급하였다- .

활용에 대한 건의5.

본 연구로서 얻어지는 결과는 많은 분야에서 활용될 수 있다 우선 무선 인터넷 통신을 이.

용한 기술을 확보하게 됨으로써 다양한 형태의 무선 컴퓨팅 시스템의 개발에 적용할 수 있

다 즉 현재 많은 분야에서 관심을 가지고 있는 이동 전화를 이용한 전자 상거래 시스템인. ,

이동 전화로 기업내 공지사항이나 메일 확인 일‘m-commerce(Mobile e-commerce)', E- ,

정관리 등의 회사업무를 처리할 수 있는 모바일 웍스 등에 적용할 수 있’Mobile Works( )'

다 또한 동적으로 변하는 데이타를 저장하기 위한 실시간 엔진에 대한 기술은 기존의. , GIS

데이타베이스 시스템이 효율적으로 지원하지 못한 실시간 환경에 적용될 수 있다 즉 실시. ,

간환경에서 대규모의 사용자들이 요구하는 다양한 형태의 질의를 좀 더 효율적으로 신속하

게 처리하여 결과를 보여줄 수 있게 된다.

- 7 -

특히 본 연구의 결과는 나 의 분야에서 많이 활용될 수 있는데 우선 차량 등의 위, ITS LBS ,

치 파악 및 이 결과로 얻어지는 정체 현상의 파악 그리고 이로 인하여 실시간으로 변경되,

는 목적지까지의 최단 경로 탐색 등에 이용될 수 있다 또한 장치를 가지고 있는 개. , Mobile

인이 현재 위치로부터 목적지까지의 최단경로 검색 특정 위치 파악 경로 추적 도로정보나, , ,

새로운 건물의 생성 등에 따른 간단한 공간 및 비공간 데이타의 삽입 갱신 삭제 등에 사, ,

용될 수 있다.

기대효과6.

효율적인 위치 기반 서비스를 지원하기 위한 고유의 실시간 기술이 연구 개발Mobile GIS

되면 에 대한 시장 및 위치 기반 서비스가 활성화될 것이고 다양한 형태의Mobile GIS ,

장치와 개방형 위치 기반 서비스를 지원하는 실시간 를 이용한 응용 분Mobile Mobile GIS

야가 늘어나게 될 것이다 그리고 분산 네트워크가 점차적으로 파급되면서 전국 지도에 대. ,

한 공간 및 비공간 데이타를 중앙 집중형의 서버 형태로 관리하는 것으로부터 벗어나 작은

규모의 지역 단위로 구성하여 분산형으로 지도 데이타를 관리하게 될 것이며 또한, Mobile

장치를 이용하여 지역 내의 변화를 실시간으로 삽입 갱신 삭제 검색할 수 있을 것이다, , , .

국내의 들은 이러한 변화에 따라 개방형 위치 서비스를 지원하는 실시간GIS Mobile GIS

기반으로 나아갈 것이므로 앞으로 점점 더 많은 실시간 에 관한 기술 수요가 예Mobile GIS

상된다.

- 8 -

본 연구로서 얻어지는 결과는 이러한 다양한 분야에서 효율적으로 활용될 수 있다.

- 9 -

SUMMARY

영문요약문( )

1. Title

A Study on the Mobile GIS using a Real-Time Database System

2. Research Objective and Importance

Recently, as the result of high technology of computer environments, various types

of computer applications have been researched and developed. Previously, it has

been progressed on the database side of GIS(Geographic Information System).

However, because of the growth of the wireless Internet, PDA(Personal Digital

Assistants), and HPC(Hand He1d PC), the focus of research and development has

been changed to the mobile GIS for location based services.

To support location based services efficiently through the mobile GIS, there must

be a real-time GIS engine that can deal with dynamic status (e.g., movement and

location of users) of objects and mobile clients that can manage spatial data

efficiently on the mobile devices which usually have low storage and data

processing capability. However, previous technology of GIS which usually deals with

static data is not suitable for the mobile GIS. Therefore, in this research, we have

studied the mobile GIS using a real-time database system, which can support

location based services efficiently.

- 10 -

3. Research Contents and Scope

The mobile GIS generally use static data such as map data that are managed the

existing GIS and location data such as information of user's location at the specific

time. Location data which is usually gathered from GPS has characteristics such as

frequent update and data loss due to the bad reception rate. To process such data

efficiently, it is necessary to use the mobile GIS based on a real-time database

system. In this research, therefore, we designed and implemented the mobile GIS

using a real-time database system, which consisted of a real-time GIS engine, a

middleware, and a mobile client. Especially, we adopts the OGC's OpenLS

specification for the interoperability of various location based service systems.

The real-time GIS engine can provide insert, delete, update, search operations of

spatial data, in addition to operations of the existing HP real-time database system.

And, it can deal with spatial/aspatial queries and manage spatial/aspatial indices for

the efficient management of information of user's locations. The real-time GIS

engine consisted of a data loader which can load data from back-end GIS to the

real-time GIS engine, a location data manager which can distribute location data

over several systems, a layer manager which can manage layers, and so on.

The middleware which is located between the real-time GIS engine and the mobile

client can analyze a query requested from the mobile client, request the real-time

GIS engine to process the query, and pass the returned results to the mobile client.

- 11 -

The mddleware consisted of a query manager, a spatial operation manager, a spatial

algorithm manager, a data extractor, a server list manager, and data transmission

manager.

The mobile client can support functions for mobile services such as location based

services to users on the Windows CE or Embedded Linux operation system. In this

research, it consisted of a GPS driver, a GPS data receiving manager, a coordinates

transporting manager, a coordinates mapping manager, a display manager, and a

interface manager.

4. Research Results

The summary description of principal research results is described in each chapter

of this final report as follows.

Chapter 1

- Describe background and objective of this research.

Chapter 2

- Describe wireless data communication, GPS, mobile GIS, and survey domestic and

foreign situation of the mobile GIS. In addition, describe the HP real-time database

system whose functions are extended in this research.

- 12 -

Chapter 3

- Describe concepts of location based services, and survey service standardization

and protocol standardization for location based services suggested from domestic

and foreign standardization groups.

Chapter 4

- Describe design of the mobile GIS using a real-time database system and each

manager of it in detail.

Chapter 5

- Describe implementation of the mobile GIS using a real-time database system and

each manager of it in detail.

Chapter 6

- Describe conclusions and further research project.

5. Suggestions about Utilization

The result established from this research can be applied to many fields. First, by

establishing technology about the wireless internet communication, it can be applied

to develop various types of wireless computing systems. That is, it can be applied

to the 'M-Commerce (Mobile e-commerce)' that is the electronic commerce using a

mobile phone, the 'Mobile Works' that can be used to conduct the business of

corporation(official announcement, e-mail, schedule management, etc.) via mobile

phone, etc.. Moreover, technology about the real-time GIS engine for storing

dynamic data can be applied to real-time environments that cannot be supported by

the existing database system efficiently.

- 13 -

That is, it can process various users's queries, and return results more efficiently

and quickly at the real-time environment.

Especially, the result of this research can be used at ITS or LBS fields. First, It

can be used for understanding of vehicles location, understanding of traffic

congestion, and search of shortest path from origin to destination. Besides, it can

be used to conduct insertion, modification, deletion operations of spatial and aspatial

data for searching of shortest path, understanding of specific location, tracing of

routes, and creation of road/building information.

6. Expected Effect

If real-time mobile GIS technologies for efficient location based services are

researched and developed, then markets of mobile GIS and location based services

will be activated and application fields using the real-time mobile GIS which

supports various types of mobile devices and open location based services will be

increased. And, as the usage of the distributed network extends gradually, the

mobile CIS using a real-time database system developed by this research can be

used for the distributed computing environment efficiently.

- 14 -

By using mobile clients of our system, we can easily insert, update, delete, search

spatial/aspatial data at the real-time to reflect local or global changes. In the near

future, we can expect the increasement of technology demand of our system

gradually and the result of this research can be applied for various fields

efficiently.

- 15 -

CONTENTS

영 문 목 차( )

Chapter 1. Research Background and Objective

Chapter 2. Related Research

Section 1. Wireless Data Communication

Section 2. GPS

Section 3. Mobile GIS

1. Mobile GIS of Korea

A. SK Telecom

B. KTF

C. LG Telecom

2, Mobile GIS of Japan

A. KDDI

B. Docomo

C. J-Phone

3. Mobile GIS of Europe

A. Orange

B. Telenor

C. Omnitel

4. Mobile GIS of USA

A. Sprint PCS

B. Verizon Wireless

Section 4. Analysis of Real-Time Database System

- 16 -

Chapter 3. Standardization Trend of Mobile GIS

Section 1.Introduction of LBS

Section 2. Concept of LBS

Section 3. Standardization Situation and Contents of LBS

1. ISO/TC 211

A. Standardization Situation

B. Standardization Contents

2. MAGIC

A. Standardization Situation

B. Standardization Contents

3. OGC

A. Standardization Situation

B. Standardization Contents

4. Other LBS Standardization Groups

Section 4. Standardization Trend of Wireless Internet Protocols

1. 3GPP

2. 3GPP2

3. LIF

Chapter 4. System Design

Section 1. Design Consideration

Section 2. System Architecture

Section 3. Client

- 17 -

1. GPS Driver

2. GPS Data Receiving Manager

3. Coordinate Mapping Manager

4. Coordinate Conversion Manager

5. Display Manager

6. Interface Manager

Section 4. Middleware

1. Data Transmission Manager

2. Spatial Algorithm Manager

A. Arithmetic Coding Technique

B. Incremental Transmission Technique

3. Server List Manager

4. Data Extractor

5·Spatial Operation Manager

6. Query Manager

A. Query Processing of Spatial Data

B. Query Processing of Aspatial Data

Section 5. Real-Time GIS Engine

1. Interface Manager

2. Query Manager

3. Index Manager

4. Metadata Manager

5. Object Manager

- 18 -

6. Data Loader

7. Location Data Manager

8. Layer Manager

Section 6. Distributed Location Data Storing System

Chapter 5. System Implementation

Section 1. Implementation Environment

Section 2. System Operating Process

Section 3. Client

1. File Type of Spatial Data

2. Implementation of GPS Driver

3. Implementation of Coordinate Conversion

4. Implementation of Map Display

Section 4. Middleware

1. Implementation of Map Data Transmission

2. Spatial Distance Calculation Algorithm

A. PP Algorithm

B. LP Algorithm

C. POP Algorithm

D. LL Algorithm

E. POL Algorithm

F. POPO Algorithm

Section 5. Real-Time GIS Engine

- 19 -

1. Execution Example of Real-Time GIS Engine

2. Standard Spatial Data Types

3. Processing of Variable Size Data

4. Automatic Extension of Number of Records

A. Table Recreation Method

B. Chaining Method

5. Principal Functions of Real-Time GIS Engine

6. Implementation of Data Loader

Chapter 6. Conclusions

References

- 20 -

목 차

제 장 연구 배경 및 목적1

제 장 관련 연구2

제 절 무선 데이타 통신1

제 절2 GPS

제 절3 Mobile GIS

국내의1. Mobile GIS

가 텔레콤. SK

나. KTF

다 텔레콤. LG

일본의2. Mobile GIS

가. KDDI

나. Docomo

다. J-Phone

유럽의3. Mobile GIS

가. Orange

나. Telenor

다. Omnitel

미국의4. Mobile GIS

가. Sprint PCS

나. Verizon Wireless

제 절 실시간 데이타베이스 시스템 분석4

- 21 -

제 장 의 표준화 동향3 Mobile GIS

제 절 의 소개1 LBS

제 절 의 개념2 LBS

제 절 의 표준화 현황 및 내용3 LBS

1. ISO/TC 211

가 표준화 현황.

나 표준화 내용.

2. MAGIC

가 표준화 현황·

나 표준화 내용.

3. OGC

가 표준화 현황.

나 표준화 내용.

기타 표준화 단체4. LBS

제 절 무선 인터넷 프로토콜 표준화 동향4

1. 3GPP

2. 3GPP2

3. L1F

제 장 시스템 설계4

제 절 설계 고려사항1

제 절 시스템의 구성도2

제 절 클라이언트3

- 22 -

드라이버1. GPS

데이타 수신 관리자2. GPS

좌표 매핑 관리자3.

좌표 변환 관리자4.

디스플레이 관리자5.

인터페이스 관리자6.

제 절 미들웨어4

데이타 전송 관리자1.

공간 알고리즘 관리자2.

가 코딩 기법. Arithmetic

나 점진적 전송 기법.

서버 리스트 관리자3.

데이타 추출기4.

공간 연산 관리자5.

질의 관리자6.

가 공간 데이타 질의 처리.

나 비공간 데이타 질의 처리.

제 절 실시간 엔진5 GIS

인터페이스 관리자1.

질의 관리자2.

인덱스 관리자3.

메타 데이타 관리자4.

객체 관리자5.

- 23 -

데이타 로더6.

위치 데이타 관리자7.

레이어 관리자8.

제 절 분산 위치 데이타 저장 시스템6

제 장 시스템 구현5

제 절 구현 환경1

제 절 시스템의 동작 과정2

제 절 클라이언트3

공간 데이타 파일 형태1.

드라이버 구현2. GPS

좌표 변환 구현3.

지도 디스플레이 구현4.

제 절 미들웨어4

지도 데이타 전송 구현1.

공간 거리 연산 알고리즘2.

가 알고리즘. PP

나 알고리즘. LP

다 알고리즘. POP

라 알고리즘. LL

마 알고리즘. POL

바 알고리즘. POPO

제 절 실시간 엔진5 GIS

- 24 -

실시간 엔진의 실행 예1. GIS

표준 공간 데이타 타입2.

가변 길이 데이타 처리3.

자동 레코드 개수 확장4.

가 테이블 재생성 방법.

나 체이닝 방법. (Chaining)

실시간 엔진의 주요 함수5. GIS

데이타 로더 구현6.

제 장 결론6

참고문헌

- 25 -

제 장 연구 배경 및 목적1

최근 컴퓨터의 대용량화 및 고성능화에 따라 에 근GIS (Geographic Information System)

거한 다양한 형태의 연구 및 응용 시스템이 개발되고 있다 이전까지의 이러한 연구 및 개.

발은 주로 에 대한 데이타베이스의 측면을 기준으로 많이 진행되었지만 인터넷의 점진GIS ,

적인 발전으로 인하여 을 중심으로 한 사용자 측면의 기술로 발전되어 가고 있다 그WWW .

러나 이러한 에 대한 시도는 컴퓨터가 있는 곳에서만 가능하기 때문에 아직까지는 실생, GIS

활에 접하게 영향을미치지는 못하고 있다 예를 들어 국내의 도로 교통 상황을 보면 아. ,

직까지 라디오나 텔레비전과 같은 공중파 방송을 많이 이용하고 있고 길을 찾기 위해서는,

지나가는 사람들에게 목적지를 설명하여 위치를 파악한 후 찾아가야만 하는 것이 현실이다.

즉 이제까지의 는 도로망 상하수도관 지도 검색 등과 같은 정적인 데이타의 처리에는, GIS , ,

유용하게 쓰일 수 있지만 교통 상황 항공 상황 철도 상황 그리고 현재 위치에서의 목적, , , ,

지 검색과 같은 동적인 데이타의 처리에는 적합하지 않다.

국내의 현실과 기술의 발전상을 볼 때 대부분의 사람들이 핸드폰, PDA(Personal Digital

등과 같은 장치를 많이 사용하고 있고 무선 네Assistants), HPC(Hand Held PC) Mobile ,

트워크의 발전으로 인하여 실생활에서도 무선 네트워크가 많이 보급될 예정에 있으며 또한,

소형의 장치의 모듈식 개발로 인하여 앞으로는 항공기 선박 기차 자동차뿐만이 아니GPS , , ,

라 개인이 사용하고 있는 장치에도 장치가 부착되는 때가 올 것이다 이러한Mobile GPS .

기술적인 발전을 예측하여 볼 때 현재 많이 사용되고 있는 는 동적인 상황 예 차량의GIS ( ,

움직임이나 개개인의 위치 파악 에서 데이타베이스를 빠르게 처리하여 신속하게 대응하기에)

는 여러면에서 문제점들을 가지고 있다.

- 26 -

이러한 현재 상황에서 동적인 데이타를 효율적으로 처리하기 위해서는 실시간 데이타베이스

시스템과 무선 네트워크 기술이 필요하다 그리고 네트워크 상에서 불명확한 연결 상태에. ,

있는 장치에 데이타를 신뢰성 있게 보내주기 위한 방법 장치가 가지는 단Mobile , Mobile

점인 작은 양의 기억장치를 효율적으로 이용할 수 있는 방법 서버에 있는 대용량의 공간,

및 비공간 데이타를 전송할 때 필요한 데이타만을 추출하기 위한 알고리즘 그리고 최단 경,

로 탐색 방법 등에 대한 연구가 필요하다 현재 이러한 연구는 외국에서는 지금 활발히 연.

구가 진행되고 있지만 국내에서는 아직까지 실시간 데이타베이스 시스템에 대한 연구만 진

행 중이다 그러므로 국가 경쟁력의 차원에서 보더라도 실시간 데이타베이스 시스템을 이. ,

용한 에 관한 연구는 매우 시급한 문제라고 할 수 있다Mobile GIS .

는 길 안내 서비스 교통정보 서비스 관광정보 서비스 부동산정보 서비스 물Mobile GIS , , , ,

류운송정보 서비스 버스 지하철 노선 안내 서비스 지역정보 서비스 사람 차량 위치추적, / , , /

서비스 등 실생활에 아주 접하게 관련되어 있기 때문에 앞으로 이에 대한 기술 개발이 수

행된다면 다양한 부가 서비스의 창출이 가능하게 될 것이다 현재 국내 대부분의 산업. , GIS

은 이러한 로의 변환을 준비 중에 있으며 와 관련 있는 대학 연구소들도Mobile GIS , GIS ,

무선 인터넷과 위치 기반 서비스를 중심으로 하여 모바일 에 대한 연구를 수행하고 있GIS

다 앞으로 지리 정보를 처리 및 공유하는 시스템들은 를 모두 지원하게 될 것. Mobile GIS

이고 또한 기존의 들은 점차적으로 를 중심으로 통합될 것이다, GIS Mobile GIS .

- 27 -

본 연구의 목적은 현재 많은 분야에서 연구되고 있는 컴퓨팅의 기술을 실시간 데이Mobile

타베이스 시스템 기술과 접목시켜 실시간 데이타베이스 시스템을 이용한 에 대Mobile GIS

한 핵심 원천 기술을 확보하고 또한 연구된 결과를 바탕으로 테스트 환경을 구축하여 실제,

로 검증하는 것이다.

이를 위해서 본 연구에서는 우선 실시간 데이타베이스 시스템 기술에 대해 충분히 조사하

고 에서 사용되는 방대한 공간 데이타의 처리를 위해 실시간 데이타베이스 시, Mobile GIS

스템과 백엔드 로 사용되는 와의 효율적인 연계에 대하여 연구하였다 또한(Back-End) GIS . ,

최근에 그 중요성이 급증하고 있는 위치 기반 서비스와 같은 다양한 형태의 방Mobile GIS

향 및 표준화 동향에 대하여 조사하고 그 장점을 취합하여 실시간 의 설계 및, Mobile GIS

구현에 적합하게 적용하였다.

그리고 무선 운영체제인 등에 대하여 조사 및 분석, Windows CE, Embedded Linux, Palm

하고 장치에서 응용 프로그램을 개발하기 위한, Mobile Windows CE SDK, Embedded

에 대해서 연구하였다 또한 실시간 에 필요한 공간 알고리Linux SDK, KVM . , Mobile GIS

즘 실시간 공간 연산 실시간 질의 처리 사용자 인터페이스 등에 대해 연구하였다, , , Mobile .

마지막으로 이러한 모든 기술들을 바탕으로 실시간 데이타베이스 시스템을 이용한, Mobile

를 개발하였고 또한 개발된 에 대한 테스트 환경을 구축하여 테스트도 수행GIS , Mobile GIS

하였다.

- 28 -

본 보고서의 구성은 다음과 같다 제 장은 실시간 데이타베이스 시스템을 이용한. 2 Mobile

의 관련 연구에 대하여 설명한다 제 장에서는 의 가장 대표적인 서비스인GIS . 3 Mobile GIS

위치 기반 서비스의 표준화 동향 및 방향에 대하여 언급한다 제 장에서는 실시간 데이타. 4

베이스 시스템을 이용한 에 대한 설계에 대하여 설명하고 제 장에서는 시스Mobile GIS , 5

템을 구현하기 위한 방법 및 알고리즘들에 대하여 살펴본다 마지막으로 제 장에서는 결. 6

론과 향후 연구 과제에 대해 언급한다.

- 29 -

제 장 관련 연구2

본 장에서는 관련 연구로서 클라이언트와 실시간 데이타베이스 시스템을 연결하는데 필요한

무선 데이타 통신에 대하여 알아보고 클라이언트 사용자의 위치 파악에 필요한 에 대, GPS

하여 설명한다 또한 의 개념과 동향에 대해서 언급하고 본 시스템에 사용된. , Mobile GIS ,

실시간 데이타베이스 시스템에 대해서 분석한다HP .

제 절 무선 데이타 통신1

무선 데이타 통신을 기술적인 형태로 분류하면 크게 방송형 통신 양방향 메세(broadcast) ,

지 통신 셀룰라 데이타 통신 위성 데이타 통신으로 분류할 수 있다(Two Way Message) , , .

첫번째 방송형 통신에는 무선호출 서비스가 대표적이며 라디오방송을 이용한 데이타 전송, ,

과 방송을 이용한 데이타 전송이 있다 두번째 양방향 메시지 통신에는 패킷 데이타TV . ,

방식 협대역 개인통신 서비스 가 있다 세번째 셀룰라 데이타 통신은, (Narrow Band PCS) . ,

기존의 셀룰라 망을 이용하여 사용자들이 표준 유선모뎀에 접속하여 데이타 전송이 가능하

다는 사실에서 출발하였으며 일반적으로 사무실 에 접속하여 사용하거나 전자메일이나, LAN

텍스트 화일의 전송 및 수신 온라인 서비스 접속 인터넷 접속 등에 사용된다 네번째 위, , . ,

성 데이타 통신의 경우는 서비스 지역이나 신뢰도는 우수하나 통신비용의 부담이 크다는 단

점이 있다.

- 30 -

셀룰라 데이타 통신이나 양방향 메시지 통신의 경우에는 전국적인 서비스가 가능하고 신뢰

도 및 통신비용 사용의 용이성 면에서 상대적으로 우수하다 셀룰라 데이타 통신이나 양방, .

향 메시지 통신에는 패킷 교환 방식과 회선 교환 방식이 있다 패킷 교환 방식은 데이타를.

일정한 길이의 전송단위인 패킷 단위로 축적 블록화하여 전송하는 방식으로 품질과 신뢰,

성 융통성이 높으며 가격이 저렴하여 가장 많이 사용된다 표 은 패킷 교환 방식과 회선, , . 1

교환 방식의 특징을 비교한 내용을 보여 준다.

표 무선 데이타 통신 접속형태에 다른 특징 비교1.

구분 패킷 교환 방식 회선 교환 방식

접속 방식가상회선에 의한 접속 실제회선을 접속

회선공유 다중화 접속, 로 전용 접속1:1

특성

짧은 메시지 전송에 효율적 길고 지속적인 데이타 전송에 효율적

동보가능 매 전송시마다 Log on

시간이 짧음Call Setup 시간이 김Call Setup

무선 데이타 통신의 전송속도는 이며 주파수 대역은 단말기에서 호스9600bps INBOUND(

트 가 호스트에서 단말기 는 대역을 사용한다) 898 900 MHz, OUTBOUND( ) 938 940MHz .∼ ∼

무선 데이타 통신은 이동 중에도 자유롭게 정보를 주고받을 수 있기 때문에 다양한 분야에

서 채택되고 있다 현재 뉴스 속보를 비롯한 일반적인 정보 검색은 물론 증권 교통정보 이. , ,

동 뱅킹 신용 카드 조회 및 결제 송수신 원격 검침 현장 업무 등의 용도로 활용, , e-mail , ,

되고 있으며 그 범위는 더욱 확장되고 있다 특히 무선 데이타 통신은 최근 급부상하고 있. ,

는 에 적합한 통신 서비스로써 새로운 서비스의 형태를 가능하게 할 것이다Mobile GIS .

- 31 -

제 절2 GPS

는 인공위성을 이용한 지구 위치 결정 시스템으로 정확한GPS(Global Positioning System)

위치를 알고 있는 위성에서 발사한 전파를 수신하여 관측점까지의 소요 시간을 관측함으로

써 관측지점의 위치를 구하는 시스템이다 를 이용한 기술은 최근 측지 항법 측량 차. GPS , , ,

량 추적 레저 등과 같은 다양한 분야에서 크게 각광을 받고 있는데 그 이유는 이전의 방, ,

법에 비해 손쉽고 신속하게 정확한 위치 정보를 실시간으로 얻을 수 있기 때문이다 는. GPS

그림 과 같이 한 지점의 차원적 위치 정보와 차원적 위치 정보를 얻기 위해 각각 개1 2 3 3 ,4

개 위성을 활용하고 있다.

그림 위성의 배치1. GPS

- 32 -

각 위성은 두 가지의 다른 주파수의 신호를 동시에 발생시키는데 반송파라고 알려진L1

주파수의 신호로 구성되어 있다 이러한 반송파에 중첩되는 정보는1.57542 GHz .

부호와 항법 메시지 로 이루어진다 이PRN(Pseudo-Random Noise) (Navigation Message) .

부호는 부호와 부호로 이루어져 있다 의 위치 결정방법에는 두 가지가 있는PRN C/A P . GPS

데 하나는 의사 범위를 이용한 위치 결정법이고 다른 하나는 반송파를 이용한 위상 관측법,

이다.

일반적으로 위성이 개 이상이 수신되어야 현 위치를 계산해 낼 수 있는데 이는 삼각측량4

의 원리와 비슷하다 간단히 생각하면 위성의 정확한 위치를 알고 각 세 위성으로부터 거리.

를 정확히 알면 자신의 위치를 계산할 수 있는 것이다 나머지 한대는 시각을 동기화하는데.

사용된다 빛의 속도를 이용하여 거리를 측정하기 때문에 시간이 매우 정확해야 하며 각.

위성에는 정 하게 시간을 측정할 수 있는 시스템이 있다 그 시스템을 이용한 시각GPS .

동기화는 의 또 다른 응용분야로 자리 잡고 있다GPS .

에서 사용되는 반송파는 대역으로 아주 직진성이 강하다 그러므로 위성이 보이는GPS GHz .

영역에서만 신호가 수신 가능하며 실내나 지하에서는 수신이 불가능하다 만약 반사가 돼서.

신호가 수신되더라도 당연히 거리가 왜곡이 되기 때문에 정확도가 떨어지게 된다 수신. GPS

기는 방식을 사용하며 단지 위성에서 뿌린 신호를 받기만 하기 때문에 부하가 많이CDMA

걸린다는 것과는 전혀 관계가 없다.

- 33 -

위치 측정의 정확성을 떨어뜨리는 요소들은 크게 부분으로 나뉠 수 있다 첫번째 구GPS 3 .

조적 요인으로 생기는 오차로는 인공위성 시간 오차 인공위성 위치 오차 전리층과 대류층, ,

의 굴절 잡음 다중경로 등이 있다 두번째로는 위성의 배치 상황에 따른 기하, , (Multipath) .

학적 오차가 있으며 세번째로 가장 큰 오차 원인인 가 있다 이, SA(Selective Availability) .

러한 요소들이 모두 잠재적으로 합쳐져서 매우 큰 오차 결과를 낳는데 이것을 UERE (User

라고 한다Equivalent Range Error) .

원래 미 국방성에서는 민간인이 사용할 때 군사용 목적으로 사용하는 것을 막기 위해 라SA

는 고의적인 잡음을 에 넣어왔다 그 당시에는 위치 정확도가 정도였으므로 이를GPS . 100m

보정하기 위해 를 이용하거나 기타 보조 위치 파악 장치를 사용하였다 하지만DGPS . GPS

의 성능향상도 아닌 질을 떨어뜨리기 위해 연간 수백만 달러를 사용하는 것에 의문이 제기

되어왔고 미 클린턴 대통령의 대선공약에 따라 년 월에 가 제거되었다 그 후 위2000 5 SA .

치 정확도는 대략 정도 되고 만으로도 상당히 정확한 네비게이션이 가능하게10 20m GPS∼

되었다.

- 34 -

제 절3 Mobile GIS

컴퓨팅이란 이동환경에서 컴퓨터를 사용하는 것을 총칭한다 따라서 일반 나Mobile . PDA

는 물론 노트북 컴퓨터 랩톱 컴퓨터 심지어 경찰 순찰차나 병원에서 운영하는 비상용HPC , ,

응급차의 내부에 설치되어 있는 컴퓨터까지도 컴퓨팅이라고 할 수 있다Mobile .

란 의 개념과 의 개념이 합쳐진 것으로 환경이 아닌 컴퓨Mobile GIS Mobile GIS PC Mobile

팅 환경에서 운영되는 솔루션을 의미한다 초기에는 용 컴퓨터에 국한되어 단순GIS . Mobile

한 위치 정보만을 제공해 왔지만 현재는 셀룰라나 개인 휴대 단말기에 이르기까지 그, PCS

범위가 점점 확대되어 가고 있으며 앞으로는 다른 서비스와 결합하여 시너지 효과를 일으킬

것으로 예상되고 있다 용 컴퓨터에 응용프로그램을 장착하면 활동 및 지역의. Mobile GIS

제약을 벗어나 실시간 정보획득의 이중적 이점을 살릴 수 있다 또한 중앙의 실시간. ,

서버는 가장 효과적으로 업무를 처리할 수 있는 직원에게만 지시를 보냄으로써Mobile GIS

업무의 효율성을 높일 수 있다.

서비스는 의 위치 추적 기능을 이용한 화물 위치추적 서비스 택배 서비스Mobile GIS GPS , ,

경비 및 보안 재해 업무 등에 최적으로 활용이 가능하며 무선 휴대 단말기를 통해 지도, ,

정보를 기반으로 한 관광정보 교통정보 지역정보 등을 제공할 수 있다 또한 보행자 네비, , . ,

게이션 시스템 관광지 지리정보 안내 외근 현장 업무용 지리안내 원거리 시설물의 설계도, , ,

확인 이동 중 지리정보 필요시 실시간 제공 등에 다양하게 활용될 수 있다, .

- 35 -

국내의1. Mobile GIS

가 텔레콤. SK

텔레콤에서는 컨텐츠 어플리케이션 측면에서 일반 소비자 대상으로 주변시설 정보 추SK / ,

적 서비스 교통 및 항법 서비스 안전 구난서비스를 제공하고 있다 이중 교통 항법 서비, , - . -

스는 일반 핸드폰 서비스가 아니라 네이트 드라이브 텔레매틱스 서비스로 특화되어 제공되

고 있다 또한 주변시설 정보 서비스는 일반 핸드폰에서는 방식으로 제공되고 있다. , input .

따라서 일반 핸드폰으로 이용 가능한 자동 측위 방식의 서비스는 현재 방식의 추적서Cell

비스 뿐이다 년 하반기에는 에스원과의 제휴를 통해 을 이용한 안전 구난 서. 2002 gpsOne ,

비스를 실시할 예정이며 역시 에 기반한 광고 상거래 서비스를 년 월부터 제gpsOne , 2002 7

공할 계획이다 특히 기업 대상으로는 현재 추적서비스를 제공하고 있다. , .

플랫폼은 팅크웨어가 방식의 플랫폼을 제공했으며 포인트아이가 위치정보 처리 및 관Cell ,

리 솔루션을 제공하였다 현재 주 팅크웨어 등과의 협력 하에 기반의 차세대 플. ( )SK, GPS

랫폼을 준비중에 있다 네트워크는 방식에 기반하여 활용하고 있다 마지막으로 디바. 2.5G .

이스를 살펴보면 우선 셀 방식 측위의 경우 모든 핸드폰에서 이용이 가능하고 용 확, , PDA

장팩이나 일체형 로도 이용할 수 있다 교통 항법 서비스와 주변 시설정보 서CDMA PDA . -

비스를 제공하는 네이트 드라이브 텔레매틱스 의 경우에는 삼성 단말기를 이용해야( ) X150

한다.

- 36 -

나. KTF

에서는 컨텐츠 어플리케이션에서 일반 사용자를 대상으로 주변시설 정보 추적 서비스KTF / , ,

교통 항법 서비스 안전 서비스를 시행하고 있다 이들 서비스 중 주변정보 추적 서비스는- , . ,

모두 셀 방식에 기반하고 있으며 교통 항법 서비스는 과 방식을 병행하고 있다, - Cell input .

또한 국내 최초로 을 이용해 이용자의 이동상황을 파악하고 긴급상황 시 지정번호, gpsOne

에 위치를 통보하는 엔젤아이 서비스를 도입했다 향후에는 역시 을 이용하여 광고' ' . gpsOne

및 상거래 서비스와 기상예보 등의 안전 서비스로 범위를 확대해나갈 계획에 있다 기업사.

용자 대상으로는 현재 위치 추적 서비스를 실시하고 있으며 조만간 기업용 텔레매틱스 서,

비스를 시행할 예정이다.

플랫폼은 지어소프트가 셀 방식의 플랫폼을 제공하였다 네트워크는 방식에 기반하고. 2.5G

있으며 디바이스는 방식의 측위에 기반한 경우 모든 휴대폰에서 이용 가능하다 엔젤, Cell , . '

아이 서비스는 칩이 내장된 전용 단말기가 따로 필요하며 이소텔레콤과의 제휴를' gpsOne

통해 개발하였다 기업용의 텔레매틱스 서비스의 경우에는 를 이용한다. PDA .

다 텔레콤. LG

텔레콤에서 컨텐츠 어플리케이션은 일반사용자 측면에서 주변시설 정보 추적서비스 교LG / , ,

통 항법 서비스를 제공한다 이들 서비스 중 주변시설 정보와 추적 서비스는 방식의- . Cell

측위에 기반하고 있으며 교통 항법 서비스는 방식과 방식을 병행하고 있다, - Cell input .

년 엔젤아이와 서비스 내용이 유사하지만 측위 방식은 에 기반한 해피토키 서비2001 ' ' Cell ' '

스를 시행한 바 있으나 현재 서비스 영업이 진행되지 않는 등 거의 사멸 상태로 볼 수 있

다.

- 37 -

현재 방식의 도입을 위한 검토 작업을 내부적으로 진행하고 있다GPS .

플랫폼은 어헤드 에서 셀 방식의 플랫폼을 구축한 바 있다 네트워크는 방식을Mobile . 2.5G

사용하며 디바이스는 방식의 경우 모든 핸드폰에서 이용 가능하다, Cell .

일본의2. Mobile GIS

가. KDDI

는 현재 이라는 이름의 위치 기반 서비스를 제공하고 있다KDDI ez navigation . ez

은 점포검색 등 주변시설 정보와 경로 검색 등 교통 항법서비스 위치정보 메일navigation - ,

통지 서비스 친구나 가족 찾기 등 위치 추적 서비스에 이르기까지 약 가지의 서비스를, 20

포함하고 있다 또한 코코세콤 이라는 독립적인 위치 기반서비스 업체와의. , (COCO SECOM)

협력 하에 안전위치 및 경호 서비스를 시행 중이다.

는 국내의 와 마찬가지로 퀄컴의 칩을 이용해 위치 기반 서비스를 제공KDDI KTF gpsOne

하고 있다 에 사용되는 단말기는 가 생산하는 등이며 퀄컴의. ez navigation Sanyo C3001H ,

칩이 내장되어있다 네트워크는 의 패킷 데이타 전송망이 사용된다gpsOne · 64Kbps . ez

에는 나침반이 탑재된 단말기를 이용해 단말의 회전 방향에 따라 자동으로 지도navigation

가 회전하는 기능도 제공하고 있다.

- 38 -

나. Docomo

일본 통신사업 시장의 선두주자인 도코모 는NTT (Docomo) compact HyperText Markup

기반의 라는 위치 기반 서비스를 제공하고 있다 이는 마이Language (cHTML) “I-mode” .

크로 소프트의 무선 프로토콜인 방식을 도입하여 사용하고 있는ME(Microsoft Explorer)

데 현재까지 천 백만 가입자를 확보하는 등 성공적인 서비스를 제공하고 있어 유럽을 비, 2 6

롯한 전 세계 통신 사업자들의 많은 관심을 끌고 있다.

사와 사는 최근 에 대한 맵 정보 서비스를 장착하여 고객들이Zenrin Cybird Docomo ,

폰으로 맵 정보를 검색하고 디스플레이 할 수 있게 하였다 이 서비스는 자세한 형mobile , .

태를 디스플레이 해주고 지명과 같은 빌딩 이름을 표시하며 개의 자세한 도시 맵 뿐만, 298

아니라 국도 맵까지 제공하고 있다.

다. J-Phone

은 년 월 자사의 서비스 포트폴리오의 일환으로 서비스를 시J-Phone 2000 5 J-Sky J-Navi

작했다 는 주변시설 정보를 제공하는 일종의 디렉토리 서비스이다 현재 만 개. J-Navi . 1700

이상의 사업자가 등록되어 있으며 사용자가 정보를 요구하면 주소와 전화번호 웹 어드레스,

를 포함한 업체 리스트를 컬러 지도와 함께 보여준다 줌 기능이 제공되고 이용자는 또 다.

른 사용자에게 업체정보를 로 보내줄 수도 있다 에서 알 수 있듯이J-Navi e-mai1 . J-Navi

은 방식에 기반하여 주변 시설 정보를 제공하는 서비스에 주력하고 있다J-Phone Cell .

- 39 -

유럽의3. Mobile GIS

가. Orange

프랑스의 주요 이동 통신 업체인 는 년 월 라는 명칭의 위치 기Orange 2000 7 "a proximite"

반 서비스를 발표했다 가 제공하는 서비스는 주변시설 정보이며 식당 병원 약. Proximite , ,

국 은행 호텔 정류장 기차역 등의 정보를 제공한다 최근에 는 위치 기반의 인터, , , , . Orange

액티브 게임 두 가지를 성공적으로 테스트 완료하였다 하나는 라는. 'cultural treasure hunt'

게임으로 가 개발한 것이다 현재의 위치와 관련된 질문에 답함으로써 퀴즈를 풀Lucigames .

기 위한 힌트를 얻어 가는 것으로 한 장소에서 모든 문제를 풀고 나면 다음 단계를 위해,

장소를 이동한다 다른 하나의 게임은 라는 업체에서 개발한 것으로 일종의 모. InfraGames

험게임이라고 볼 수 있다 원하는 인물을 설정한 후 위치를 이동하며 각종 임무들을 수행하.

게 된다 의 위치 기반 서비스는 방식에 기반하여 주변 정보를 제공하는 단순. Orange Cell

한 형태를 띄고 있다.

나. Telenor

년 월 노르웨이의 는 자동 측위에 기반한 위치 기반서비스를 시작하였다 현2001 4 Telenor .

재 제공되고 있는 서비스는 라는 위치 기반 게임과 주변시설 정보이다 주, 'treasure hunt' .

변정보 서비스는 이용자가 요청할 경우 지도 서비스가 가능하다 측위 방식은 방, . Cell-ID

식의 변형 형태인 방식을 도입하고 있다 또한 에릭슨의Cell-ID+TA . , MPS(Mobile

을 도입 했으며 사로부터 미들웨어를 제공받았다 주변정Positioning System) Mobilaris AB .

보 서비스와 위치기반 게임을 위한 컨텐츠와 애플리케이션은 라는 업체가 제공하Pocket IT

고 있다.

- 40 -

의 위치 기반 서비스는 와 방식에 모두 기반하고 있다Telenor SMS WAP .

다. Omnitel

이탈리아의 이 제공하는 위치 기반 서비스는Omnitel Omni Arte, Omni Taxi, Hello Bus,

로 구성된다 는 위치 기반의 주변 정보 서비스로써 주변의 관광지에 대Inflotta . Omni Arte

한 소개 위주로 구성되어 있다 는 위치 추적 및 서비스로써 현 위. Omni Taxi Call Routing

치에서 가장 가까운 택시회사와 연결해 준다 는 위치 추적 및 교통정보 서비스. Hello Bus

로써 버스 도착 예정 시간을 알려준다 마지막으로 는 기업용 추적 서비스로. ,Inflotta fleet

기능을 제공한다management .

은 이탈리아에서 두 번째로 높은 시장점유율을 보유하고 있는 이동 통신사이며Omnitel

년에 위치 기반 서비스를 도입하는 등 이 분야에서 선도적인 위치를 차지하고 있다1996 , .

측위 방식은 서비스 유형에 따라 과 방식을 병행하고 있다 와Cell GPS . Omni Arte Omni

의 경우에는 방식이 와 의 경우에는 수신기를 이용한Taxi Cell-ID , Hello Bus Inflotta GPS

방식이 이용된다 이 제공하는 의 특징은 기업용 서비스. Omnitel LBS (Omni Taxi, Inflotta,

와 일반 소비자용 서비스 를 적절히 병행하고 있다는 것이다Hello Bus) (Omni Arte) .

- 41 -

미국의4. Mobile GIS

가. Sprint PCS

는 년 월 자사의 망에 기반하여 주에서 미국 최초Sprint PCS 2001 10 CDMA Rhode Island

의 단말기 기반 서비스를 시작하였다 이를 위해 사용된 단말기는 삼성의 이며E911 . N300

퀄컴의 칩을 내장하고 있다 앞으로 전국적인 망이 상용화되는 시점에서 보다gpsOne . 3G

다양한 유형의 기반 단말기를 선보일 계획이다 또한 년에 는 달라GPS . , 2002 Sprint PCS

스 휴스톤 샌프란시스코 지역 등지에서 수백 개의 에 서비스를 실시하기, , LA, PSAP E911

위한 운영 네트워크를 제공할 계획이다 년 월 현재 는 현재 루슨트와 노. 2002 1 Sprint PCS

텔로부터 위치 기반 서비스 장비들을 제공받고 있다.

나. Verizon Wireless

미국내 최대 이동통신 사업자인 는 단말기 기반 방식의 측위 기술사용과Verizon Wireless

네트워크 업그레이드 작업을 병행하고 있다 년 월 삼성이 개발한 방식의 핸. 2001 12 AGPS

드폰 을 출시한 바 있으며 년 월에는 사가(SCH-N300) , 2002 5 Audiovox Communication

개발한 내장 를 출시하였다 그러나 서비스 시행을 위해서는 위치9155-GPX(GPS ) . , E911

기반 서비스 가능 휴대폰의 개발 뿐 아니라 의 장비 업그레이드가 필수적이어서 아직PSAP

서비스가 실시되고 있는 지역은 제한적이다 년 월 현재 카운티와. 2002 4 York Rhode

의 장비가 업그레이드되었으며 기반의 서비스가 제공되고 있다Island PSAP , AGPS E911 .

는 단말기 기반의 기술 외에 네트워크 기반의 기술을 이용한 도 시Verizon Wireless E911

행하고 있다.

- 42 -

이와 같이 무선 통신과 무선 인터넷이 급격히 발전하는 가운데 국내외에서 다양한 형태로의

지리 정보 시스템 이나 위치 정보 서비스 를 제공하고 있다 그러나 사용자의 수(GIS) (LBS) . ,

가 점차적으로 증가하고 서비스의 형태가 다양해지는 가운데 변화하는 위치 정보나 지도 데

이타에 대하여 효율적인 서비스를 제공하기 위해서는 실시간 데이타베이스 시스템을 이용한

에 대해 좀 더 많은 연구가 절실히 필요하겠다Mobile GIS .

제 절 실시간 데이타베이스 시스템 분석4

사에서 개발한 주기억장치 데이타베이스 시스템인 실시간 데이타HP(Hewlett Packard) HP

베이스 시스템은 메모리내의 고성능 데이타 저장 및 검색을 지원함으로써 각 연산들의 예측

가능한 빠른 응답시간을 보장한다 본래 이 시스템은 기반에서 동작하도록 되어있. HP-UX

으나 본 연구에서는 이 시스템을 와 에 포팅하여 사용하였다Solaris 2.5 Linux .

실시간 데이타베이스 시스템은 대화형 질의 방식과 로 이루어진 프로그래밍HP C Library

호출 방식의 가지 인터페이스를 지원하며 다른 많은 실시간 데이타베이스 시스템에서처럼2 ,

데이타베이스 전체가 메모리에 상주하는 주기억장치 데이타베이스 시스템이다 여러 프로세.

스들의 동시 접근이 가능하도록 데이타베이스가 공유 메모리에 상주하기 때문에 여러 개의

프로세스가 한 데이타베이스에 접근할 수 있고 또한 한 프로세스가 여러 데이타베이스에,

접근할 수 있다 특히 단계의 패스워드에 의한 보안과 가지의 잠금을 지원하며 유연성. , 3 2

및 확장 가능성이 뛰어난 특징이 있다.

- 43 -

그림 는 실시간 데이타베이스 시스템의 접근 구조를 보여 준다2 HP .

그림 실시간 데이타베이스 시스템의 접근 구조2. HP

실시간 데이타베이스 시스템의 실시간 스케쥴링은 운영체제의 우선 순위 선점 스케쥴링HP

에 기반하여 프로세스 차원에서 관리되며 프로세스 메모리 잠금과 공유 메모리 잠금을 이,

용해 동시성 제어를 하고 있으나 교착상태 에 대한 책임은 모두 사용자에게 전가(deadlock)

시키고 있다 또한 기반의 인덱싱을 제공하고 있는데 와 같이 디스크 기반. , B-Tree B-Tree

의 데이타베이스 시스템에서 사용되던 방법들은 디스크로부터 억세스를 줄이기 위한 방법이

므로 전체 데이타베이스가 메모리에 올라가 있는 주기억장치 데이타베이스 시스템의 경우에

는 좋은 성능을 기대할 수 없다 디스크 억세스를 하지 않는 주기억장치 데이타베이스 시스.

템에서는 높은 저장 효율과 빠른 수행속도가 중요하며 이러한 요구 사항을 만족시키는 대,

표적인 인덱싱 구조로 가 있다T-Tree .

- 44 -

실시간 데이타베이스 시스템에서의 데이타베이스는 다중 사용자가 데이타베이스를 접근HP

하는 모드인 공유 모드와 한 프로세시만 데이타베이스 관리자 암호로 접근할 수 있(shared)

는 배타 모드를 제공한다 그리고 시스템 정보를 공유 메모리(exclusive) . , (shared memory)

에 관리하기 때문에 여러 프로세스가 하나의 데이타베이스를 효과적으로 사용할 수 있다.

현재 실시간 데이타베이스 시스템은 비공간에 대한 데이타 타입만을 제공하고 있으며HP

테이블 생성 시 최대로 저장할 수 있는 레코드의 수를 지정하도록 되어 있다.

또한 레코드나 열들 중의 하나의 값 또는 입력 영역 내에 값의 변화가 있으면 발생하는 이,

벤트를 지원하며 메모리에 있는 데이타를 화일로 출력하는 언로드 화일에 있는 데이타를,

메모리에 적재하는 로드 유틸리티를 제공하고 있다 실시간 데이타베이스 시스템에서의. HP

백업은 단순히 주기억장치에 있는 데이타를 화일로 저장한 후 오류가 발생했을 때 화일에,

있는 내용을 주기억장치로 적재하는 방법을 사용한다.

위치 기반 서비스에서 사용되는 데이타는 초당 수백 수십만건이 발생하게 된다~ . Mobile

에서는 이러한 데이타에 대하여 신속한 삽입 삭제 갱신을 수행하여야 하는데 기존의GIS , ,

디스크 기반 나 를 사용하게 되면 비효율적이다 그러므로 에서는 주GIS DBMS . , Mobile GIS

기억장치를 이용하는 실시간 데이타베이스 시스템을 사용하는 것이 효과적이다.

- 45 -

그러므로 본 연구에서는 현재 상업적인 용도로 사용되고 있는 실시간 데이타베이스 시, HP

스템의 기능에 공간 데이타 타입의 추가 공간 연산자 추가 가변 길이 데이타 처리 기능, ,

추가 테이블 자동 확장 기능 등을 추가하여 에서 사용되는 위치 데이타 및 공, Mobile GIS

간 데이타를 효율적으로 관리할 수 있는 형태로 확장하였다.

- 46 -

제 장 의 표준화 동향3 Mobile GIS

본 장에서는 최근 무선 인터넷과 와 같은 장치의 발전으로 인하여 점차PDA, HPC Mobile

적으로 많은 연구가 진행되고 있는 의 한 형태인 위치 기반 서비스Mobile GIS (LBS:

의 소개와 개념 그리고 표준화 현황 및 내용에 대하여 설명한다Location Based Service) , .

마지막으로 무선 인터넷 프로토콜 표준화 동향에 대해서 언급한다.

제 절 의 소개1 LBS

일반적인 는 이동 통신망을 기반으로 하여 사람이나 사물의 위치를 정확하게 파악하고LBS

이를 활용하는 응용 시스템 및 서비스라고 정의된다. 3GPP(3rd Generation Partnership

의 에서는 를 위치 기반의 응용 제공이 가능한 네트워크를 이용한 표Project) TS22.071 LBS

준화된 서비스라고 정의하고 있다 그리고 에서는 를 위치. , OGC(OpenGIS Consortium) LBS

정보에 접속 제공 또는 위치 정보에 의해 작용하는 모든 응용 소프트웨어 서비스라고 정의,

하고 있으며 에서는 이동식 사용자가 그들의 지리학적 위치 소재 또는 알려진 존재에, FCC ,

대한 서비스를 받도록 하는 것이라고 정의하고 있다.

일반적인 의미에서의 는 이동통신 기술의 발달과 함께 휴대폰 등 휴대용LBS , PDA, HPC

단말기를 이용하여 위치를 추적하고 위치와 관련된 정보를 제공하는 유 무선 단말기의 진, /

보된 서비스라고 할 수 있다 이러한 를 구축하기 위해서는 최첨단 위치 결정 기술 위. LBS ,

치 정확도 향상 기술 무선 인터넷 위치 처리 기술 공간 데이타 처리 기술 플랫폼 기, , , LBS

술 응용 소프트웨어 개발 기술 개방형 및 관련 표준화 기술 응용 서비스, LBS , GIS , LBS

개발 기술 등이 필요하다.

- 47 -

제 절 의 개념2 LBS

는 크게 위치 측위 기술 위치 처리 플랫LBS (LDT: Location Determination Technology),

폼 위치 응용 프로그램(LEP: Location Enabled Platform), (LAP: Location Application

의 가지 부분으로 나뉘어 진다 이를 기반으로 하여 에서는 그림 과 같은Program) 3 . OGC 3

의 기본 개념도를 제시하였다LBS .

그림 의 기본 개념도3. LBS

- 48 -

를 위해서는 첫번째로 위치 컨텐츠 제공을 위한 위치 컨텐츠서버LBS (Location Content

가 필요하다 두번째로 위치 컨텐츠를 처리하고 고객에게 부가 서비스를 제공하는Servers) .

위치 응용 서버 가 필요하다 위치 컨텐츠 서버와 위치 응용(Location Application Servers) .

서버는 위치 응용 프로그램 부분에 해당된다 세번째는 기존의 무선 플랫폼을 위치 응용. IP

서버와 위치 서비스 클라이언트 를 통합하는 기능을 갖는 게이트(Location Service Clients)

웨이 서비스가 있다 게이트웨이 서비스는 이동 통신망 플랫폼과 같이 동작하는 위치 처. IP

리 플랫폼에 해당된다 게이트웨이 위치 서버. Mobile (GMLC: Gateway Mobile Location

도 위치 처리 플랫폼에 속한다 마지막으로 고객의 이동 단말 장치Center) . , (Mobile

와 인터페이스에 직접 작용하는 위치 서비스 클라이언트가 있다 위치 파악을 위Terminals) .

해 필요한 하드웨어 및 소프트웨어는 위치 측위 기술 부분에 해당된다.

이러한 의 기본 개념에 작업 관리 등과 같은 운영 지원시스템LBS CRM, (OSS: Operation

부문을 추가시킨 것이 그림 의 의 확장된 개념도이다 운영 지원 시Support System) 4 LBS .

스템에는 일반적인 가 아닌 기업이나 공공기관 업무 관련 내부 시설 관리 외부LBS CRM, ,

시설 관리 작업 관리 현장 지원 등의 업무들이 포함된다 이러한 구조는 가 일반적인, , . LBS

서비스뿐만 아니라 기업 또는 공공기관의 업무와도 접하게 관련되어 있음을 보여준다.

- 49 -

그림 의 확장된 개념도4. LBS

제 절 의 표준화 현황 및 내용3 LBS

현재 전 세계적으로 에 대하여 그 중요성을 인식하고 있으며 이에 대한 효율적인 유통LBS ,

이나 서비스를 위해 표준화를 활발히 추진하고 있다 본 절에서는. ISO/TC 211, MAGIC,

등의 단체들이 수행하고 있는 에 대한 표준화 현황 및 내용에 대하여 분석한다OGC LBS .

1. ISO/TC 211

본 단락에서는 에서의 에 관한 표준화 현황과 내용을 살펴본다ISO/TC 211 LBS .

- 50 -

가 표준화 현황.

에서는 를 고객이 어떤 사물이나 사람의 위ISO (International Standard Organization) LBS

치에 대한 서비스 질의 또는 절차라고 정의하고 있다 에서의 에 관련된 프로젝트, , . ISO LBS

는 현재 의 개가 진행 중에 있다 는ISO19132, ISO19133, ISO19134 3 . ISO19132 Location

로써 주로 방향을 포함한 위치의 표현에 관한 포맷Based Services Possible Standards ,

좌표 주소 라우팅 표현 방향 변환 지시 위치 이동 명령에 관한 포맷 교통 혼잡도 표현에, , , , ,

관한 포맷 응용 프로그램을 위한 클라이언트 서버간의 데이타 전송에 관한 포맷 등과, LBS /

같은 에서 필요한 표준안에 대하여 주로 제시하고 있다LBS .

은 으로 트래킹과 네비게이ISO19133 Location Based Services Tracking and Navigation

션 서비스를 위해 필요한 정보와 데이타 명세를 개발한다 은 클라이언트. ISO19133 Mobile

를 이용하여 사용자들에게 서비스할 수 있는 위치 정보에 대한 웹 기반의 표준안을 기술하

는 것을 목적으로 하고 있다 이 표준안에서는 주로 개 이상의 위치간 최단 경로를 찾거. 2

나 최단 통과 지점을 찾거나 사용자가 네비게이션 결정 을 하기 위, , “ (navigation decision)”

해 필요한 정보를 사용자에게 제공하는 것과 같은 서비스들에 관심을 두고 있다 이러한 서.

비스들에는 장치를 이용하고 있는 클라이언트의 위치를 네트워크를 통해 동기화 시Mobile

키는 기능 교통 혼잡도 측정과 같은 경로에 대한 부가적인 정보가 필요한 것들에 대한 데,

이타베이스를 유지 관리하는 기능 위치 정보를 제공하기 위한 제약조건을 설정하는 기능, ,

그리고 위치 정보뿐만 아니라 네비게이션을 위한 부가적인 정보 비용 시간 등을 고려한 서( , )

비스 등이 포함되어 있다.

- 51 -

는 의 제목으ISO19134 Multimodal Location Based Services for Routing and Navigation

로 두 가지 이상의 교통수단을 이용하여 두지점간의 라우팅과 네비게이션 서비스를 제공하

기 위한 정보와 데이타 명세를 개발하는 것이 목적이다 즉 의 사용자들이 가지는 상. , LBS

태 걷거나 차 자전거 지하철 이용 등 에 따른 상황을 고려하여 서비스를 한다는 개념이다( , , ) .

일반적으로 도시 사람들이 에서 많이 사용하는 서비스는 최적 혹은 근접한 경로를 구하LBS

는 것이다 사용자가 만족하게 이러한 서비스를 제공하기 위해서는 교통 혼잡 등과 같은 부.

가적인 요소를 고려하여 어떠한 교통수단을 이용하는 것이 가장 효과적인가와 같은 정보를

제공하는 것이 필요하다 즉 는 사용자가 의사 결정하기 위해서 부가적인 요소. , ISO19134

교통 체중 주차 주유비용 등 를 고려한 서비스 표준화를 개발하는 것이 목적이다( , , ) .

나 표준화 내용.

에서의 에 관한 표준화는 현재 에 대한 초안을 준비하고 있는ISO LBS WD(Working Draft)

상태이다 본 보고서에서는 그 중 에서의 표준화 내용에 대하여 살펴본다. ISO19133 .

은 클라이언트 장치들의 네비게이션 추적에 필요한 데이타 타입 그리고ISO19133 Mobile , ,

서비스에 대하여 정의하고 있다 에서는 이를 위해서 다음과 같은 가지의 기본. ISO19133 3

적인 가정을 하고 있다 첫번째는 웹상에서 가능한 서비스들을 받기 위해 웹상의 클라이언. ,

트들과 동일한 방법으로 장치들이 연결할 수 있어야한다는 것이다 두번째는Mobile . ,

클라이언트와 웹 사이의 인터페이스는 표준을 따라야 한다는 것이다 마지Mobile TC204 .

막으로 클라이언트의 상태는 클라이언트 응용 프로그램 또는 웹 어플리케이션에 의, Mobile

해서 유지 관리된다는 것이다, .

- 52 -

이것은 서비스들에 대한 모든 요청들은 요청과 응답의 쌍으로 표현된다는 것을 의미한다.

에서의 서비스 모델은 연산에 관련하여 요청하는 서비스의 데이타 타입과 응답하ISO19133

는 서비스의 데이타 타입으로 구성된다 이러한 데이타 타입들은 연산 결과와 의미에 영향.

을 주는 필수 요소들의 핵심 셋 과 선택 요소들의 셋을 가지게 된다 의(core set) . ISO9133

표준화 요소들은 기본 서비스(basic) , Measured Geometry, Measures and unit of

네트워크 피쳐 네비게이션 추적 등으로 구성된다 기본 서비스는measure, , (Feature), , . LBS

를 제공하기 위해 필요한 기능들을 정의하고 있으며 BS_Service, BS_Response,

BS_Capability, BS_InferfaceCapability, BS_CapabilityResponse, BS_Request,

와BS_CapabilityResponse, BS_Request, BS_Message, BS_ServiceStatus, BS_Address

같은 클래스로 구성된다.

그림 는 표준화 요소들 중 기본 서비스에 대한 클래스 계층도를 보여준다 는5 . BS_Service

전체 서비스의 루트 클래스이고 와 같은 연, getCapabilities, getMetaData, queryCapability

산을 제공하고 있다 클래스에는 경로를 구하는 멤버. NS_BasicNavigationService route

함수가 존재하며 클래스는 과 같은 연산을 지원, NS-RouteTranslationService Instruction

한다.

- 53 -

그림 기본 서비스 클래스 계층도5.

2. MAGIC

본 단락에서는 에서의 에 관한 표준화 현황과 내용에 대하여 설명한다MAGIC LBS .

가 표준화 현황.

은 년에MAGIC(Mobile/Automotive Geographic Information Core Services Forum) 1999

네비게이션 위치 기반 정보 전달 서비스를 위한 프로토콜과 를 개발하기 위해Mobile , API

결성되었다 초기에는 이 클라이언트 서비스 를 상업적으로 개발하는 것이 목표. MAGIC API

였으나 현재는 기반의 으로 구성된 데이타 교환을 이용하여 원격 서버와 클라, XML, SOAP

이언트간의 연결을 정의하는 작업을 진행하고 있다 현재 은. MAGIC Alpine,

등Bosch/Blaupunkt, TeleAtlas, NavTech, Microsoft, MobileGIS, Panasonic, Telcontar

의 기업이 참여하고 있다.

- 54 -

그림 은 서비스의 전체적인 구조도를 보여 준다 서비스는 서비스 제공에6 MAGIC . MACIC

관한 구현 명세인 서비스서버 클라이언트 서비스 사용에 관한 구현 명세인 클라이MAGIC / ,

언트 응용프로그램과 위치 소프트웨어 단계 구현 명세인 서비스 클라이언트, 1 MAGIC API

와 클라이언트 서버 통신 프로토콜 단계 구현 명세인 위치 서비스 와 위치 지원- , 2 API API,

그리고 단계 구현 명세인 데이타 업로드 프로토콜로 구성되어 있다3 .

그림 서비스 구조도6. MAGIC

- 55 -

나 표준화 내용.

에서는 에 대한 표준화를 위해서 년 월에MAGIC LBS 2001 3 MAGIC Service Specification

을 발표하였다 서비스에서는 장치로 연결된 사용자들에게Version 1.0 . MAGIC Mobile

를 제공하기 위하여 기능에 관한 명세를 제시하고 있다 이러한 기능에 대한 명세에는LBS .

클라이언트 응용 프로그램과 서비스 서버간의 프로토콜이나 서비스가 상세히 기술MAGIC

되어 있는데 서비스 클라이언트 위치 지원 위치 서비스 클라이언트, MAGIC API, API, API,

서버 통신 프로토콜로 구성된다- .

서비스 클라이언트1) MAGIC API

서비스 클라이언트 는 네비게이션과 위치 기반의 응용 프로그램을 개발하기 위MAGIC API

한 기본적인 기능을 제공한다 이 에는 개의 기본적인 서비스에 대한 기능을 제공하고. AIP 4

있다 첫번째는 무선 환경에서 클라이언트와 연결을 유지하기 위한 세션 서비스이. (session)

다 세션 서비스는 장비를 사용하기 위한 클라이언트가 서비스에 접근할 경우 지속. Mobile

적으로 정보를 유지 관리하여 효율적인 서비스가 가능하도록 한다 사용자가 서비스 사용을.

마치고 세션을 종료하는 경우에는 그 동안 유지되었던 세션 정보는 자동으로 해제된다.

두번째는 의미론적 서비스 이다 의미론적 서비스는 를 위한 위치 및(semantic service) . LBS

주소 관리 관심 분야 제공 등과 같은 서비스들이 서로 다른 언어나 스크립트 언어 인코딩, ,

등의 환경에서도 사용될 수 있도록 하기 위하여 개체의 이름과 카테고리를 자동으로 전환해

주는 서비스이다.

- 56 -

세번째로 질의 서비스는 사용자의 요구 사항을 처리하여 응용 프로그램에서 해당하, (query)

는 정보를 표현해 주기 위한 서비스이다 질의 서비스에서 가장 중요한 것은 모델 요소.

이다 모델 요소는 지리 정보와 부가 정보로 구성되며 세션의 주어진 뷰에 따라(element) . ,

카테고리 형태의 디스플레이 차원적인 디스플레이 텍스트 디스플레이와 같이 다양한 표현,3 ,

형태로 사용자에게 보여질 수 있다.

네번째는 이동 서비스이다 이동 서비스는 도착시간 예보 경로 안내에 필요한 지(mobility) . ,

형요소 획득 경로 안내를 위한 이정표 회전 등의 정보 획득 한 경로에서 응용프로그램으, , ,

로 하여금 운전자의 경로변경 지원 운전자가 의도적으로 경로를 이탈했는지 프로그램이 분,

간할 수 있도록 하는 기능과 같은 네비게이션 시스템의 기본적 기능을 제공한다.

위치 지원 위치 서비스2) API/ API

위치 지원 는 무선 환경에서의 통신 단절과 같은 상황에서도 사용자에게 현재 위치와API

관련된 위치 정보를 보여주기 위한 기능을 제공한다 그리고 위치 서비스 는 위치와 관. , API

련된 기본적인 기능들을 제공한다 즉 위치 서비스는 역이동 멈춤 전진 후진 사람이 앉. , , , , ,

아 있음 사람이 서 있음 걷거나 자동차를 타고 있음 등과 같은 네비게이션의 결과 정보와, ,

지면에 관련한 이동 이동체의 현 상태 그리고 사람과 차량과의 관계에 대한 정보를 제공, ,

한다.

- 57 -

클라이언트 서버 통신 프로토콜3) -

클라이언트 서버 통신 프로토콜은 기반의 를 이용하여 클라이언트 함수를 서버- XML, SOAP

함수로 변환한다 이때 서비스의 요구와 응답의 전달은 와 를 사용하게 된다. HTTP SMTP .

그림 은 서비스에서 과 를 이용한 통신 프로토콜을 보여준다7 MAGIC XML HTTP .

그림 클라이언트 서버 통신 프로토콜7.

3. OCC

본 단락에서는 에서의 에 관한 표준화 현황과 내용에 대하여 설명한다OGC LBS .

가 표준화 현황.

에서는 위치 기반의 공간 정보와 관련된 제반 정보 처리 문제OGC(OpenGIS Consortium)

들을 해결하기 위해 를 제안하고 있다 는 주로 인터페이스 장치들OpenLS . OpenLS Mobile

에 의해 요청된 들 간의 상호운용성을 지원하는 인터페이스 프로토콜 스키마 등의 명LBS , ,

세를 개발하는 것을 목적으로 하고 있다.

- 58 -

를 위한 인터페이스는 년 월 초안 작성을 목표로 차 테스트 베드가 개의OpenLS 2002 2 1 6

작업 그룹 으로 나뉘어져 진행 중에 있다 개의 작업 그룹에서 작업하고(Working Croup) . 6

있는 인터페이스는 표 와 같다2 .

표 인터페이스2. OpenLS

Working Group Interface

Navigation Services Route Determination Service

Directory(POI) Services Directory Service

Presentation ServicesPresentation Service

(Map, Route Vector, Route Directions)

Location Utility ServicesGeocoder Service

Reverse Geocoder Service

Gateway Services Gateway Service

Encodings & ProtocolsXML for Location ServicesOpenLS Interface EncodingOpenLS UML Model

는 표 와 같은 의 인터페이스를 기반으로 하여 의 표준 플랫폼을 제OGC 2 OpenLS OpenLS

시하였다 표준 플랫폼에서는 핵심 서비스와 위치 컨텐츠가 중심을 이루고 있으며 이것은.

년 월에 발표될 테스트 베드에서 중점적으로 개발될 내용이다 그림 은 의2002 2 . 8 OpenLS

플랫폼을 보여준다.

- 59 -

그림 플랫폼8. OpenLS

의 플랫폼은 기본적으로 위치 결정 경로 맵 디스플레이 디렉토리와 같은 핵심 서OpenLS , / ,

비스 네비게이션 정보 교통 정보와 같은 위치 컨텐츠 그리고 과금이나 개인 사생활 관리, , ,

와 같은 향후 개발내용으로 구성되어 있다 이러한 플랫폼은. OpenLS LIF(Location

의 위치 결정 기술을 이용하여 위치에 대한 핵심 네트워크를 구축Interoperability Forum)

하고 의 서비스를 이용하여 클라이언트들과 통신하게 된다, OpenLS .

나 표준화 내용.

의 는 위치 기반 공간 정보와 관련된 제반의 정보 처리 문제를 해결하기 위해OGC OpenLS

서 제안되었다 의 표준화는 크게 운영 구조와 기술 구조로 나뉘어 진다. OpenLS .

- 60 -

운영 구조1)

의 운영 구조는 시스템 개념과 사용 사례 로 정의된다 시스템 개념은 운OpenLS (use-case) .

영상의 설정 주된 시스템의 컴포넌트들 그리고 인터페이스로 구성된다 또한 사용 사례는, , . ,

사용자의 측면에서 시스템이 사용되는 경우를 의미한다.

그림 는 시스템 개념에서의 플랫폼 개념도를 나타낸다 그림 에서와 같이9 OpenLS . 9

플랫폼은 위치 응용 서버 위치 데이타 서버 등의 서버 측 컴포넌트 위치 서비스OpenLS , ,

클라이언트의 클라이언트 측 컴포넌트 그리고 게이트웨이 컴포넌트의 계층으로 나뉘어진, 3

다.

그림 플랫폼 개념도9. OpenLS

- 61 -

에서는 사용 사례의 측면에서 가지를 정의하고 있다 첫번째는 클라이언트가 위치OpenLS 8 .

서비스를 호출하는 경우이다 일반적으로 사용자는 위치 서비스를 이용하기 위해서 서비스.

를 호출하게 된다.

두번째는 디렉토리를 사용하는 경우이다 이 경우에는 근접 디렉토리와 정. (proximity)

디렉토리로 구분된다(pinpoint) .

세번째는 경로를 이용하는 경우이다 예를 들면 거리에 대한 정보가 데이타베이스에 저장되.

어 있을 경우 개 이상의 위치에 대하여 사용자가 최적의 경로를 얻고 싶은 경우에 위치2

서비스는 경로를 결정하는 기능과 경로를 표시하는 기능 그리고 방향을 표시하는 기능을,

제공하여야 한다.

네번째는 맵 피쳐를 디스플레이하는 경우이다 일반적으로 위치 서비스를 이용하는 사용자/ .

는 현재 자신의 위치에 대한 맵과 원하는 다른 위치의 맵 피쳐를 디스플레이하기를 원한다/ .

이러한 기능을 위해서 맵 피쳐 필터 기능이 필요하다/ .

다섯번째는 맵 피쳐와의 상호작용이 필요한 경우이다 이 기능은 사용자가 지정한 위치에/ .

대한 속성을 얻고자할 때 필요하다.

여섯번째는 위치 정보를 얻고자 하는 경우이다 일반적으로 사용자가 장치에서 얻을. Mobile

수 있는 위치 정보는 다른 위치 컨텐츠와 같이 사용되지 않는 경우에는 그 의미가 없게 된

다 그러므로 위치 컨텐츠와의 연동이 매우 중요하다. , .

- 62 -

일곱번째는 교통 혼잡 서비스에 사용되는 경우이다 이러한 교통 혼잡에 관한 정보는 경로.

결정에 접한 영향을 미친다 이 경우에 가지 형태의 서비스가 가능하다 우선 서비스 공. 2 .

급자가 그 지역을 지나는 사용자에게 현재의 교통상황을 지속적으로 보내주는 방법과 사용

자가 최상의 경로를 선택하기 위해서 교통 상황에 대한 질의를 하는 경우로 나뉘게 된다.

여덟번째는 추적을 하는 경우이다 이 경우에는 근접 추적과 정 추적으로 나뉘어 진다 추. .

적의 경우에는 디렉토리의 경우와 유사하기 때문에 초기의 테스트 베드에는 중요OpenLS

하게 다루어지지 않고 있다.

기술 구조2)

에서의 기술 구조는 운영 구조상에서 사용 사례 들을 만족시킬 수 있는OpenLS (use-case)

서비스 컨텐츠 암호화 프로토콜들에 대하여 정의하고 있다 기술 구조는 위치, (encoding), .

서비스 프레임워크와 위치 정보 프레임워크로 구성된다.

가 위치 서비스 프레임워크)

위치 서비스 프레임워크에는 기존의 우선순위 그리고OGC(Existing OGC), 1(Priority 1),

우선순위 가 존재한다 그림 은 위치 서비스 프레임워크를 보여준다2(Priority 2) . 10 .

- 63 -

그림 위치 서비스 프레임워크10.

우선순위 을 가지는 서비스는 위치 서비스 클라이언트 경로 결정 서비스 경로 벡터 디플1 , ,

레이 서비스 경로 방향 디스플레이 서비스 근접 디렉토리 서비스 정 디렉토리 서비스, , , ,

웹 맵 서비스 벡터 맵 묘사 서비스 위치 획득 서비스 지오코더 서비스 역지오코더 서비, , , ,

스 경로 서비스 그리고 교통 혼잡도 획득 서비스가 있다 이러한 우선순위 의 서비스는, , . 1

의 테스트 베드에서 중심적으로 제공될 서비스들이다OpenLS .

- 64 -

우선순위 의 서비스는 우선순위 의 서비스 개발이후에 개발되는 서비스들이다 우선순위2 1 .

의 서비스로는 서비스 가입자에게 유용한 서비스를 제공하기 위한 컨시즈 응2 (Concierge)

용 프로그램 실시간으로 가입자에게 여행 정보 등을 제공하기 위한 개인 네비게이터 응용,

프로그램 여행지 경유 순서와 같은 정보를 제공하는 여행 계획 응용 프로그램 경로를 기, ,

록하는 경로 기록 서비스 경로 재설정 서비스 등이 있다, .

나 위치 정보 프레임워크)

위치 정보 프레임워크는 가 구조적으로 상호운용성 확장성 융통성을 제공하기 위OpenLS , ,

한 것이다 이를 위해서 위치 정보 프레임워크에는 정보 요소 와 컨텐츠를 제시하. (element)

고 있다 정보 요소는 위치 피쳐 컬렉선 이벤트 속성 경로를 포함하고 있다. , , (collection), , , .

정보 요소에서의 위치는 상대적이거나 절대적인 지점 방향 그리고 시간을 의미한OpenLS , ,

다 의 테스트 베드에서는 이를 표현하기 위하여. OpenLS NRS(Name Reference System),

LRS(Linear Reference System), CRS(Coordinate Reference System),

과 같은 개의STRS(Spatial-Temporal Reference System) 4 SRS(Spatial Reference

를 사용한다System) .

피쳐는 실세계에서 측정 계산 혹은 예측 등의 방법을 사용하여 얻어낸 위치 모양 방향을, ,

가지고 있는 객체이다 에서는 이러한 피쳐를 표현하기 위하여 피쳐 타입 피쳐 식. OpenLS ,

별 피쳐관계 피처 속성 등을 지원한다 컬렉션은 피쳐들의 집합을 나타내기 위한(identity), , .

특정 카테고리를 의미하며 이벤트는 특정 시간에 피쳐에 발생한 사건을 나타낸다, .

- 65 -

속성은 피쳐를 표현하기 위한 값을 의미하고 경로는 사용자가 개 이상의 위치를 이동하기, 2

위한 지점들을 이은 것을 의미한다.

에서는 위치 기반의 컨텐츠를 제공하기 위해서 인코딩을 이용한 컨텐츠 모델을 제OpenLS

시하고 있다 이러한 컨텐츠 모델은 과 를 포함하고 있다. MicroGML MicroLOF . MicroGML

과 는 위치 기반의 컨텐츠를 제공하기 위해서 필요한 장치의 요구사항을MicroLOF Mobile

만족해야만 하는데 이를 위해서 다음과 같은 기본 사항을 만족해야 한다.

네임 스페이스를 상속해야 한다GML 2.x .①

단순 피쳐 모델과 호환성이 있어야 한다OGC .②

을 버전으로 전환할 수 있어야 한다MicroGML GML 2.x .③

그림 은 에서의 과 사이의 관계 및 역할을 보여준다 웹 피쳐 서11 OpenLS MicroGML GML .

버 및 가 아닌 분야에서는 응용프로그램이 을 이용하여 데이타 모델을 구축(WFS) LBS GML

하고 데이타를 교환한다 그리고 를 위한 응용 프로그램에서는 로부터 변환된 형. , LBS WFS

태의 를 전송 받아서 사용하게 된다MicroGML .

- 66 -

그림 과 의 관계 및 역할11. MicroGML GML

기타 표준화 단체4. LBS

는 인터넷 구조 및 인터넷관련 제반 운영 요소들IETF(Internet Engineering Task Force)

에 대한 표준을 정의하고 있고 는, W3C (WWW Consortium) XML, POIX(Point Of

와 같은 웹과 관련Interest exchange language), NVML (Navigation Markup Language)

한 제반 기술 및 제품들 간의 상호 운용성을 위한 표준들을 정의하고 있다 는 유럽. 3GPP

이동전화 방식인 망을 사용하는 세대GSM (Global System for Mobile Communication) 3

이동통신 시스템용 기술 명세를 개발하고 있으며 는 북미 한국 일본 등의 무선이, 3GPP2 , ,

동통신방식인 망을 위한 기술 명세를 개발하고 있다CDMA .

- 67 -

는 가 주축이 되어 결성LIF(Location Interoperability Forum) Motorola, Ericsson, Nokia

한 포럼으로 위치 서비스를 위한 솔루션을 개발하고 이러한 서비스를 위한 위치 추Mobile ,

적 방식과 통신 인터페이스에 상관없이 공간 정보에 접근할 수 있도록 하는 표준 프로토콜

을 정의하고 있다 그리고 에서는 무선 장치들이 통신할 수 있는 표준 프로토. , WAP Forum

콜의 개발을 위해 등의 기업이Ericsson, Motorola, Nokia, Unwired Planet WAP

을 발표하였다Specification version 2.0 .

이러한 표준화 단체들은 독립적으로 에 관련된 표준화를 수행하는 것이 아닌 유기적인LBS

관계를 유지하면서 에 대한 표준화를 수행하고 있다 그림 는 표준화를 위한 다LBS . 12 LBS

양한 표준화 단체들 간의 전반적인 프레임워크를 보여준다.

그림 표준화 프레임워크12. LBS

- 68 -

우선 에서는 공간 데이타에 대한 웹서비스 인터페이스를 정의하고 에서는, OpenGIS , OpenLS

이를 이용하여 개방형 플랫폼에 대한 인터페이스를 제공한다LBS . MAGIC, WAP, W3C,

등에서는 에 필요한 프로토콜 및 서비스를 제공하고 에서는 에 영IETF OpenLS , LIF Parlay

향을 받은 를 정의한다 는 서드 파티의 응용MLP(Mobile Location Protocol) API . Parlay

프로그램과 차세대 통신 서비스를 연결하는 인터페이스를 정의한다 는 차세대 통. JAIN API

신 서비스를 위한 자바 기반의 인데 와 지능형 네트워크 프로토콜의 통합한 형태이API , IP

다 그리고 최상위의 등은 통신 프로토콜을 정의한다. , UMTS, GPRS, 3GPP .

제 절 무선 인터넷 프로토콜 표준화 동향4

현재 사용되고 있는 무선 인터넷 프로토콜은 크게 가지의 형태로 구분된다 완전 무선망에4 .

서 인터넷 서비스를 하기 위해 개발된 주소를 비롯한 네트워크 환경을 바꾸지MANET, IP

않고 지리적인위치에 상관없이 무선 인터넷 서비스를 이용할 수 있는 핸Mobile IP, TCP

드오프를 실행시키기 위한 무선 그리고 휴대폰 단말기에 직접 적용하기 위해서 사용TCP,

되는 과 이에 대응하는 로 나뉘어 진다 본 절에서는 위치 기반 서비스를 위WAP C-HTML .

한 표준 프로토콜의 표준화 동향에 대하여 설명한다.

- 69 -

1. 3GPP

는 유럽 이동전화 방식인 망을3GPP GSM (Global System for Mobile Communication)

사용하는 세대 이동통신 시스템용 기술 명세를 개발하기 위해서 구성된 단체이다3 . 3GPP

는 ETSI (European Telecommunications Standard Institute), CWTS (China Wireless

Telecommunication Standard group), TTA (Telecommunications Technology

Association), TTC (Telecommunications Technology Committee), ARIB (Association

의 개 기관으로 구성되어 있다of Radio Industries and Businesses), T1 Committee 6 .

에서는 주로 이동통신 서비스를 위해 필요한 통신망 관련기술 규격의 개발이 주된 목3GPP

적이다 의 주요 활동 내용은 진화된 핵심망과 참가자들이 지지하는 무선접속기. 3GPP GSM

술 및 방식의 을 바탕으로 한 세대 이동통신 시스템에 대하여 전 세계적(FDD TDD UTRA) 3

으로 적용 가능한 기술규격과 보고서를 준비 승인 및 유지하는 것이다, .

2. 3GPP2

북미 한국 일본 등의 무선이동통신 방식인 망을 위한 기술 명세를 개발하기 위해, , CDMA

구성된 단체가 이다 는 미국의3GPP2 . 3GPP2 TIA (Telecommunications Industry

한국의 중국의 그리고 일본의 와 로 구성되어 있다Association), TTA, CWTS, ARIB TTC .

- 70 -

의 목적은 진화된 핵심망과 를 바탕으로 한 세대 이3GPP2 ANSI-41 CDMA 2000, 3GPP 3

동통신 시스템과 관련된 기술규격 및 기술보고서의 준비 승인 그리고 유지하는 것이다 또, , .

한 의 주요 활동내용은 무선 인터페이스 작성 무선패킷 데이타 망 구성, 3GPP2 3GPP2 , ,

인터페이스 개인통신교환기와 기지국제어기간의 프로토콜 시스템 개발 기타 서비스 및A- ( ) ,

시스템 개발 등 다양한 분야에 걸쳐 있다.

3. LIF

는 년 월 가 주축이 되어 결성한 포럼이다 에서는LIF 2000 9 Motorola, Ericsson, Nokia . LIF

위치 서비스를 위한 솔루션을 개발하고 이러한 서비스를 위한 위치 추적 방식을 정Mobile ,

의하고 또한 통신 인터페이스에 상관없이 공간 정보에 접근할 수 있도록 하는 방법을 정의,

하는 것을 목적으로 하고 있다 현재 에서는 로 접근하는 공개 를 제공. LIF GMLC/MPC API

하고 있으며 년 월에는 을 제시하였다, 2001 10 Mobile Location Protocol Version 2.0 .

에서 위치 기반 서비스에 대한 주된 관심 분야는 다음과 같다 첫번째는 위치 기술은LIF . ,

와 같은 메쏘드나 위치 기술 인터페이스를 개발하여 표준안을 작Cell-ID, E-OTD, A-GPS

성하는 것이다 두번째는 위치 기반 서비스의 표준화된 인터페이스와 메쏘드를 제공하는. ,

응용 프로그램 컨텐츠 인터페이스를 개발하는 것이다 세번째는 사용자의 사생활을 보호하/ . ,

고 무선 네트워크를 사용하는 동안에 보안을 유지해 주기 위한 사생활과 보안에 관한 것이,

다 마지막으로 위치기반 서비스를 제공하는 네트워크 관리자 서비스 제공자 그리고 컨텐. , , ,

츠 제공자들이 그들의 서비스에 대하여 과금을 책정하고 수익을 공유할 수 있는 표준화된

인터페이스를 제공하는 과금과 공급에 관한 것이다.

- 71 -

그림 은 다른 표준화 기구와 사이의 기술 관계 를 보여준다13 LIF (technicalrelationship) .

에서는 의 를 사용하여 데이타베이스를 구축하고 위치 서버와 응용 프LIF OpenGIS GIS DB ,

로그램 서버와의 통신을 위해 대 시스템의 표준화 담당 의 프로토콜3GPP, TR45(800MHz )

을 이용한다 그리고 의 프로토콜을 이용하여 브라우저와 데이타. , WAP Forum WAP WAP

전송을 수행하고 의 표준화 명세를 이용하여 웹 응용 프로그램과 연동한, OGIS, W3C, IETF

다.

그림 기술 관계 범위13. LIF

- 72 -

제 장 시스템 설계4

본 장에서는 실시간 데이타베이스 시스템을 이용한 의주요 기능을 살펴보고 전Mobile GIS ,

체적인 구조를 설계한 후 전체 시스템을 구성하고 있는 각 관리자에 대하여 설명한다.

제 절 설계 고려사항1

본 연구에서 개발한 실시간 데이타베이스 시스템을 이용한 는 컴퓨팅Mobile GIS Mobile

시스템 위치 정보 시스템 를 연동한 형태로서 컴퓨팅 시스템이 갖추어야 될 요, , GIS Mobile

구사항 위치 정보 시스템이 갖추어야 될 요구사항 그리고 가 갖추어야 될 요구사항을, , GIS

모두 만족시켜 주어야 한다 또한 이동하는 클라이언트가 서버 측의 자원 접근을 위한 효. ,

율적인 방법과 지도 데이타의 전송을 위한 신뢰성 있는 방법도 제공해야 한다.

본 시스템의 설계 시 특별히 고려한 사항들은 다음과 같다 우선 클라이언트 미들웨어 실. , ,

시간 데이타베이스 서버 구조를 통하여 데이타 서버의 공간 데이타를 클라이언트가 부GIS

담을 줄이면서 이용할 수 있고 를 이용하여 클라이언트 미들웨어와 실시간 데이타, TCP/IP ,

베이스 서버 사이에 신뢰성 있는 정보 전송을 할 수 있어야 한다 또한. , Windows CE,

같은 상의 운영체제를 통해서 실시간 데이타베이스 서버의 공간 데Embedded Linux PDA

이타를 볼 수 있어야 한다 그리고 등과 같은. , Shareware GIS, Legacy GIS, Internet GIS

기존에 사용되고 있던 여러 가지의 를 연결하여 사용할 수 있는 분산 시스템으로의 확GIS

장성도 제공해야 한다.

- 73 -

제 절 시스템의 구성도2

본 연구에서 개발한 실시간 데이타베이스 시스템을 이용한 는 사용자의 위치 정Mobile GIS

보 공간 데이타 그리고 비공간 데이타를 관리하기 위한 실시간 엔진 알고리즘 처리, , GIS ,

및 질의 처리를 위한 미들웨어 사용자에게 지도 데이타를 통해 자기 자신의 위치를 보여주,

고 질의를 입력받는 클라이언트 실시간 엔진에 지도 데이타를 로딩하기 위한Mobile , GIS

백엔드 그리고 위치 추적이나 위치 검색에 사용되는 위치 데이타를 저장하기 위한 위GIS,

치 데이타 저장 시스템으로 구성된다.

그림 는 실시간 데이타베이스 시스템을 이용한 의 개략적인 시스템 구성도를14 Mobile GIS

보여준다 우선 장치인 클라이언트에서는 사용자의 질의 및 위치 정보를 게. Mobile Mobile

이트웨이인 미들웨어로 전송하게 되고 미들웨어에서는 질의 및 알고리즘을 처리하기 위해,

실시간 엔진에 접근하게 된다 실시간 엔진은 질의 및 알고리즘을 처리하기 위하여CIS . GIS

주기억장치에 존재하는 지도 데이타 및 위치 데이타를 반환하게 되고 이 과정에서 대용량,

의 위치 데이타 검색을 위한 위치 데이타 저장시스템과 공간 및 비공간 데이타를 주기억장

치에 적재하기 위한 백엔드 를 사용하게 된다GIS .

- 74 -

그림 전체 시스템 구성도14.

제 절 클라이언트3

일반적인 형태의 장치에서는 가 처리할 수 있는 능력이 낮고 장치가 가지는Mobile CPU ,

규모의 한계 때문에 저장 용량도 매우 낮다 또한 전지의 수명이 짧은 단점과 낮은 대역폭. ,

을 이용하여 데이타를 송수신하기 때문에 전송되는 데이타에 대한 신뢰성도 매우 낮다 이.

러한 비효율성을 고려하여 작업의 규모는 가능한 작은 형태로 장치에서 모두 처리Mobile

된 다음에 미들웨어로 전송되어야 한다 이를 위해 본 시스템에서는 미들웨어에서 가능한.

기능들을 수행하게 함으로써 클라이언트와 미들웨어간의 기능 분담을 통해 클라이언트의 부

담을 줄였다.

- 75 -

클라이언트는 그림 와 같이 데이타 수신 관리자 드라이버 디스플레이 관리15 GPS , GPS ,

자 좌표 매핑 관리자 좌표 변환 관리자 인터페이스 관리자로 구성된다, , , .

그림 클라이언트의 구성도15.

드라이버1. GPS

수신기는 지구 궤도를 돌고 있는 위성으로부터 클라이언트 사용자가 자신의 위GPS GPS

치를 파악하는데 필요한 여러 좌표들을 제공한다 수신기는. GPS NMEA(National Marine

프로토콜을 사용하며 위치 정보를 얻기 위하여 주로 가지Electronics Association)0183 5

의 유형을 이용한다 즉 를 이용하며 이 중에. , GPGGA, GPGLL, GPRMC, GPGSA, GPGSV ,

서 패킷을 이용하여 위치정보를 얻을 수 있게 된다 드라GPGGA, GPRMC, GPGLL . GPS

이버는 수신기가 위성으로부터 프로토콜을 통해 수신한 위치정보를GPS NMEA0183 GPS

데이타 수신 관리자로 전송한다.

- 76 -

데이타 수신 관리자2. GPS

데이타 수신 관리자에서는 입력받은 데이타를 파싱하여 자신의 위치 정보를 표시하는GPS

데 필요한 위도 경도 고도를 산출해 낸다 이 정보는 라고 하는 세계 좌표계로 이, , . WGS84

루어져 있다 지구는 타원체이므로 세계표준으로 이루어진 좌표계와 우리나라를 중심으로.

한 좌표와는 타원체의 경사도가 다르다 그러므로 우리나라와 일본을 중심으로 하는. ,

좌표계로 바꾸어서 위도 경도 고도로 표현한다Bessel , , .

좌표 매핑 관리자3.

일반적으로 에서 사용되는 좌표는 바이트의 형을 가지는 공간 데이타 값을 사용GIS 8 double

한다 이러한 공간 데이타 값을 맵 뷰어나 클라이언트에서 디스플레이하기 위. Mobile GIS

해서는 실수와 정수에 대한 매핑 방법을 많이 사용한다 실세계 좌표인. (x, y 를 장) Mobile

치의 좌표인 (u, v 로 옮길 때 다음의 식을 사용하게 된다) .

여기서 우리가 등방위 모드를 쓴다고 가정하여 축척의 역수를 로 표시하고ISOTROPIC( ) L

기준점을 (x0, y0)(u0, v0 로 치환하여 계산하면 다음과 같은 식을 사용할 수 있다) .

- 77 -

여기서 (x0, y0)(u0, v0 는 좌표변환의 중심점이 된다) .

위의 식에서 의 단위는 아직 단위이므로 이를 장치의 정수형 단위로 바(u, v) meter Mobile

꾸어야 한다 는 리미터 단위로 장치의 를 나타내고 는 단위. hsize Mobile size hres pixel

로 장치의 를 나타낸다 그러므로 는 당 수Mobile size . , (hres * 1000 / hsize) meter pixel

를 나타낸다.

그러므로 최종 식은 다음과 같게 된다, .

여기서 이 이면 의 축척으로 실제 가 화면에 정확히 로 표시되게L 1000 1/1000 1000m 1m

된다 그림 은 이를 구현한 함수를 보여준다. 16 .

- 78 -

그림 좌표 매핑 함수16.

좌표 변환 관리자4.

일반적으로 에서는 휴대용 와 같은 네비게이션 장치를 이용하여 현재의 좌Mobile GIS GPS

표를 입력받고 그에 대한 연산을 수행하게 된다 현재 는 라는 좌표체계로 운영. GPS WGS84

된다 좌표계는 년대 말에 미국 국방성에서 전세계에 대하여 하나의 통일된. WGS84 1950

좌표를 사용할 수 있도록 세계측지측량기준계(WGS 1960: World Geodetic System 1960)

라고 하는 지심 좌표계를 만들었다 개발위원회에 의해 기준 타원체가 계속 발전되어. WGS

현재는 좌표계로 확정되었다WGS84 .

좌표계는 직교좌표계가 아니므로 평면상에 그대로 표시하기에는 무리가 있으며 그WGS84

에 따른 변환 상수들을 조정해야 우리가 흔히 보는 지도의 모습이 나타나게 된다 즉 거리. ,

나 방향각 등을 계산하기 위해서는 다른 직교좌표계로 변환이 되어야 하는데 일반적으로,

좌표계가 사용된다 그림 은 좌표 변환 과정과 결과 값을UTM, TM, TM128(KATECH) . 17

보여주고 있다.

- 79 -

그림 좌표 변환 과정과 결과값17.

본 연구에서의 좌표 변환 관리자는 WGS84->BESSEL, BESSEL->TM, BESSEL->UTM,

와 같은 좌표 변환 기능을 가지고 있TM->BESSEL, UTM->BESSEL, BESSEL->WGS84

다.

- 80 -

디스플레이 관리자5.

장치에서 사용자가 지도를 보면서 작업할 수 있는 디스플레이 화면에 지도가 디스Mobile

플레이 되는 과정은 다음과 같다 를 통해 전송받은 공간 데이타는 공간 데이타 파. TCP/IP

싱 모듈에 의해 파싱된다 문자열은 을 구분하는 식별자가 먼저 전송되. point, line, polygon

고 식별자에 해당하는 공간 좌표가 전송되므로 각 식별자를 파악한후 해당 좌표 값을 파싱,

한다 그 다음 디스플레이 관리자를 통해 화면에 디스플레이 된다 화면에 디스플레이 되는. .

경우 미들웨어를 거쳐 클라이언트로 전송되는 데이타는 좌표로 이루어져 있으므로 화TM

면상에 디스플레이 하기에는 좌표 영역이 넓다 그러므로 좌표 변환 관리자를 사용하여. ,

좌표를 클라이언트 화면상에 디스플레이 가능한 수치로 변환한 다음 화면상에 디스플TM

레이 한다.

인터페이스 관리자6.

인터페이스 관리자는 클라이언트의 여러 가지 기능들을 사용자가 이용할 수 있도록 인터페

이스를 제공한다 인터페이스 관리자는 지도디스플레이 화면 현재 마우스 포인터에 대한. ,

좌표 정보 표시기 등으로 구성되어 있다 인터페이스 관리자로부터, Zoom-In, Zoom-out .

입력받은 질의는 무선 인터넷을 통하여 미들웨어로 전송된다 미들웨어는 실시간 엔진. GIS

을 통하여 질의 및 알고리즘을 처리하고 그 결과를 반환하게 된다 본 연구에서는 효과적인.

클라이언트의 인터페이스 사용을 위하여 현재 많이 사용되는 운영체제인 를Windows CE

기반으로 인터페이스 관리자를 설계 및 구현하였다.

- 81 -

제 절 미들웨어4

미들웨어는 클라이언트에서 요구된 사항을 질의로 생성하여 실시간 엔진으로 전송하고GIS

그 처리 결과를 임시 저장한다 미들웨어는 그림 과 같이 질의 관리자 공간 연산 관리. 18 ,

자 공간 알고리즘관리자 데이타 추출기 서버 리스트 관리자 데이타 전송 관리자로 구성, , , ,

되어 있다.

미들웨어는 무선 이동통신 방식의 제약인 클라이언트의 저용량과 단절 현상을 보완해 주기

위한 것이다 그래서 미들웨어는 클라이언트가 요청한 작업이 서버로 정확히 전달되었는지. ,

와 서버에서 클라이언트로 처리한 작업이 정확히 전달되었는지를 확인하며 만약 데이타가,

정확히 전송되지 않은 경우를 대비하여 데이타를 임시로 저장해둔다.

그림 미들웨어의 구성도18.

- 82 -

데이타 전송 관리자1.

일반적으로 무선 인터넷 환경은 기존에 사용되고 있는 유선 인터넷 환경에 비하여 상당한

문제점을 가지고 있다 즉 사용자의 위치의 변동으로 인한 데이타 전송의 어려움과 수신. ,

감도에 따른 데이타의 손실이 자주 발생하기 때문이다 그리고 장치의 전원도 이러. , Mobile

한 데이타 전송에 상당한 영향을 주게 된다 그러므로 일반적으로 짧은 시간에 많은 데이. ,

타를 압축하여 지속적으로 보낼 필요가 있기 때문에 대용량의 공간 데이타를 전송해야 하는

위치 기반 서비스는 높은 압축율을 가지는 데이타 전송 기술에 의해 그 성능이 결정되게 된

다.

이러한 데이타의 압축 기법은 일반적으로 화일 압축 방법과 패킷압축 방법으로 나눌 수 있

다 화일 압축 방법은 장치에서 저장될 화일을 미리 서버 측에서 생성한 다음 화일. Mobile

에 대한 압축 알고리즘을 수행하고 압축된 화일을 장치에 전송한 후 장치에Mobile Mobile

서 압축을 푸는 방법이다 이러한 방법은 전체 데이타를 한번에 보냄으로 인하여 서버의 부.

하를 줄일 수 있는 장점이 있지만 장치의 처리 능력이 낮은 경우에는 데이타, Mobile CPU

의 압축을 해제하는데 상당한 시간을 소모하게 된다 그리고 데이타의 전송이 완료된 후에. ,

압축을 풀 수 있기 때문에 위치 이동은 빠르지만 무선 인터넷 느린 경우에는 데이타 표시에

지연 이 발생하게 된다(delay) .

패킷 압축 방법은 무선 인터넷을 통하여 장치로 데이타를 전송하기 전에 각 패킷Mobile

단위로 압축을 수행하는 방법이다.

- 83 -

이러한 방법은 패킷이 전송되는 직전에 패킷에 대한 압축이 수행되고 장치에서 패Mobile

킷을 받아들인 후 압축을 해제하기 때문에 전송되는 패킷의 크기를 줄일 수 있다는 장점이

있으며 또한 패킷 단위의 압축을 수행하기 때문에 보안에 관한 문제를 어느 정도 해결할,

수 있다.

그러나 패킷 압축 방법은 패킷이 생성될 때마다 압축을 수행해야 하기 때문에 위치 기반,

서비스를 제공하는 서버에 부하가 생기게 된다 본 연구에서는 패킷 압축을 중심으로 데이.

타 전송 기술을 개발하였다.

공간 알고리즘 관리자2.

를 개발하기 위해서는 우선 작은 양의 기억장치 낮은 처리 능력을 가지는Mobile GIS ,

장치에서의 특징과 불안정하고 신뢰성이 떨어지는 무선 인터넷 환경을 충분히 반영Mobile

하여야 한다 에서 가장 많이 사용되는 데이타는 사용자의 현재 위치를 중심으. Mobile GIS

로 주변의 영역에 대한 공간 및 비공간 데이타이다 그러나 이러한 데이타들은 일반 에. , PC

서도 그 처리가 쉽지 않은 대용량의 데이타이기 때문에 장치에서 사용하기 위해서Mobile

는 장치에서 처리하기에 적합한 형태의 데이타로 크기를 줄이는 방안이 필요하다Mobile .

또한 속도가 느리고 낮은 신뢰성을 가지는 무선 인터넷 환경에서는 가능한 작은 용량의 데,

이타를 전송해야 한다 즉 환경에서 효과적인 서비스를 제공하기 위해서는. , Mobile

에 기반한 공간 데이타 압축 알고리즘이 필요하다 이를 위하여 본 연구Arithmetic coding .

에서는 환경에 적합한 공간 데이타 압축 전송 기법을 개발하였다Mobile / .

- 84 -

가 코딩 기법. Arithmetic

에서는 사용자의 위치 정보 및 요청하는 위치에 대한 정보를 통일된 좌표계를Mobile GIS

사용하여 표현하거나 각 좌표계간의 변환함수를 이용하여 데이타를 표현하게 된다 그리고. ,

이러한 데이타는 서버에서 현재 위치의 주변 지역에 대한 공간 데이타나 비공Mobile GIS

간 데이타를 장치에 전송하게 된다 그러나 장치는 기억 용량이 그리 크지Mobile . , Mobile

않기 때문에 과 같은CNS(Car Navigation System), PNS(Personal Navigation System)

이동하는 상태에 대한 데이타를 처리하기 위해서는 주기적으로 무선 인터넷을 통한 데이타

의 전송이 필요하다 즉 현재 위치나 검색하고자 하는 위치 이외의 지역은 장치에. , Mobile

기억되어 있을 필요가 없게 된다.

이를 위해서 서버에서 무선 인터넷을 통하여 장치에 존재하지 않는 데Mobile GIS Mobile

이타를 주기적으로 전송하게 되는데 데이타의 용량을 고려하여 일반적으로 공간 데이타를

이진 화일 형태로 변환하여 장치에 저장하게 된다 이러한 과정에서 네트워(binary) Mobile .

크의 전송 및 장치의 부담을 줄이기 위해서 데이타의 손실이 없이 크기를 줄이는Mobile

압축 과정이 사용되게 되는데 이를 코딩이라고 한다Arithmetic .

일반적으로 맵 매핑 함수를 이용하게 되면 바이트의 데이타 타입을 바이트로 줄일 수 있8 4

으므로 정도의 압축율을 보이게 된다 그러나 이러한 정수형 좌표 변환 방법은50% . ,

장치에서 두 사물간의 거리나 방향각 등을 계산하기 위해서는 큰 오차값을 제공한Mobile

다는 단점이 있다.

- 85 -

예를 들면 의 축척에서는 실제의 가 장치에서의 로 표현된다,1/25000 250m Mobile 1cm .

내에 개의 이 있다고 가정할 때 한 은 실제의 에 해당이 된다 즉1cm 100 pixel pixel 2.5m . ,

변환이 야기하는 손실된 데이타 값에 의하여 실제상으로는 큰 거리차를 나타내게 되는 것이

다 결론적으로는 형의 데이타 타입에서 손실이 발생하면 실 거리상에서의 오차가. double

발생하게 된다.

이를 보완할 수 있는 방법이 기준점과의 거리차를 이용한 코딩 기법이다 일반적Arithmetic .

으로 에서 가장 많은 크기를 차지하는 것은 나 이 아닌 이나GIS Point SimpleLine MultiLine

이다 이러한 이나 은 가변 길이 데이타이기 때문에 이에 대한 처Polygon . MultiLine Polygon

리가 매우 어렵지만 대부분이 같은 클래스 레이어 에 기반하여 작성이 되고 기준점을 중심, ( )

으로 하여 연결된 형태를 띄고 있다 즉 특정 부위에 대하여 클러스터링된 형태를 띄게 된. ,

다 클러스터링 되어 있는 나 을 기준점을 기준으로 하여 거리의 차를. Multiline l Polygonㅇ

구하게 되면 실제 기준점의 데이타는 바이트를 차지하게 되지만 그 이후에 나타나는 차의8

값은 점차적으로 정수측의 값이 작게 나타나게 된다.

이 값은 집되어 있는 이나 의 경우일수록 더욱더 작아지게 된다 예를Multiline Polygon .

들어 {207068.9921, 451486.2931}, {207061.114, 451469.1631}, {207048.305,

와 같은451477.8571}, {207057.3085, 451495.4036}, {207068.9921, 451486.2931} 5

개의 점으로 이루어진 이 있었을 경우 맨 처음 값인 과 이어지는 다Polygon 207068.9921

음 좌표 값들의 차는 과 같은 값을 가지게X 7.878100, 20.687100, 11.683600, 0.000000

된다 이러한 경우 앞의 정수측의 값은 비트 연산을 이용하면 충분히 줄일 수 있게 되는데.

장치에 전송하기 전에 가감산 연산을 수행하고 데이타를 전송한 후 장치에Mobile Mobile

서 이 데이타를 이용하여 형태의 데이타를 만들어 내게 되면 무선 인터넷을 이용하double

여 데이타를 전송할 경우 그 크기를 줄일 수 있게 된다.

- 86 -

일반적으로 국내에서 많이 사용되는 좌표졔나 좌표계는 정수측 십만 단위TM KATECH ,

소수점 아래 자리까지 구성된다 이 경우에 거리의 차이 값을 이용하게 되면 정수측은5-6 .

최대 십만 단위 소수점 아래는 최대 자리로 구성된다 그러나 실 좌표계를 이용하여, 5-6 . ,

보았을 때 정수측이 십만 단위가 나올 경우는 거의 없다 이와 같은 값을 이용한다면 부동.

소수점을 이용하는 바이트 형태보다는 고정 소수점을 이용하는 방법이 사용되면8 double

훨씬 그 크기를 줄일 수 있게 된다.

예를 들어 위의 좌표 값의 차인 을 다음과 같이 표현할 수 있다 맨 앞의 플래그, 7.878100 .

는 양수인지 음수인지를 표시하고 각 길이에 대한 플래그는 실제 값이 차지하는 비트의 크,

기를 표시한다 즉 은 실제 값이 비트 는 비트 은 비트 는 비트 는 비트. , 1 4 , 2 8 , 3 12 , 4 16 5 20

의 크기를 가지고 있다는 의미이다 각 비트 단위마다 값은. 15,255, 4095, 65535,

의 크기까지 표현할 수 있다 에서의 정수부인 은 양수이기 때문에1048575 . 7.878100 7

를 표시하는 정수부 길이 플래그의 그리고 을 비트로 표현하면 즉signed 0, 001, 7 4 0111,

을 값을 가지게 된다 그리고 소수아래 부분은 이므로 소수부 길이 플래00010111 . , 878100

그는 실제 값은 을 가지게 된다 이와 같은 과정을 거쳐서0101, 11010110011000010100 .

을 표현하기 위한 바이트를 의 바7.878100 8 00010111 01011101 01100110 00010100 4

이트로 표시할 수 있다.

- 87 -

이러한 경우를 생각해 보면 최소한으로 표현할 수 있는 값은 양수 음수를 표현하는 비트/ 1 ,

정수부 길이 플래그 비트 실제값 비트 소수부 길이 비트 실제값 비트인 바이트로3 , 4 , 4 , 4 2

최소의 값을 표현할 수 있다 그리고 최대로 표현할 수 있는 값은 양수 음수 표현하는 비. , / 1

트 정수부 길이 플래그 비트 실제값 비트 소수부 길이 비트 실제값 비트로 최대, 3 , 20 , 4 , 20

바이트로 값을 표현할 수 있다 즉 형으로 하나의 점을 표시할 때 바이트가 소5 . , double 16

모되는 것을 최소 바이트 최대 바이트로 표현할 수 있게 된다 그림 는 각 플래그4 , 10 . 19

및 값이 차지하는 바이트를 표현한 것이다.

그림 플래그 및 값이 차지하는 바이트19.

그러나 이렇게 표현할 경우 표현하고자 하는 이나 이 클러스터링 되지 않, Multiline Polygon

았을 경우에는 약간 비효율성이 발생하게 된다 즉 값의 차이가 크기 때문에 큰 압축의 효. ,

과를 기대하기 어렵다 이러한 경우에는 과 의 중간값을 구한 후 기준점을. Multiline Polygon

중간값으로 하고 나머지 좌표를 중간값과의 차를 이용하여 표현하는 방법을 사용할 수 있

다.

나 점진적 전송 기법.

에서 주로 사용되는 사용자의 데이타의 요청은 주로 특정 위치에 대한 경로 및Mobile CIS

주변 위치 데이타 현재 진행하고 있는 방향에서 앞으로 입력받아야 하는 위치에 대한 데이,

타 그리고 어떤 사물이나 사람의 현재 위치에 대한 것이다 이러한 사용자의 요청을 처리, .

하기 위한 데이타는 사용자나 사물의 위치와 같은 동적 데이타와 특정 위치에 대한 주변 데

이타와 같은 정적 데이타가 같이 사용되게 된다.

- 88 -

를 사용하는 사용자는 주로 특정 위치에 대한 데이타를 사용하는 빈도수는 높은Mobile GIS

반면에 특정 위치에서 먼 데이타는 관심이 없는 경향이 있다 이를 고려한다면 무선 인터넷.

을 이용하여 데이타를 전송할 경우 사용자에게 필요한 공간 및 비공간 데이타를 먼저 전송

한 후 거리가 먼 데이타를 전송하는 방법을 사용하게 되면 사용자의 질의에 대한 결과를 신

속하게 디스플레이 할 수 있게 된다 이를 위해서 사용되는 방법이 공간 및 비공간 데이타.

에 대한 점진적 전송 기법이다.

점진적 전송 기법은 기존의 공간 데이타베이스 시스템과는 다른 만의 독특한 성Mobile GIS

격을 이용한 것이다 일반적으로 장치에서는 낮은 성능을 극복하기 위해서 캐쉬를 사. Mobile

용하게 된다 즉 사용자에게 디스플레이되는 영역보다 큰 메모리 영역에 지도 데이타와 같. ,

은 공간 및 비공간 데이타를 먼저 표현한 후 사용자에게 필요한 영역만 장치에 보Mobile

여주게 된다 이러한 방법은 지도 데이타를 디스플레이하는데 효율적이며 동적인 사용자 위.

치 정보는 필요한 순간에 디스플레이 좌표로 변환되어 표현된다 이러한 방법을 응Mobile .

용하면 서버에서 장치에 현재 필요한 데이타를 먼저 보내고 점차적으로 부수적인Mobile

데이타를 전송하게 되면 사용자의 장치에서는 사용자가 관심이 있는 부분이 먼저 보Mobile

이고 난 후에 나머지 지역이 디스플레이되는 형식을 사용할 수 있다.

- 89 -

점진적 전송 기법에는 가지의 방법이 있다 첫번째는 위치를 기반으로 하여 인접한 위치에2 .

있는 공간 및 비공간 데이타를 먼저 보내고 난 후에 먼 거리의 위치에 있는 데이타를 보내

는 위치 기반 점진적 전송 기법이다 두번째는 건물의 중요도를 중심으로 하여 중요도가 높.

은 공간 및 비공간 데이타를 먼저 보내고 난 후에 중요도가 낮은 데이타를 보내는 중요도

기반 점진적 전송 기법이다 효율적인 위치 기반 서비스를 제공하기 위해서는 이러한 가지. 2

형태의 점진적 전송 기법을 모두 반영하여야만 한다.

위치 기반 점진적 전송 기법을 그림으로 표현하면 그림 과 같다 위치를 기반으로 하는20 .

점진적 전송 기법에서는 를 통한 현재의 위치와 이동하는 속도 그리고 이동하는 방향GPS ,

값을 이용하여 앞으로 전송되어야 하는 공간 및 비공간 데이타 부분을 결정한다 그림 에. 20

서와 같이 현재 위치를 표시하는 에서 진행방향은 를 향하고 있다고 가정하면 서버에서C B

는 현재의 지점 를 먼저 보내고 큐에 의 영역을 저장한 후에 장치로의 전송을C A Mobile

기다리게 된다 그러나 이동 속도에 의해서 가 보내지기 전에 와 의 영역에 대한 요청. , A B D

이 오게 되면 큐 내부에서 는 와 의 다음에 위치하게 된다 이러한 방법을 이용하여 전A B D .

송이 이루어지면 현재 위치를 중심으로 사용자에게 필요한 데이타가 먼저 전송되기 때문에

효율적으로 데이타의 전송이 이루어지기 된다.

- 90 -

그림 위치 기반 점진적 전송 기법20.

중요도 기반 점진적 전송 기법은 사용자에게 전송될 데이타를 높은 중요도를 가지는 데이타

부터 낮은 중요도를 가지는 데이타의 순서로 전송하는 방법이다 이는 에서 특정. CNS, PNS

위치를 검색하는 경우에 유용하게 사용될 수 있다 예를 들면 사용자의 현재의 위치에서. ,

볼 수 있는 큰 건물이나 유명 장소를 중심으로 거리와 방향이 표현된다면 사용자는 쉽게 목

적하는 장소를 찾을 수 있게 된다 그리고 나서 세부적인 형태의 데이타가 전송되기 때문에.

목적지 근처에서의 상세한 지도 검색이 가능하게 된다 이 방법은 서버측에서 전송될 데이.

타에 대한 부가적인 작업이 필요하게 되나 일정한 규칙에 의한 샘플링 알고리즘을 개발한,

다면 좀 더 효율적으로 데이타를 전송할 수 있을 것이다 그림 은 중요도 기반 점진적 전. 21

송 기법을 보여준다.

- 91 -

그림 중요도 기반 점진적 전송 기법21.

서버 리스트 관리자3.

서버 리스트 관리자는 클라이언트에서 요청된 질의 및 알고리즘을 처리하기 위한 실시간

엔진의 리스트를 관리한다 본 연구에서의 실시간 엔진은 설치되는 시스템에 따라GIS . GIS

주기억장치의 용량이 큰 경우에는 하나의 실시간 엔진에서 큰 용량의 공간 및 위치 데GIS

이타를 관리할 수 있지만 그렇지 않은 시스템인 경우에는 작은 용량의 데이타를 관리해야만

한다 이러한 이유로 하나의 실시간 엔진 프로세스에서 작은 규모 예 동 단위나 지역. GIS ( ,

단위 로 데이타를 관리하는 방법을 사용할 수 있다) .

실제로 위치 정보 서비스와 같은 사용자의 위치에 관한 정보를 관리하는 시스템인 경우에는

특정 시점에서 한 사용자의 위치가 여러 곳에 존재할 수 없다는 특징이 있기 때문에 이와

같이 작은 규모단위로 관리할 경우에는 시스템의 효율을 극대화할 수 있다 특히 주기억장. ,

치의 용량이 큰 시스템인 경우에는 여러 개의 프로세스가 동시에 활성화될 수 있다.

- 92 -

데이타 추출기4.

에서는 신뢰성이 떨어지는 무선 인터넷을 사용하고 위치 기반 서비스와 같은Mobile GIS ,

사용자가 요구하는 지역의 데이타 전송에 대한 중요도가 크기 때문에 필요한 데이타를 먼저

추출하는 데이타 추출기가 매우 중요하다 데이타 추출기는 공간 연산 관리자나 공간알고리.

즘 관리자에 의해 처리된 공간 비공간 및 위치 데이타를 클라이언트에게 전송하기 위한 형,

태로 저장하기 위하여 실시간 엔진에서 데이타를 추출하는 기능을 수행한다GIS .

공간 연산 관리자5.

대부분의 기존 는 주로 정적인 공간 비공간 데이타에 대한 검색을 위해 주로 사용되었GIS ,

다 그러나 본 연구에서 주로 사용되는 데이타는 장치에서 연산이 수행되기 때문에. , Mobile

효율적인 공간 연산이 반드시 필요하다 이를 위해서 본 연구에서는 그림 는 본 연구에서. 22

지원하는 contain, contained, cover, covered, crossover, disjoint, equal, overlap, touch

등의 공간 연산자를 보여 준다 공간연산 관리자는 이와 같은 공간 연산들을 에. Mobile GIS

서 최적화하여 수행하는 기능을 제공한다.

- 93 -

그림 공간 연산자22.

질의 관리자6.

질의 관리자는 데이타에 대한 삽입 삭제 검색 갱신 연산을 수행하며 공간 데이타에 대한, , , ,

질의 처리 부분과 비공간 데이타에 대한 질의 처리 부분으로 나뉘어 진다.

가 공간 데이타 질의 처리.

공간 데이타의 삽입시에는 해당 데이타의 위치 정보를 입력받아 공간 데이타에 대한 엔트리

를 인덱스 트리에 삽입한다 공간 데이타에 대한 삭제의 경우 삭제 데이타의 위치 정보를.

이용해 공간 데이타 인덱스에서 정확히 일치되는 데이타를 검색한 다음 인덱스 노드로부터,

해당 엔트리를 삭제한다.

- 94 -

공간 데이타에 대한 갱신의 경우는 앞에서 설명한 삭제와 삽입과정을 거친다 공간 데이타.

에 대한 검색의 경우에는 입력받은 위치 정보를 이용해 공간 데이타 인덱스 구조를 검색해

일치되는 인덱스 엔트리들을 검색해 반환한다 인덱스 엔트리는 포인터 의 형태를. <MBR, >

지니고 있기 때문에 이를 이용해 검색된 위치 데이타를 포함하는 지리정보를 메모리 포인터

를 이용해 추출해 낸다.

나 비공간 데이타 질의 처리.

비공간 데이타를 삽입하기 위해서는 관계형 테이블을 생성한 다음 해당 자료를 삽입하고, ,

이에 대한 인덱스 구조를 유지한다 비공간 데이타에 대한 삭제 연산을 위해서는 우선 인덱.

스를 이용해 해당 데이타의 테이블 내 저장 위치를 검색한 다음 인덱스 엔트리를 삭제하,

고 해당 데이타를 테이블에서 삭제한다 비공간 데이타에 대한 갱신의 경우에는 앞에서 설, .

명한 삭제와 삽입의 과정을 거쳐 최적의 인덱스 구조를 유지한다 비공간 데이타에 대한 검.

색의 경우 우선 인덱스를 이용해 테이블 내 데이타 저장 포인터를 검색한 후 해당 포인터를

이용해 선택된 데이타를 반환한다.

- 95 -

제 절 실시간 엔진5 GIS

현재 많은 분야에서 연구되고 있는 효율적인 위치 기반 서비스 지원을 위한 를Mobile GIS

구축하기 위해서는 동적인 상황 예 차량의 움직임이나 개개인의 위치 파악 들을 빠르게 처( , )

리하고 그 결과를 보여줄 수 있어야 한다 그러나 이전의 정적인 데이타를 처리하는 나. , GIS

데이타베이스 관리 시스템 에서 사용되는 기술은 동적의 데이타의 처리 기능이 미비(DBMS)

하므로 에 적합하지 않다Mobile GIS .

그러므로 본 연구에서는 효율적인 위치 기반 서비스를 제공하기 위하여 주기억장치에서 사,

용자의 위치 정보 및 공간 데이타에 대한 정보를 보관하여 사용자의 요청에 대한 질의 처리

를 신속하게 처리할 수 있는 실시간 엔진에 대하여 연구하였다GIS .

실시간 엔진은 주기억장치 와 기존의 로 구분된다 주기억장치 는GIS GIS GIS . GIS Mobile

에서 사용되는 데이타를 효율적으로 처리하기 위하여 주기억장치 데이타베이스 시스템GIS

에 공간 데이타 처리 공간 연산 등을 추가하여 확장한 시스템이다 일반적으로 주기억장치, .

데이타베이스 시스템은 하드웨어적인 영향을 많이 받기 때문에 지도 데이타와 같은 정적인

데이타를 보관하고 있기에는 적합하지 않다 그러므로 이와 같은 정적 데이타의 처리를 위. ,

해서는 기존의 를사용하고 동적인 데이타에 대한 처리는 주기억장치 에서 처리함으GIS , GIS

로써 시스템에 대한 전반적인 효율성을 높이는 것이 필요하다.

- 96 -

특히 위치 기반 서비스를 효율적으로 지원하기 위해 대용량의 위치 데이타를 관리하기 위,

해서는 기존의 를 분산 환경에 적용하는 것이 바람직하다 일반적으로 에서 사용되GIS . GIS

는 공간 데이타의 규모는 방대하고 국소적인 위치의 데이타뿐만이 아니라 지역적인 규모의

데이타를 처리해야 하기 때문에 주기억장치 와 백엔드로 사용되는 기존의 간의 효율GIS GIS

적인 상호 연계가 필요하다 그림 은 실시간 엔진의 구조를 보여주고 있다 실시간. 23 GIS .

엔진은 인터페이스 관리자 질의 관리자 인덱스 관리자 메타 데이타 관리자 객체관리GIS , , , ,

자 데이타 로더 위치 데이타 관리자 레이어 관리자로 구성되어있다, , , .

그림 실시간 엔진의 구성도23. GIS

인터페이스 관리자1.

인터페이스 관리자는 서로 다른 시스템에서 서로 다른 사용자들이 실시간 엔진에 접근GIS

할 수 있도록 를 제공한다API .

- 97 -

인터페이스 관리자는 미들웨어로부터의 요청을 질의 관리자에게 전달하고 또한 질의 관리,

자가 반환한 질의 결과를 미들웨어로 반환한다.

인터페이스 관리자를 통하여 들어오는 질의는 가지로 구분된다 하나는 사용자의 위치 추2 .

적 이전 특정 시간의 위치를 파악 현재 사용자의 위치 데이타 갱신과 같은 위치 정보에, ,

관련된 질의이고 또 다른 하나는 공간 및 비공간 데이타를 이용한 기존의 에서 사용되, GIS

는 영역질의나 위치 검색을 위한 질의이다.

위치 데이타의 지속적인 저장이나 검색은 위치 데이타 관리자를 통해 위치 데이타 저장 시

스템에서 이루어진다 위치 데이타 저장 시스템에서 처리된 질의 결과는 인터페이스 관리자.

를 통해 반환된다 그리고 공간 데이타의 검색일 경우 현재 실시간 엔진에서 처리할. , GIS

수 있는 질의인 경우에는 질의 관리자에서 처리되지만 실시간 엔진에서 처리되지 못하GIS

는 질의는 데이타 로더를 통하여 실시간 엔진에 공간 데이타를 적재한 후 처리하거나GIS

주기억장치의 용량으로 인하여 처리가 어려울 경우에는 백엔드 에서 처리하여 인터페이GIS

스 관리자에서 그 결과를 반환한다.

질의 관리자2.

질의 관리자는 인터페이스 관리자를 통해 요청된 질의를 처리한다 질의 관리자에서 처리되.

는 질의는 클래스와 객체에 대한 삽입 삭제 갱신 및 검색 등이 있다 질의 관리자는 크게, , .

비공간 데이타에 대한 연산인 등을 위한 처리 부분과 공간 속성에 대<, >, <=, >=, =, <>

한 공간 연산인 등을Furthest, Closest, Contain, Included, Intersect, Adjacent, Range

위한 처리 부분으로 구성된다.

- 98 -

장치에서 요청되는 질의는 지역 기관 명칭 등을 기반으로 하는 비공간 데이타를Mobile , ,

기준으로 하여 질의되는 경우 이동하고자하는 위치에 대한 지도 정보와 같은 공간 데이타,

를 중심으로 질의되는 경우 그리고 특정 시간에 특정 위치에 존재하는 사용자에 대한 데이,

타와 같은 위치 데이타를 중심으로 질의되는 경우로 나뉘어진다 이러한 질의는 실시간. GIS

엔진의 확장된 를 통하여 직접 주기억장치에서 검색된다API .

인덱스 관리자3.

에서 공간 및 위치 데이타를 검색하기 위해서는 일반적으로 영역 질의가 많이Mobile GIS

사용된다 이러한 질의를 처리하기 위해서는 논리적으로나 물리적으로 엄청난 양의 데이타.

를 검색하는 과정이 필요하게 되는데 이렇게 대용량의 데이타를 효율적으로 처리하지 않으,

면 시스템의 성능을 상당히 저하시키게 된다 본 연구에서의 인덱스 관리자는 효율적으로.

공간 비공간 및 위치 데이타를 검색하기 위해서 사용된다 이러한 인덱스의 생성 여부는, .

사용자가 클래스를 생성할 시에 선택하게 된다.

본 연구에서는 비공간 데이타의 빠른 검색을 위해서 를 사용한다 또한 질의 관리B+-tree . ,

자가 이전에 질의한 객체들의 객체 식별자들을 유지 관리함으로써 동일한 질의가 요구되었

을 경우에 또 다시 질의를 수행하는 부담을 줄인다 실시간 엔진에서는 공간 데이타에. GIS

대한 접근이 빈번하므로 인덱스 관리자는 공간 데이타의 효율적인검색을 위해 와R-tree

를 사용한다R*-tree .

- 99 -

메타 데이타 관리자4.

하나의 객체는 그 객체를 표현할 수 있는 속성을 가지고 또한 객체는 그 속성에 대하여 전,

체 범주로 포함되는 클래스를 가진다 실시간 엔진에서 질의에 필요한 객체를 처리하기. GIS

위해서는 객체에 대한 클래스 속성 익스턴트 로그 등과 같은 전체 정보 즉 메타 데이타, , , ( , )

를 관리할 수 있는 메타 데이타 관리자가 필요하다 메타 데이타 관리자는 클래스에 대하여.

속성 정보 익스턴트 객체에 대한 정보를 관리한다 또한 클래스에서 사용되는 속성을 관, , . ,

리하기 위해서 문자형 정수형 이미지 및 다양한 공간 데이타를 처리한다 속성은 그 속성, , .

을 구별할 수 있는 고유한 키 값과 속성에 대한 이름 속성의 값 속성의 길이 속성의 타입, , ,

으로 구성된다.

하나의 클래스는 사용자에 의하여 정의되고 클래스에 대한 정보는 데이타베이스에 저장되,

어 검색된다 이를 위하여 메타 데이타 관리자는 실시간 데이타베이스 시스템의 저장. HP

및 검색 기능을 이용하여 메타 데이타를 삽입 갱신 삭제 그리고 검색하는 기능을 수행하, , ,

고 클래스 이름 클래스 타입 속성 포인터 익스턴트 포인터를 유지 관리한다 클래스 타입, , , , .

은 각각의 해당 클래스가 어떤 종류의 지리 데이타 타입인지를 나타내며 하나의 클래스에,

대한 모든 객체들을 의미하는 익스턴트는 객체 식별자와 객체 이름에 대한 정보를 가지고

있다.

- 100 -

객체 관리자5.

실세계의 모든 데이타는 객체 모델을 사용하여 표현될 수 있다 이러한 객체는 주로 일정한.

길이를 가지며 빠른 검색을 할 수 있는 고정 길이 데이타와 공간 데이타와 같이 그 길이가

일정하지 않고 대용량이며 검색이 어려운 가변 길이 데이타로 구분될 수 있다 객체관리자.

는 이러한 고정 길이 데이타와 가변 길이 데이타를 효율적으로 처리하기 위해서 실시간HP

데이타베이스 시스템의 구조를 일부 변형하여 사용한다.

객체 관리자는 실제적으로 데이타베이스 내에서의 객체의 삽입 갱신 삭제 검색을 수행한, , ,

다 하나의 객체를 저장하기 위해서는 새로운 객체를 생성하고 메타 데이타 관리자의 클래. ,

스에 대한 속성을 가지고 생성된 객체의 헤더 정보를 기록한다 이 헤더 정보는 객체의 가.

변 길이 데이타를 유지 관리하기 위해서 사용된다 즉 가변 길이 데이타가 갱신될 때마. ,ㆍ

다 객체 헤더 정보는 수시로 변경된다.

데이타 로더6.

실시간 엔진은 기존의 실시간 데이타베이스 시스템에 공간 데이타의 타입 공간 연GIS HP ,

산자 가변 길이 공간 데이타의 저장과 같은 에 필요한 기능을 추가한 시스템이다 그러, GIS .

나 실시간 엔진은 빠른 데이타의 처리 및 검색을 가능하게 한다는 장점이 있지만 대용, GIS

량의 공간 데이타를 용량이 작은 주기억장치에 저장한다는 측면에서 하드디스크와 같은 저

장 매체를 사용하는 기존의 에 비하여 단점을 가지고 있다 이를 해결하기 위해서는 주GIS .

기억장치에 공간 비공간 및 위치 데이타를 필요할 때마다 적재하여 주는 데이타 로더가 필,

요하다.

- 101 -

본 연구에서의 데이타 로더는 기존에 많이 사용되고 있는 Legacy GIS, Shareware GIS,

등에 대한 인터페이스를 제공하고 있으며 와 같은 에 대한 표준Internet GIS OpenGIS GIS

인터페이스도 수용하고 있다.

위치 데이타 관리자7.

위치 데이타 관리자는 실시간 엔진내에서 대용량의 위치 데이타를 효과적으로 저장 및GIS

검색하기 위해서 사용된다 실제로 사용자로부터 전송되는 위치 데이타는 데이타의 입력 시.

차가 작으면 비록 하루 분량이라고 하더라도 기가 바이트 급의 대용량 데이타가 생겨나게

된다 이러한 대용량의 데이타를 주 월 년 단위로 하나의 시스템에 저장하기에는 비효율적. , ,

이므로 본 연구에서는 대용량의 위치 데이타를 효율적으로 관리 및 검색할 수 있는 위치 데

이타 저장 시스템을 설계 및 구현하였다 위치 데이타 관리자는 주기적으로 생성된 위치 데.

이타를 위치 데이타 저장 시스템을 통해 저장 및 검색하는 기능을 제공한다.

레이어 관리자8.

본 연구에서 제시하고 있는 코딩에 근거한 데이타 압축 기법이나 점진적 전송Arithmetic

기법과 같은 환경에서 적합한 공간 알고리즘을 효율적으로 처리하기 위해서는Mobile GIS

공간 및 비공간 데이타에 대한 중요도를 고려할 필요가 있다.

- 102 -

실제 에서는 사용자 위치나 목적지와 같은 특정 데이타에 대한 관심이 매우 높Mobile GIS

은 특성을 가지고 있기 때문에 공간 및 위치 데이타도 이를 중심으로 하여 구성되고 전송되

어야 한다.

이렇게 중요도를 부여하기 위해서는 각 공간 데이타의 레이어를 이용하게 된다 즉 보행자. ,

가 목적지를 검색할 경우 현재 사용자의 위치를 파악하고 우선 목적지에 가장 근접한 큰 건

물이나 병원을 중심으로 데이타를 전송한 후 목적지에 인접하게 되면 세부적인 데이타를 전

송하게 된다 이러한 경우에 레이어 관리자는 필요한 큰 건물이나 병원에 대한 레이어 정보.

를 유지하고 데이타를 구성한 후에 세부적인 데이타에 대한 레이어를 관리하게 된다.

제 절 분산 위치 데이타 저장 시스템6

일반적으로 에서 사용되는 이동 객체의 위치 정보는 사용자의 수가 많을수록Mobile GIS ,

위치 정보를 획득하기 위한 시간이 짧을수록 그리고 데이타를 획득하기 위한 영역이 넓을,

수록 저장해야 하는 데이타의 양은 커지게 된다 그러므로 이러한 대용량의 데이타를 단일. ,

시스템 단일 데이타베이스에 저장하는 것은 시스템의 성능이 매우 뛰어나더라도 처리에 상,

당한 시간을 소모하게 되어 비효율적이다 이와 같은 단점을 극복하기 위해서는 처리하기.

위한 데이타의 양을 줄이거나 여러 시스템에 분산시켜 작은 단위로 처리하는 것이 가장 효

율적이다 그러나 무조건적으로 여러 시스템에 분산해서는 바람직한 결과를 얻기가 어렵다. , .

- 103 -

본 연구에서는 이러한 문제점들을 효율적으로 해결하기 위하여 그림 와 같은 분산 위치24

데이타 저장 시스템을 사용한다.

그림 분산 위치 데이타 저장 시스템의 구성도24.

분산 위치 데이타 저장 시스템은 위치 질의 및 위치 검색을 하기 위해서 사용된다 이러한.

질의를 처리하기 위해서는 우선 분산 위치 데이타 저장 시스템의 연결 관리자에 먼저 접속

한다 연결 관리자는 현재 설정되어 있는 분산위치 버퍼 관리자에 대한 정보를 찾아서 요청.

하는 질의를 전달하게 된다 분산위치 버퍼 관리자에 전달된 질의는 요청 큐에 질의된 순서.

대로 쌓이게 되고 이렇게 쌓인 질의는 시스템에서 설정된 수의 공유 서버 관리자에 의해,

하나씩 처리된다 공유 서버 관리자의 위치 검색 처리기와 위치 조작 처리기는 분산 위치.

데이타 저장 시스템에 등록되어 있는 시공간 에 대용량의 위치 정보를 삽입 삭제 갱신DB , ,

및 검색을 하는 기능을 수행한다.

- 104 -

공유 서버 관리자는 다양한 형태의 시공간 에 대한 인터페이스를 제공하며 또한 저장된DB ,

위치 정보를 빠르게 검색하기 위하여 위치 인덱스 처리기를 사용한다 서버 분배 관리자는.

지역 및 원격 네트워크의 상태를 지속적으로 확인하고 각 시공간 의 작업 처리에 대한, DB

로드 밸런싱 기능을 수행함으로써 시공간 에 대한 작업처리를 효과적으로 할 수 있도록DB

한다 또한 저장 공간 관리자는 각 시공간 에 대한 디스크 공간의 활용도 및 여유분을. , DB

감시함으로써 위치 정보의 저장이 한쪽에만 치우쳐서 분배되지 않도록 하여 대용량의 위치

정보를 여러 시공간 에 효과적으로 분배하는 기능을 수행한다DB .

공유 서버 관리자에서 처리된 작업 결과는 분산위치 버퍼 관리자의 응답 큐에 지속적으로

쌓이게 된다 시스템에서 설정한 수의 디스패쳐는 이와 같이 쌓인 작업 결과를 연결 관리자.

로 반환하게 되고 반환된 결과는 다시 질의를 요청한 클라이언트에게 전달된다, .

본 연구에서 개발한 분산 위치 데이타 저장 시스템은 크게 분산네트워크를 관리하기 위한

연결 관리 부분 요청된 질의 및 처리된 결과를 저장하기 위한 버퍼 관리 부분 그리고 질, ,

의 처리를 위한 공유 서버 부분 그리고 시공간 의 등록 서버 분배 및 저장 공간 관리, DB ,

부분으로 나뉘어 진다 각 부분은 서로 배타적으로 동작하며 한 작업이 끝나기를 기다리지.

않고 각 부분에서 요청이 있을 때 바로 작업을 수행함으로써 질의 처리에 걸리는 시간을 줄

일 수 있다 그리고 다양한 시공간 에 대한 인터페이스를 제공함으로써 효과적인 데이. , DB

타 베이스 관리가 가능하게 된다.

- 105 -

제 장 시스템 구현5

본 장에서는 먼저 실시간 데이타베이스 시스템을 이용한 의 구현 환경을 살펴본Mobile GIS

후 본 시스템의 동작 과정을 언급한다 그리고 본 시스템을 크게 클라이언트 미들웨어 실. , , ,

시간 엔진으로 구분하여 각각의 경우에 대해서 설계된 사항에 근거한 관리자들의 구현GIS

에 대해서 설명한다.

제 절 구현 환경1

본 연구에서 실시간 데이타베이스 시스템을 이용한 를 개발하기 위해 사용한 구Mobile GIS

현 환경은 다음과 같다 운영체제는. Windows CE, Embedded Linux, `Windows 2000,

를 사용하였으며 개발툴로는 환경에서는Windows 98, Linux , Windows Borland C++

환경에서는 사의 을 사용Builder 6.0, Windows CE Microsoft Embedded Visual C++ 3.0

하였다 또한 실시간 엔진으로는 기존의 실시간 데이타베이스 시스템을 확장하여. , GIS HP

사용하였으며 실시간 엔진의 개발시에 컴파일러로는 버전을 사용하였, GIS GNU gcc 2.7.2

다.

- 106 -

제 절 시스템의 동작 과정2

실시간 데이타베이스 시스템을 이용한 는 크게 가지기능으로 이루어지며 각Mobile GIS 4 ,

기능에 따른 동작 순서를 가지고 있다 첫번째 사용자는 수신기와 사용자 인터페이스. , GPS

를 통해서 자신의 위치를 파악할 수 있다 클라이언트 사용자의 위치가 이동하는 경우. GPS

수신기로부터 받은 정보는 무선 인터넷을 통해 미들웨어로 전송되며 미들웨어에서는 이동,

된 영역만큼 새로 그려야 할 공간 데이타를 실시간 엔진에 요청한다 실시간 엔진GIS . GIS

은 미들웨어가 요청한 공간 데이타를 데이타 전송 관리자에 전송하고 또한 프로토, TCP/IP

콜을 통해 클라이언트의 인터페이스 관리자에 정보를 전송한후 디스플레이 관리자의 화면을

갱신하여 사용자의 위치가 일정 경계 영역을 지나면 중앙에 위치할 수 있도록 한다.

두번째 인터페이스 관리자를 통해서 공간 비공간 위치 데이타에 대한 질의를 할 수 있다, , , .

공간 비공간 위치 데이타에 대한 질의가 클라이언트의 인터페이스 관리자에서 이루어지는, ,

경우 무선 인터넷을 통하여 미들웨어의 질의 관리자에 전달된다 미들웨어의 질의 관리자에.

서는 클라이언트의 요청을 실시간 엔진에서 처리할 수 있는 질의로 생성하여 실시간GIS

엔진의 질의 관리자에 전달한다 실시간 엔진의 질의 관리자에서는 전송된 질의를GIS . GIS

분석하고 그 결과에 따라 메타 데이타 관리자와 객체 관리자를 통해 공간 비공간 데이타, ,

를 검색하거나 위치 데이타 관리자를 통해 위치 데이타를 검색할 함수를 호출한다 실시간.

엔진은 처리된 결과를 미들웨어로 반환하고 미들웨어는 이를 다시 클라이언트로 전송GIS ,

하여 사용자 인터페이스에서 결과를 볼 수 있게 한다.

- 107 -

세번째 인터페이스 관리자를 통해서 지도 데이타의 줌 인 줌 아웃을 할 수 있다 클라이언, , .

트에서 줌 인 줌 아웃 요청이 발생하면 클라이언트는 사용자 인터페이스 영역의 최대 최, ,

소 좌표를 미들웨어로 전송한다 미들웨어는 줌 인 줌 아웃 모듈에서 사용자 인터페(X,Y) . /

이스의 최대 최소 좌표를 받아서 줌 인 줌 아웃에 필요한 공간 데이타를 실시간, (X,Y) ,

엔진에 요구한다 실시간 엔진에서는 미들웨어에서 요구한 공간 데이타를 미들웨GIS . GIS

어의 데이타 풀 을 통해 클라이언트의 대기 큐로 전송하여 인터페이스 관리자에서 줌(pool)

인 줌 아웃된 화면을 볼 수 있게 한다, .

네번째 실시간 엔진을 통해서 공간 데이타의 삽입 삭제 갱신과 지도 데이타 보기를, GIS , ,

할 수 있다 실시간 엔진의 인터페이스관리자는 클라이언트에서 볼 수 있는 화면과는. GIS

달리 지도 데이타의 전체 화면을 볼 수 있다 그러므로 클라이언트 좌표에 따라서 화. , GPS

면이 이동하지는 않는다 실시간 엔진의 질의 관리자를 통해 공간 데이타의 삽입 삭. GIS ,

제 갱신이 이루어지면 메타 데이타 관리자 객체 관리자 위치 데이타 관리자 데이타 로더, , , ,

등을 통해 실시간 엔진에 반영된다GIS .

- 108 -

제 절 클라이언트3

본 절에서는 실시간 데이타베이스 시스템을 이용한 에서 클라이언트의Mobile GIS Mobile

구현 내용에 대하여 설명한다.

공간 데이타의 화일 형태1.

장치는 의 처리 능력이 낮고 저장 공간이 적은 단점을 가지고 있기 때문에 이Mobile CPU

전의 데스크탑 컴퓨터에서 사용되는 방식을 그대로 적용하기에는 어려운 점이 많다 우선.

클라이언트의 요청에 의하여 처리된 공간 데이타는 장치에 화일의 형태로 저장되어Mobile

야 한다 화일의 형태는 텍스트의 형태와 이진 화일의 형태가 있는데 장치에서 텍스. Mobile

트의 형태를 사용하는 것은 데이타의 커지는 단점이 있고 텍스트 화일을 읽는 루틴이 이진,

화일을 읽는 루틴에 비하여 상당히 느린 단점을 가지고 있다 실제로 여 개의 폴리. 25,000

곤을 저장하기 위하여 텍스트 화일은 이상의 크기를 차지하지만 이진 화일은800-900kb

의 크기를 차지한다 또한 여개의 폴리곤을 읽어오는 시간도 과 같300-400kb . , 25,000 iPAQ

은 클라이언트에서 이진 화일은 초가 소요되지만 텍스트 화일은 초가 소Mobile 2-3 20-25

요된다.

클라이언트에서 이진 화일을 생성하기 위해서는 에 저장되어있는 공간 데이타를 추출하GIS

여 직접 이진 화일로 변환하는 변환툴이 필요하다 본 연구에서는 이진 화일을 생성하기 위.

하여 기존의 시스템인 를 사용하여 변환툴을 개발하였다GIS ZEUS .

- 109 -

그림 는 이진 화일을 생성하기 위한 클래스이다 생성자인 는 이진 화일로 생성하25 . binDB

고자 하는 화일 이름과 레이어의 타입을 인자로 입력받는다 는 이진 화일에 데이. AddData

타를 저장하는 함수로 공간 데이타 타입의 점의 개수 레이어 번호 그리고 값을, , db_point

인자로 입력받는다 은 생성된 이진 화일의 데이타를 모두 읽어 제대로 저장되었는. ReadAll

지 검증하는 함수이며 는 전체 공간 객체의 개수를 저장하는 함수이다, WriteCount .

그림 클래스 정의25. binDB

- 110 -

드라이버 구현2. GPS

클라이언트가 에 연결되었을 경우 에서 수신되는 데이타를 얻기 위해서는Mobile GPS GPS

라이브러리를 사용하게 된다 일반적으로 에서 현재 위치를 얻기 위해서는NMEA0183 . GPS

항목을 이용하고 위성의 상태 정보를 얻기 위해서는GPGGA, GPRMC, GLL , GPGSA,

항목을 이용한다 본 연구에서는 라이브러리를 이용하여 드라이GPGSV . NMEA0183 GPS

버를 구현하였다.

클라이언트에서는 현재 위치를 알기 위해서 가 기본적으로 사용되나 최근Mobile GPGGA ,

의 는 를 많이 사용한다 그러므로 만약 가 없을 경우에는 를GPS GPRMC . , GPRMC GPGGA

사용한다 는 일반적으로 시간이나 위치 정보를 알기 위한 항목이다 그림 은. GPGGA . 26

에 대한 내용을 보여준다GPGGA .

Field Example Comments

1 Sentence ID $GPGGA Global positioning system fixed data

2 UTC Time 92204,999 hhmmss,sss

3 Latitude 4250.5589 ddmm,mmmm

4 N/S Indicator S N = North, S = South

5 Longitude 14718,508 dddmm,mmmm

6 E/W Indicator E E = East, W = West

7 Position Fix 10 = Invalid, 1 = Valid SPS, 2 = ValidDGPS, 3 = Valid PPS

8 Satellites Used 4 Satellites being used (0-12)

9 HDOP 24.4 Horizontal dilution of precision

10 Altitude 19.7Altitude in meters according to WGS-84ellipsoid

11 Altitude Units M M = Meters

12G e o l dSeperation

Geoid seperation in meters according toWGS-84 ellipsoid

13 Seperation Units M = Meters

14 DGPS Age Age of DGPS data in seconds

15 DGPS Station ID 0

16 Checksum *1F

17 Terminator CR/LF

그림 의 내용26. GPGGA

- 111 -

번 항목은 시각이다 아주 정확한 시각이나 세계 표준시이므로 우리나라에서는 시간을2 . , 9

더해 주어야 한다 번과 번은 각각 경도와 위도를 나타낸다 일반적으로 경위도에는 도분. 3 5 .

초를 사용하는데 여기서는 도와 분만을 사용한다 위도의 경우는 앞에 두자가 도이고 경도, . ,

의 경우는 앞에서 세자가 도에 해당한다 그 뒤의 숫자는 분을 나타내며 초는 분으로 환산. ,

되어 있다 그래서 가령 도분초로 환산하려면 소수점 밑에 숫자에 을 곱해야 한다 번. , 60 . 4

과 번은 동경과 서경 북위와 남위를 나타내므로 우리나라에서는 밖에 볼 수 없다6 , N, E . 7

번은 이 결정됐느냐를 가리킨다 만약 이라면 계산된 위치를 믿을 수 없으므로 사position . 0

용하면 안 된다 처음 켰을 때나 위성신호가 잘 수신이 안되는 지역에서 흔히 볼 수 있다. .

그러나 번이나 그 외의 숫자일 경우는 사용 가능하다 번은 현재 수신되는 위성의 개수, 1 . 8

이다.

그림 은 에 대한 내용을 보여 준다 는 의27 GPGSA . GSA GNSS DOP and Active Satellite

약자이다 와 다음에 나올 는 네비게이션보다는 의 수신 상태를 점검하. GPGSA GPGSV GPS

는데 주로 이용된다 현 위치에서 잡히는 각각의 위성 상태를 알 수 있기 때문에 두 문장을.

이용하여 위성의 배열상태를 표현할 수 있다.

- 112 -

Field Example Comments

1 Sentence ID $GPGSA GNSS DOP and active satellites

2 Mode 1 A A = Auto 2D/3D, M = Forced 2D/3D

3 Mode 1 3 1 = No fix, 2 = 2D, 3 = 3D

4 Satellite used 1 1 Satellite used on channel 1

5 Satellite used 2 20 Satellite used on channel 2

6 Satellite used 3 19 Satellite used on channel 3

7 Satellite used 4 13 Satellite used on channel 4

8 Satellite used 5 Satellite used on channel 5

9 Satellite used 6 Satellite used on channel 6

10 Satellite used 7 Satellite used on channel 7

11 Satellite used 8 Satellite used on channel 8

12 Satellite used 9 Satellite used on channel 9

13 Satellite used 10 Satellite used on channel 10

14 Satellite used 11 Satellite used on channel 11

15 Satellite used 12 Satellite used on channel 12

16 PDOP 40.4 Position dilution of precision

17 HDOP 24.4 Horizontal dilution of precision

18 VDOP 32.2 Vertical dilution of precision

19 Checksum *OA

20 Terminator CR/LF

그림 의 내용27. GPGSA

그림 은 포트 날짜 시간 이동 속도 진행방향 인공위성의 상태 등을 표현하는28 Com , , , , ,

상태 뷰어의 모습이다GPS .

그림 상태 뷰어28. GPS

- 113 -

좌표 변환 구현3.

에서 입력받은 데이타는 좌표계를 따르고 있기 때문에 이것을 국내 좌표 변환GPS WGS84

체계인 으로 변환하여야 한다 이를 위해서는 우선 좌표계를 좌표계로 변TM . WGS84 TM

환하여야 하는데 이것을 수행하려면 순으로 변환하여야 한다 그, WGS84 BESSEL TM .→ →

림 는 좌표 변환을 위한 루틴을 보여준다29 .

그림 좌표계에서 좌표계로 변환 루틴29. WGS84 TM

- 114 -

우선 시리얼 통신 루틴으로 입력받은 문자열을 라이브러리로 입력한 후에 함NMEA Parse

수를 호출하면 문자열이 파싱되고 파싱된 항목이 인 경우에 속성을 이용, GPRMC Position

하여 위도와 경도 값을 얻는다 이 위도와 경도 값을 항목의 로 입력하. wgs2bessel dx, dy

면 좌표계 값이 에 저장된다 이 값을 에 첫 번째 항목으로BESSEL dLat, dLon . bessel2tm

입력하고 의 중부원점을 기준으로 변환하면 변환된 좌표 값이 나오게 된다TM TM .

지도 디스플레이 구현4.

미들웨어를 거쳐 클라이언트로 전송된 데이타는 좌표로 이루어져 있으므로 클라이언트TM

의 화면상에 디스플레이 하기에는 좌표 영역이 일반적으로 너무 넓다 그러므로 클라이언. ,

트의 좌표 변환 관리자를 사용하여 좌표를 클라이언트 화면상에 디스플레이 가능한 수TM

치로 변환한 다음 화면상에 디스플레이 한다 클라이언트의 좌표 변환 관리자는 단위. TM

좌표당 디스플레이될 수 있는 화면의 와 를 설정하고 와 를x_ratio y_ratio , x_ratio y_ratio

각각의 좌표를 곱한후 디스플레이 화면에 반영하는 역할을 수행한다TM .

그림 은 클라이언트의 인터페이스에 사용자가 장치의 지도를 마우스로 클30 Mobile Mobile

릭하였을 경우 그 지점을 화면의 중앙으로 오게 하는 모듈을 보여준다 즉 왼쪽 마우스가. ,

클릭되었을 경우 그 위치를 파악하여 그 지점을 장치의 디스플레이 화면 가운데로Mobile

위치하도록 하는 모듈이다.

- 115 -

그림 마우스 클릭 지점을 화면 가운데로 이동하는 모듈30.

이와 같이 사용자의 입력이 있을 경우 지도 데이타를 새롭게 디스플레이해야 한다 이러한.

경우에는 일반적으로 더블 버퍼링 이라는 방법을 사용한다 더블 버퍼링(Double Buffering) .

을 사용하게 되면 디스플레이 화면에 화면이 깜박이거나 중단하지 않고 신속하게 지도 데이

타를 다시 그릴 수 있게 된다 이러한 드로윙 기법은 에서는 중요한 기법 중의. Mobile GIS

하나이다.

기능은 좌표 매핑 알고리즘에서 값을 조정함으로써 가능하다 그림Zoom In/Out m_Level .

은 실제 사용되는 축적별 기능을 구현한 모듈을 보여준다 기능은31 Zoom In . Zoom Out

값이 클수록 큰 축적을 가지게 된다m_slevel .

- 116 -

그림 축적별 기능을 구현한 모듈31. Zoom In

축적별로 데이타를 디스플레이하게 되면 실제로 높은 축적에서는 글자가 많이 겹쳐 깨지게

되는데 이를 해결하려면 축척별로 중요도를 부여해 필요한 글자만 표시하도록 해야 한다.

본 연구에서는 이에 대한 정보를 실시간 엔진의 레이어 관리자에서 수행하게 된다GIS .

- 117 -

제 절 미들웨어4

미들웨어는 클라이언트로부터 질의를 받아 실시간 엔진에 공간 비공간 위치Mobile GIS , ,

데이타에 대한 요청을 하고 반환된 결과에 필요한 공간 연산 공간 알고리즘을 적용하고, , ,

또한 전송할 데이타를 생성하여 클라이언트로 전해 주는 기능을 수행한다Mobile .

지도 데이타 전송 구현1.

사용자의 이동에 의하여 클라이언트에 새로운 영역의 지도 데이타가 전송될 필요가Mobile

있을 경우가 있다 이와 같은 경우 클라이언트가 새로운 영역을 미들웨어에게 요청. Mobile

하게 되면 미들웨어의 데이타 추출기는 실시간 엔진으로부터 적절한 지도 데이타를 수GIS

신하여 구성하게 된다 미들웨어가 클라이언트로부터 전송받는 인자는. Mobile old_max_x,

로 총 개이며 이러한 인old_max_y, old_min_x, old_min_y, difference_x, difference_y 6 ,

자들은 현재 클라이언트의 사용자 인터페이스에서 디스플레이 되는 버퍼의 최상단Mobile

좌표와 최하단 좌표 그리고 클라이언트의 사용자위치 좌표가 이동한 축 축(x,y) (x,y) , x , y

거리이다.

미들웨어의 데이타 전송 관리자는 총 개의 함수로 구성되어 있는데 현재 위치에 대한 중8

심 좌표가 경계 영역을 벗어나는 방향을 북 북서 서 남서 남 남동 동 북동 방향인 경, , , , , , ,

우로 나누어서 공간 데이타에 대한 검색 질의를 생성한다 검색 질의는 실시간 엔진에. GIS

전송되고 반환된 공간 데이타는 미들웨어의 데이타 추출기에서 임시 저장된 후 데이타 전송

관리자에 의해 클라이언트로 전달된다.

- 118 -

그림 는 검색영역 질의 중 클라이언트 사용자의 위치 좌표가 북동쪽으로 향했을 경우 생32

성되는 질의의 예를 보여준다 이 질의는 검색하고자 하는 영역의 객체를 검색해 오는. line

질의이다 로 시작되는 변수는 클라이언트에 새로 그려질 영역의 좌표를 의미하. new Mobile

며 로 시작되는 변수는 클라이언트의 사용자 인터페이스에 디스플레이되는 현재, old Mobile

좌표를 의미한다.

그림 검색영역 질의 생성 예32.

공간 거리 연산 알고리즘2.

위치 기반 서비스를 지원하기 위해서는 현재 위치에서 목적지까지의 최단 경로 최적 경로, ,

실제 거리 탐색 등과 같은 질의가 많이 사용된다 이러한 질의를 처리하기 위해서는 공간.

객체들 간의 거리를 계산하는 기능이 필요하다 이를 위해서 본 연구에서는 알고리즘 점. PP (

과 점 알고리즘 선과 점 알고리즘 선과 선 알고리즘 다각형과 점 알), LP ( ), LL ( ), POP ( ), POL

고리즘 다각형과 선 알고리즘 다각형과 다각형 과 같은 공간 거리 연산 알고리즘을( ), POPO ( )

사용하였다.

- 119 -

가 알고리즘. PP

알고리즘은 점과 점 사이의 거리를 구하는 알고리즘으로서 피타고라1PP (Point to Point)

스의 정리를 사용하여 (p2.x-p1. x) 2+(p2.y-p1 .y) 2와 같이 계산한다.

나 알고리즘. LP

알고리즘은 선과 점 사이의 거리를 구하는 알고리즘으로서 이때 선은LP (Line to Point)

두 점으로 이루어지는 유한 선분이다 알고리즘은 알고리즘 함수 과 직선. LP PP (distance() )

무한 직선 과 점의 거리 계산 알고리즘을 사용하며 그림 과 같이 구현된다( ) , 33 .

과 는 점 로부터 선 의 양 끝점까지의 거리이고 는 점 로부터 선분 이 속한 직d1 d2 p 1 , d p 1

선에 수직하는 선분의 거리이다 만약 가 음수이면 점 는 선분 의 오른쪽에 위치한다. d p 1 .

알고리즘은 의 크기를 검사하고 가 선분을 벗어나는지를 검사하여 가장 작은 값LP d1, d2 d

을 반환한다 이때 점의 위치에 따라 오른쪽이면 음수를 왼쪽이면 양수를 반환한다 그러므. .

로 점의 위치가 필요하지 않은 응용에서는 반환값의 절대값을 사용하여야 한다, .

- 120 -

그림 알고리즘33. LP

다 알고리즘. POP

알고리즘은 다각형과 점 사이의 거리를 구하는 알고리즘으로서POP (Polygon to Point)

알고리즘을 사용하고 점이 다각형 내부에 속하는지의 여부도 판명할 수 있다 알LP . POP

고리즘은 그림 와 같이 구현된다34 .

- 121 -

그림 알고리즘34. POP

다각형 는 시계방향으로 닫힌 폐곡선이다 는 점 로부터 다각형을 구성하는 각 선분까po . d p

지의 거리로서 만약 모든 가 음수이면 는 의 내부에 위치하고 반환값은 음수가 된다d p po .

라 알고리즘. LL

알고리즘은 선과 선 사이의 거리를 구하는 알고리즘으로서 알고리즘LL (Line to Line) LP

을 사용하고 선이 교차하는지의 여부도 판명할 수 있다 알고리즘은 그림 와 같이 구. LL 35

현된다.

먼저 선의 양 끝점과 다른 선에 대해 각각 알고리즘을 사용하여 거리를 구한다 만약LP .

양 끝점의 값이 모두 음수 또는 모두 양수라면 두 선은 교차하지 않는다 는 선 과. state 11

선 의 위치를 저장한다 만약 가 이면 이 의 오른쪽에 위치하고 이면 왼쪽에12 . state 0 l1 l2 ,1

위치하며 이면 교차한다, 2 .

- 122 -

그림 알고리즘35. LL

마 알고리즘. POL

알고리즘은 다각형과 선 사이의 거리를 구하는 알고리즘으로서POL (Polygon to Line) LL

알고리즘을 사용하고 선이 다각형 내부에 위치하는지와 교차하는지의 여부도 판명할 수 있

다 알고리즘은 그림 과 같이 구현된다. POL 36 .

- 123 -

그림 알고리즘36. POL

먼저 선 과 다각형을 구성하는 선분들에 대해 알고리즘을 사용하여 거리를 구한다 만1 LL .

약 다각형을 구성하는 임의의 선분에 대해 이 왼쪽에 위치하면 은 다각형에 포함되지 않1 1

는다 만약 반환값이 이라면 교차한다. 0 .

바 알고리즘. POPO

알고리즘은 다각형과 다각형 사이의 거리를 구하는 알고리즘POPO (Polygon to Polygon)

으로서 다각형이 중첩되는지와 포함되는지의 여부도 판명할 수 있다 알고리즘은 그. POPO

림 과 같이 구현된다37 .

- 124 -

그림 알고리즘37. POPO

다각형 와 다각형 을 구성하는 선분들의 거리를 알고리즘을 통해 계산하여 절po2 po1 POL

대값이 가장 작은 값을 반환한다 만약 반환값이 음수이면 은 에 포함되고 이면. po1 po2 , 0

중첩된다.

- 125 -

제 절 실시간 엔진5 GIS

본 연구에서는 기존에 상업적으로 사용되었던 실시간 데이타베이스 시스템에 에서HP GIS

필요한 기능을 추가하여 실시간 엔진을 개발하였다 본 절에서는 실시간 엔진에서GIS . GIS

개선된 점과 각각의 관리자의 구현에 대하여 설명한다.

실시간 엔진의 실행 예1. GIS

본 연구에서 개발된 실시간 엔진은 실시간 데이타베이스 시스템을 에GIS HP Mobile GIS

적합한 형태로 확장한 것이다 실시간 엔진은 주기억장치 데이타베이스 시스템을 확장한. GIS

시스템이기 때문에 이를 사용하기 위해서는 우선 데이타베이스 테이블 인덱스를 생성한, ,

후 프로세스를 실행하여야 데이타베이스에 접근할 수 있다 실시간 엔진에서는 대화형. GIS

질의 방식으로 이러한 데이타베이스 테이블 인덱스를 생성하지만 스크립트의 형태로 한번, ,

에 처리하는 방법도 많이 사용된다.

그림 은 위치 기반 서비스를 위한 데이타베이스 테이블 인덱스를 생성하는 스크립트이38 , ,

다 생성될 데이타베이스 이름은 이고 데이타베이스 관리자를 위한 암호는. spatial_schema ,

읽기 쓰기 접근 암호는 읽기 전용 암호는 로 설정되어 있다Ibs, / Ibs1, Ibs2 . spatial_schema

데이타베이스에서 가질 수 있는 최대의 테이블 수는 개 최대 열의 개수는 최대 인덱15 , 40,

스의 개수는 최대 입력 영역의 개수는 접근할 수 있는 프로세스의 개수는 그리고7, 1, 50,

설정된 이벤트의 최대 개수는 개로 지정되어 있다8 .

- 126 -

그림 의 스크립트에서는 개의 테이블 개의 인덱스 그리고 개의 입력 영역을 지정하38 3 , 4 , 1

고 있다 테이블은 특정 시간에 값을 가지는 객체의 위치 값과 오류를 저장. location01t id

하기 위한 테이블이다 및 테이블은 각각 아파트와 이내 도로를. apartment road_in_6 6M

저장하기 위한 테이블이며 각각 초기 개의 레코드를 저장할 수 있도록 지정되어 있100,000

다 만약 개 이상의 레코드가 저장될 경우에는 알고리즘에 의해서 데이타베이스의. 100,000

크기가 자동으로 증가하게 된다.

실시간 엔진에서는 비공간 데이타를 위해서 인덱스와 해쉬 인덱스를 사용한GlS B-Tree

다 인덱스 생성 부분에서 는 해쉬 인덱스를 사용할 경우에 기본 비율에 대한. PRIMERATIO

값을 설정하는 부분이다 기본 비율의 값이 높을수록 키의 충돌이 적어지기 때문에 빠른 검.

색을 할 수 있다 는 한번에 하나의 데이타를 입력하는 것이 아니라 여러 개로. INPUTAREA

연결된 레코드 값을 입력하기 위하여 별도로 할당된 메모리 공간이다 즉 에. , INPUTAREA

우선 레코드를 모아놓은 다음에 배열을 사용하는 것처럼 순서대로 레코드를 삽입할 경우에

사용된다.

- 127 -

그림 데이타베이스 테이블 인덱스의 생성38. , ,

- 128 -

표준 공간 데이타 타입2.

에 대한 관심이 높아지면서 국내외의 여러 단체들이 위치 기반 서비스에 필요한Mobile GIS

다양한 항목들에 대하여 표준화를 수행하고 있다 그 중에서 는 위치 기반의 공간 정보. OGC

와 관련된 제반정보 처리 문제들을 해결하기 위해 를 제안하고 있다 는 주OpenLS . OpenLS

로 인터페이스 장치들에 의해 요청된 위치 기반서비스 사이의 상호 운용성을 지원Mobile

하는 인터페이스 프로토콜 스키마등의 명세를 개발하는 것을 목적으로 하고 있다 위치 기, , .

반 서비스를 제공하기 위하여 에서 사용되는 공간 데이타 유형은 기존의OpenLS OpenGIS

의 기반으로 하고 있다 그림 는Simple Feature Specification . 39 OpenGIS Simple Feature

에서의 모델을 보여준다Specification Geometry .

그림 의 모델39. OGC Geometry

- 129 -

본 연구에서 실시간 엔진 개발시에 현재 많은 분야에서 사용되고 있는 에서 제시GIS OGC

한 의 데이타 유형을 적극 수용하였다 그림 은Simple Feature Specification Geometry . 40

실시간 엔진에서 지원하는 공간 데이타 타입을 보여준다 는 점을 표현하기GIS . RD_POINT

위한 공간 데이타 타입이고 은 특정 좌표에 문자열을 표현하기 위한 공간 데이, RD_LABEL

타 타입이다 은 두 개의 점을 잇는 선이며 은 여러 개의 점으. RD_LINE , RD_LINESTRING

로 이루어진 선이다 은 면을 표현하기 위한 공간 데이타 타입이다. RD_POLYGON .

의 데이타 타입중 계열은 위의 데이타 타OpenGIS Simple Feature Specification MULTI-

입이 여러개 존재하는 데이타 타입이다 이러한 데이타 타입은 실시간 엔진에서. GIS

화일에 정의되어 있다MdUser.c.h .

공간 데이타 타입 이름 타입 설명

RD_POINTx double 좌표x

y double 좌표y

RD_LABELp RD_POINT 레이블의 위치

str char* 문자열

RD_LINE

p[0] RD_POINT 시작점

p[1] RD_POINT 끝점

m double 방향

RD_LINESTRINGpts RD_POINT*

(x[0], y[0], x[1], y[1], ... x[npts-1],y[npts-1])

npts RD_POINT* 갯수

RD_POLYGONpts RD_POINT*

(x[0], y[0], x[1], y[1], ... x[npts-1],y[npts-1])

npts long 갯수

그림 실시간 엔진에서의 공간 데이타 타입40. GIS

- 130 -

가변 길이 데이타 처리3.

이전의 실시간 데이타베이스에서는 공간 데이타 타입이 정의되어 있지 않으므로HP

명령어를 사용하여 공간 데이타 타입이 있는 테이블을 생성하기 위해서CREATE TABLE

는 테이블 생성시 열 정의하는 부분에서 공간 데이타 타입을 인식하는 부분이 필요하다 열.

에 대한 정의는 에 함수를 이용한다DefCo1.c MdDefCo1 .

일반적으로 와 같은 공간 데이타 타입인 경우에는 고정RD_POINT, RD_LABEL, RD_LINE

길이를 가지기 때문에 테이블이 생성될 때 그 열의 크기가 결정된다 그러나. ,

과 같은 공간 데이타 타입인 경우에는 포함된 점의 개수RD_LINESTRING, RD_POLYGON

에 따라서 열의 길이가 결정된다 즉 데이타의 입력이 발생한 후에야 열의 길이를 알 수. ,

있게 된다 실시간 엔진은 기존에 지원되지 않았던 이와 같은 가변 길이 데이타의 처리. GIS

를 위해 다음과 같은 방법을 이용하였다.

그림 에서 보는 바와 같이 실시간 엔진에서는 과41 GIS RD_POLYGON, RD_LINESTRING

같은 가변 길이 데이타가 입력될 경우 입력 영역 과 같은 특정한 메모리 영역에(Input Area)

서 데이타를 입력받은 후에 이에 대한 포인터 값을 데이타 타입에 저장한다 그리고 가변. ,

길이 데이타에 대한 접근이 일어나면 포인터 값을 이용하여 실제 데이타를 얻어내게 된다.

이와 같은 방법을 사용하게 되면 실제 가변 길이 데이타는 별도로 저장되기 때문에 비공간

데이타에 대한 접근만이 일어날 경우에는 실제 공간 데이타에 대한 접근이 필요하지 않으므

로 좀 더 빠른 데이타 검색을 수행할 수 있게 된다.

- 131 -

그림 가변 길이 데이타의 처리41.

자동 레코드 개수 확장4.

테이블이 생성되고 명령을 통하여 데이타베이스가 활성화되면 테이블OPEN DATABASE

에 공간 비공간 위치 데이타의 삽입 삭제 갱신이 일어나게 된다 기존의 실시간 데이, , , , . HP

타베이스 시스템에서는 테이블을 생성할 경우에 테이블에 저장될 수 있는 레코드의 개수를

미리 정해 놓은 다음 그 이상의 데이타가 저장될 경우에 오류를 발생시켰다 그러나 위치. ,

데이타와 같은 주기적으로 생성되는 데이타는 최대 레코드의 개수를 미리 알 수 없기 때문

에 레코드의 개수가 지정된 값을 초과할 경우에 자동으로 할당된 개수가 증가하도록 처리하

는 것이 필요하다 본 연구에서는 이를 지원하기 위해 다음과 같은 자동 레코드 개수 확장.

방법을 사용하였다.

가 테이블 재생성 방법.

테이블 재생성 방법은 데이타의 삽입 시 지정된 레코드의 개수를 넘어갈 경우에 확장된 크

기의 새로운 테이블을 생성하고 기존 테이블에 있는 모든 데이타를 새로운 테이블에 입력하

는 방법이다 이 방법을 사용할 경우 실제 실시간 엔진의 성능이 떨어지는 경우는 지정. GIS

된 레코드 개수를 넘는 한 개의 레코드가 추가되는 시점에만 발생하게 된다.

- 132 -

처음 테이블을 생성할 때 레코드 개수 지정을 크게 하면 많은 데이타가 복사되기 때문에 새

로운 테이블의 생성이 오래 걸린다는 단점이 있지만 발생하는 간격이 적기 때문에 큰 데이

타의 삽입에 효과적이다.

그리고 레코드 개수 지정이 작으면 새로운 데이타 추가에 시간이 짧게 걸리지만 발생이 빈,

번하다는 단점이 있다 그러므로 위치 데이타와 같이 데이타 입력이 많은 경우에는 레코드. ,

개수지정을 크게 하고 비공간 데이타와 같은 경우에는 그 간격을 작게 하는 것이 효과적이,

다.

나 체이닝 방법. (Chaining)

체이닝 방법은 데이타의 삽입 시 지정된 레코드의 개수만큼 새로운 메모리 공간을 할당하여

새로운 데이타를 추가한 후 링크로 두개의 테이블을 연결하는 방법이다 이 방법은 지정된.

레코드의 개수를 초과하는 시점에 데이타를 복사하지 않기 때문에 삽입에 걸리는 시간이 짧

다는 장점을 가지고 있다 그러나 많은 체인으로 연결된 경우 검색 시간이 오래 걸리고 인. , ,

덱스를 구성하기가 어려운 단점이 있다.

본 연구에서는 테이블 재생성 방법 및 체이닝 방법을 모두 지원하고 있으며 기본 설정은 테

이블 재생성 방법을 사용하고 있다 그리고 과 같은. , ANALYZE TABLE, RESIZE TABLE

명령을 이용하여 관리자가 직접 테이블의 상태를 파악하고 수동으로 테이블의 크기를 조절

하는 방법을 제공하고 있다.

- 133 -

실시간 엔진의 주요 함수5. GIS

실시간 엔진에서 제공하고 있는 함수는 실시간 데이타베이스 시스템의 를 확장GIS HP API

하여 구현되었다 본 연구에서는 를 기반으로 하여 구현되었으며 주요 함수는 그림. ANSI C

와 같다42 .

그림 실시간 엔진의 주요 함수42. GIS

함수는 외부 인터페이스에서 실시간 엔RdConnectDatabase, RdDisConnectDatabase GIS

진의 데이타베이스에 연결하기 위하여 사용된다 데이타베이스에 연결하기 위해서는 데이타.

베이스 이름 관리자암호가 필요하며 성공적으로 연결되었을 경우에는 세션 번호와 공유메,

모리 를 얻게 된다 세션 번호는 데이타베이스의 모든 객체에 접근하기 위해서 반드시 필ID .

요하다 함수는 실시간 엔진에서 새로운 테이블을 생성. RdCreateTable, RdDropTable GIS

하거나 기존 테이블을 제거하기 위해서 사용된다 새로운 테이블을 생성하기 위해서는 테이.

블 이름 열 정보 테이블 가 필요하다, , ID .

- 134 -

함수는 실시간 엔진에서 생성된 테이블RdCreateASpatialIndex, RdCreateSpatialIndex GIS

에 대하여 비공간 공간 인덱스를 생성하기 위해서 사용된다, .

함수는 비공간 데이타를 한 테이RdASpatialInsert, RdASpatialDelete, RdASpatialUpdate

블의 특정 레코드에 대하여 삽입 삭제 갱신을 하기 위해서 사용된다 그리고, , . ,

함수는 공간 데이타에 대한 삽입 삭RdSpatialInsert, RdSpatialDelete, RdSpatialUpdate ,

제 갱신을 하는 함수이다, .

함수는 테이블의 열 항목의 개수 정보를 알려주며 은RdGetFieldNum , RdGetRecordNum

검색된 데이타의 레코드 개수를 반환한다 는 현재 선택된 레코드의 비. RdGetASpatialValue

공간 데이타에 대한 값을 읽을 수 있고 는 공간 데이타에 대한 값을 얻, RdGetSpatialValue

을 수 있다 함수를 통하여 반환된 반복자를 통하여 선택된 공간 레코드. GetSpatialRecord

의 위치를 얻을 수 있다.

데이타 로더 구현6.

데이타 로더는 기존에 사용되고 있는 시스템의 데이타를 실시간 엔진에 적재하기GIS GIS

위해서 사용된다 기존의 실시간 데이타베이스에 존재하던 툴의 기능에. HP MdLoad ZEUS,

의 를 이용하여 공PostgreSQL, OpenGIS Simple Features Specification for CORBA API

간 비공간 위치 데이타를 적재하는 기능을 추가하였다 그림 은 를 이용하여 공간, , . 43 ZEUS

데이타를 적재하는 데이타 로더의 내용을 보여 준다.

- 135 -

그림 데이타 로더43. ZEUS

우선 데이타 적재를 위한 클래스 이름을 이용하여 클래스를 찾는다 클래스가 검색되면 실.

시간 엔진에 클래스 이름으로 새로운 테이블을 생성한다 그리고 클래스의 속성을 검GIS . ,

색해 나가면서 테이블에 새로운 열을 추가한다 이 과정이 성공적으로 완료되면 에서. ZEUS

클래스에 해당하는 모든 객체들을 검색한 후 하나씩 읽어들여 각각의 데이타 타입에 따라

해당하는 열에 데이타를 입력한다.

- 136 -

제 장 결론6

최근 와 같은 장치의 급속한 발전과 무선 인터넷의 사용이 증가함에 따PDA, HPC Mobile

라 를 기반으로 한 에 대한 관심이 점차적으로 확대되고 있다 이러한 추세GPS Mobile GIS .

에 따라 국내외적으로 위치 기반 서비스를 지원하기 위한 다양한 가 생겨나고Mobile GlS

있으며 이동 통신 업체를 중심으로 하여 위치 추적 경로 안내 지역 안내 등과 같은 실생, , ,

활에 접한 서비스를 제공하고 있다 이와 같은 에서 사용되는 위치 데이타는. Mobile GIS

기존의 에서 사용되었던 변화가 적은 대용량의 정적인 데이타보다는 특정 시간에 갱신GIS

이 빈번한 동적인 데이타가 주로 사용된다 그러므로 기존의 를 이용하여. , GIS Mobile GIS

에서 필요한 동적인 데이타를 처리하는 것은 상당히 비효율적이다 이를 위해서 본 연구에.

서는 동적인 데이타를 효과적으로 처리할 수 있는 실시간 데이타베이스 시스템을 이용한

에 대하여 연구하였다Mobile GIS .

최근의 의 주요 관심 분야는 위치 기반 서비스이다 위치 기반 서비스는 이동Mobile GIS .

통신망을 기반으로 하여 사람이나 사물의 위치를 정확하게 파악하고 이를 활용하는 응용 시

스템 및 서비스라고 할 수 있다 위치 기반 서비스에서 가장 중요한 문제는 현재 각각 다른.

망을 사용하는 사용자들에게 어떻게 하면 효과적으로 위치 기반 서비스를 제공하느냐는 것

이다 이를 위해서는 상호운영성에 관한 문제가 큰 이슈가 되고 있다 이러한 상호 운용성. .

을 제공하기 위해서는 관련 동종 기반 기술들 간의 표준화가 반드시 필요하며 서로 다른 기

반 기술 사이에서의 호환성에 관한 문제도 해결되어야 한다.

- 137 -

이를 위해서 다양한 연구 기관 및 단체에서 효과적인 위치 기반서비스를 제공하기 위하여

표준안을 제시하고 있다 본 연구에서는 향후 분야에서 핵심이 될 위치 기반. Mobile GIS

서비스의 개념과 구조에 대하여 설명하였다 그리고 등과 같. , ISO/TC 211, MAGIC, OGC

은 국제 표준화 기구들이 수행하고 있는 표준화 작업과 효과적인 서비스를 제공하기 위한

와 구현 명세 등에 대하여 조사하였다API .

효율적인 를 제공하기 위해서는 적은 기억장치와 낮은 처리 능력을 가진Mobile GIS CPU

클라이언트와 낮은 대역폭을 가진 무선인터넷에 대한 충분한 고려가 있어야 한다Mobile .

그리고 기존에 사용되고 있는 와 효과적으로, Legacy GIS, Shareware GIS, Internet GIS

연동할 수 있는 방안이 필요하며 대용량으로 발생하는 위치 데이타에 대하여 분산 저장할

수 있는 방법도 필요하다 본 연구에서는 이와 같은 고려 사항을 반영하여 효율적인. Mobile

를 설계 및 구현하였다 실시간 데이타베이스 시스템을 이용한 는GIS . Mobile GIS Mobile

클라이언트 미들웨어 실시간 엔진으로 구성되어 있다, , GIS .

클라이언트는 장치를 통하여 공간 및 비공간 데이타를 디스플레이하고Mobile Mobile GPS

를 통한 위치 데이타를 보여주며 미들웨어로 사용자 질의를 요청한다 클라이언트는. Mobile

로부터 데이타를 지속적으로 받는 데이타 수신 관리자 와 시리얼 통신을 하GPS GPS , GPS

기 위한 드라이버 장치에 공간 비공간 위치 데이타를 표현하기 위한 디스플GPS , Mobile , ,

레이 관리자 좌표를 좌표로 변환하기 위한 좌표 변환 관리자 실제 디스플레, WGS84 TM ,

이 화면에 좌표를 표현하기 위한 좌표 변환 관리자 미들웨어와 데이타를 교환하기 위한 인,

터페이스 관리자로 구성된다.

- 138 -

미들웨어는 클라이언트에서 요구된 사항을 질의로 생성하여 실시간 엔진으로 전송하고GIS ,

그 처리 결과를 클라이언트로 전송한다 미들웨어는 클라이언트 전달되는Mobile . Mobile

질의를 처리하기 위한 질의 관리자 공간 데이타를 이용한 연산을 하기 위한 공간 연산 관,

리자 최단 최적 경로 탐색과 같은 질의 처리를 위한 공간 알고리즘 관리자 질의 결과로, , ,

반환될 데이타를 추출하기 위한 데이타 추출기 등록된 실시간 엔진을 관리하기 위한, GlS

서버 리스트 관리자 클라이언트로 데이타를 전송하기 위한 데이타 전송 관리자로, Mobile

구성되어 있다 실시간 엔진은 에서 필요한 공간 비공간 위치 데이타를 효. GIS Mobile GIS , ,

과적으로 관리한다 실시간 엔진은 미들웨어와의 인터페이스를 위한 인터페이스 관리. GIS

자 미들웨어에서 요청한 질의를 처리하기 위한 질의 관리자 빠른 질의 처리를 위한 인덱, ,

스 관리자 백엔드 로부터 공간 데이타를 적재하기 위한 데이타 로더 레이어 관리를 위, GIS ,

한 레이어 관리자 대용량의 위치 데이타를 관리하기 위한 위치 데이타 관리자 클래스 관, ,

리를 위한 메타 데이타 관리자 객체를 관리하기 위한 객체 관리자로 구성되어 있다, .

위치 기반 서비스에 대한 요구가 점차적으로 증가하면서 실시간 데이타베이스 시스템을 이

용한 는 점차적으로 현존하는 모든 가 추구할 방향이 될 것이다 국내 대부Mobile GIS GIS .

분의 산업은 현재 이러한 로의 변환을 준비하고 있으며 와 관련있는GIS Mobile GIS , GIS

대학 연구소들도 개방형 위치 서비스 표준을 중심으로 하여 에 대한 연구를 수, Mobile GIS

행하고 있다.

- 139 -

이러한 발전과 더불어 국내 를 위한 고유의 실시간 기술이 연구 개발되면GIS Mobile GIS

에 대한 시장 및 서비스가 형성될 것이고 다양한 형태의 장치와 위치Mobile GIS , Mobile

서비스를 지원하는 실시간 를 이용한 응용 분야가 늘어나게 될 것이다 그리고Mobile GIS . ,

분산 네트워크가 점차적으로 파급되면서 전국 지도에 대한 공간 및 비공간 데이타를 중앙

집중형의 서버 형태로부터 벗어나 작은 규모의 지역 단위로 지도 데이타를 관리하게 될 것

이며 또한 장치를 이용하여 지역 내의 변화를 실시간으로 삽입 갱신 삭제 검색할, Mobile , , ,

수 있을 것이다 국내의 들은 이러한 변화에 따라 위치 기반 서비스를 지원하는 실시간. GIS

모바일 기반으로 나아갈 것이므로 앞으로 점점 더 많은 실시간 모바일 에 관한 기GIS GIS

술 수요가 예상된다.

본 연구의 향후 연구 과제는 다음과 같다 현재 다른 시스템이나 미들웨어에서 실시간. GIS

엔진에 접근하기 위해서는 실시간 엔진의 를 이용한다 그러나 현재 사용되고 있는GIS API . ,

다양한 미들웨어나 시스템에 효과적으로 사용되기 위해서는 OpenGIS Simple Features

와 같은 표준화된 인터페이스의 지원이 필요하다 또한Specification for CORBA, OpenLS . ,

클라이언트에서 사용되는 공간 비공간 위치 데이타를 효과적으로 관리하기 위해서Mobile , ,

는 이진 화일을 사용하는 것보다 장치에서 동작하는 초소형의 에 대Mobile Mobile DBMS

한 연구가 필요하다.

- 140 -

참고 문헌

[1] Barbara, D., “Mobile Computing and Database-A Survey,” IEEE Trans. on

Knowledge and Data Eng., Vol.11, No.1,1999, pp.108-117.

[2] Bernhardsen, T., Geographic Information System, Norwegian Mapping

Authority,1992.

[3] Egenhofer, M., "Spatial SQL : A. Query and Presentation Language," IEEE

Transaction on Knowledge and Data Engineering, Vol.6, No.1, 1994,pp.86-95.

[4] Goodchild, M.F., Introduction to GIS, National Center for Geographic Information

and Analysis, Univ. of California, 1991.

[5] Gueting, R.H., "An Introduction to Spatial Database Systems," The VLDB

Journal, Vol.3, No.4, 1994, pp.357-399.

[6] ISO TC/211, 19132 Geographic Information - Location Based Services Possible

Standards, http://www.isotc211.org/scope.htm#19132.

[7] ISO TC/211, 19133 Geographic Information - Location Based Services Tracking

and Navigation, http://www.isotc211.org/scope.htm#19133.

[8] ISO TC/211, 19134 Geographic Information - Multimodal Location Based

Services for Routing and Navigation, http://www.isotc211.org/scope.htm#19134.

[9] ITS America, National ITS : Physical Architecture, ITS America Report, 1997.

- 141 -

[10] Lazar, R., "Conformance Testing for the Spatial Data Transfer Standard,"

Cartography and Geographic Information System, Vol.21, No.3, 1994, pp.159-161.

[11] Lee, Y., and William, C., Mobile Communications Design Fundamentals, John

Wiley & Sons, 1993.

[12] MAGIC Services Forum, MAGIC ServicesTM Specification Version 1.0, MAGIC

Services Forum, 2001.

포럼[13] Niedzwiadek, H., "OpenLS-1 Interoperability Project: An Overview," LBS

창립총회 및 기념세미나, 2002, pp.30-51.

[14] OpenLS Initiative, A Request for Technology In Support of an Open Location

Services(OpenLSTM) Testbed, http://www.openls.org, 2000.

[15] Orenstein, J.A., and Manola, F.A., "PROBE Spatial Data Modeling and Query

Processing in an Image Database Application," IEEE Transactions on Software

Engineering, Vol.14, No.5, 1988, pp.611-629.

[16] Prakash, R., and Singhal, M., A Dynamic Approach to Location Management in

Mobile Computing Systems, Dept. of Computer and Information Science, The Ohio

State Univ., Technical Report, OSU-CISRC-4/96-TR22, 1996.

[17] PostgreSQL Documentation,

http://ai-cse.sch.ac.kr/doc/postgresql-doc/index.html, 1998.

[18] Prakash, R., and Singhal, M., A Dynamic Approach to Location Management in

Mobile Computing Systems, Dept. of Computer and Information Science, The Ohio

State Univ., Technical Report, OSU-CISRC-4/96-TR22, 1996.

- 142 -

[19] STANDARD FOR INTERFACING MARINE ELECTRONIC DEVICES NMEA0183

Version 2.00 January 1, 1992.

[20] Voisard, A., "Towards a Toolbox for Geographic User Interfaces," in Advances

in Spatial Databases, Lecture Notes in Computer Science No.525, Gurther and

H.J.Schek (Eds.), Springer-Verlag, Berlin, 1991.

[21] Lee, Y., and William, C., Mobile Communications Design Fundamentals, John

Wiley & Sons, 1993.

고일두 국토개발연구원 수치지도 작성 포맷에 관한 연구[22] , , , 1996.

김기홍 이동체 주행안내를 위한 지리정보 데이타베이스의 설계와 구현[23] , , Master's

서울대학교thesis, , 1995.

김구천 김창수 를 이용한 차량 이동 추적 시스템에 관한 연구 춘계정[24] , , "CPS/GIS ," '99

보처리학회 학술대회논문집, Vol.6, No.1, 1999, pp.951-954.

남기범 이건명 무선 웹 기술과 전망 정보과학회지[25] , , “ ,” , Vol.18, No.6, 2000,

pp.32-38.

성규영 무선 인터넷 컨텐츠의 전망 정보과학회지[26] , " ," , Vol.18, No.6, 2000,pp.46-53.

안병익 김효실 김민 생활 지리 정보 서비스 시스템 개발에 관한 연구 정보통신연[27] , , , " ,"

구회지, Vol.15, No.1, 1997.

오병우 한기준 지리 정보 시스템을 위한 사용자 인터페이스 데이타베이[28] , , "GRACE : ,"

스연구회 동계 데이타베이스 학술대회논문집, '94 , Vol.10, No.1, 1994, pp.58-64.

- 143 -

오승 이창진 김창호 위치기반서비스 분야의 표준화 동향 분석 개방형 지리[29] , , , “ ,” 2001

정보시스템 학회 학술회의 논문집 권 호, 4 1 , 2001, pp,123-141.

윤재관 이근호 한기준 를 이용한 모바일 의 개발 개방형[30] , , , “Shareware DBMS GIS ,”

연구회 논문지 권 호GIS , 2 2 , 2001, pp.25-37.

이창주 유상의 이상구 의 객체 관리를 위한 알고리즘 정보과학회 논문지[31] , , , “PDA ,” (B),

Vol.24, No.3, 1997, pp.244-254.

정명균 김창수 강병식 김종우 와 무선통신을 이용한 이동 물체 관제 시스[32] , , , , “GPS/GIS

템 설계 춘계정보과학회 학술대회논문집,” '2000 , Vol.27, No.1, 2000, pp.289-291.

진희채 박상미 안병익 위치기반정보서비스를 지원하는 시스템 구조 및 소프트웨어[33] , , , “

기술동향 분석 개방형 지리정보시스템 학회 학술회의논문집 권 호,” 2001 , 4 1 , 2001,

pp.145-160.

최혜옥 위치 기반서비스 제 회 공간 정보 워크[34] , “ (LBS, Location-Based Services),” 3

샵 년, 2002 , pp.5-22.