KR100461020B1 - 이동객체 데이터베이스에 대한 질의처리 시스템 - Google Patents

이동객체 데이터베이스에 대한 질의처리 시스템 Download PDF

Info

Publication number
KR100461020B1
KR100461020B1 KR10-2002-0078310A KR20020078310A KR100461020B1 KR 100461020 B1 KR100461020 B1 KR 100461020B1 KR 20020078310 A KR20020078310 A KR 20020078310A KR 100461020 B1 KR100461020 B1 KR 100461020B1
Authority
KR
South Korea
Prior art keywords
query
information
moving object
time
attribute
Prior art date
Application number
KR10-2002-0078310A
Other languages
English (en)
Other versions
KR20040050466A (ko
Inventor
남광우
이재호
조대수
장인성
민경욱
김민수
이종훈
박종현
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR10-2002-0078310A priority Critical patent/KR100461020B1/ko
Publication of KR20040050466A publication Critical patent/KR20040050466A/ko
Application granted granted Critical
Publication of KR100461020B1 publication Critical patent/KR100461020B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 이동객체의 연속적 변화에 대한 질의뿐만 아니라 시계열적 특성을 구성하는 핵심 연산함수들을 제시하고 이를 포함하도록 SQL질의어를 확장함으로써, 위치기반서비스(LBS) 등과 같은 다양한 응용분야에서 보다 다양하고 정확한 정보의 추출과 그 정보검색을 효율적으로 할 수 있도록 하는 이동객체 데이터베이스에 대한 질의처리 시스템에 관한 것이다.
본 발명은, 위치정보 응용시스템으로부터 이동객체들에 대한 질의어를 입력 받는 인터페이스부와, 질의어를 파싱하고 그 질의내용을 이동객체에 대한 속성질의와 시공간 질의로 분석하는 질의분석 컴포넌트와, 속성DB에서 이동객체의 속성정보를 반환하는 속성필터와, 이동객체 위치DB에서 이동객체의 시공간 정보를 반환하는 시공간필터와, 이동객체 정보에 대한 효율적 검색을 위한 이동객체 위치색인부와, 질의분석 컴포넌트의 분석결과를 토대로 속성필터를 통해 해당 이동객체의 속성정보를 추출하고 시공간 필터를 통해 해당 이동객체의 시공간 정보를 추출한 후, 이 속성정보와 시공간 정보를 병합처리하는 질의수행 컴포넌트로 구성된다.

Description

이동객체 데이터베이스에 대한 질의처리 시스템{Query processing system for moving objects databases}
본 발명은 이동객체 데이터베이스에 대한 질의처리 시스템에 관한 것이며, 보다 상세히는 이동객체 데이터베이스에 대하여 시계열 연산 질의와 슬라이스 연산들을 지원하도록하여 이동객체에 대한 보다 강력한 표현력을 갖는 SQL질의어를 제시함으로써 위치기반서비스(LBS)의 실제적 응용에 적합하도록 하는 이동객체 데이터베이스에 대한 질의처리 시스템에 관한 것이다.
최근, 핸드폰, PDA, 노트북, 차량, 항공기 등과 같은 이동객체를 다루는 다양한 위치기반서비스(LBS; Location-Based Services) 및 데이터베이스 응용들이 등장함에 따라 이동 객체의 공간(위치) 정보를 저장 관리하고 정보를 요구하는 다양한 사용자 질의를 처리할 필요성이 대두되었다.
위치기반 서비스(LBS; location-based services)란, 이동객체의 위치를 확인하고 그 위치에 따라 필요한 정보를 제공하는 무선 통신서비스를 말하는 것으로, 이 서비스를 이용하는 핸드폰, PDA 등과 같은 이동객체는 측위유닛(LMU; Location Measurement Unit)과, 무선통신을 위한 사용자기기(UE; User Equipment) 등의 하드웨어와, 위치기반상거래 응용을 위한 플랫폼 및 응용소프트웨어 등을 구비하며, 비콘(Beacon) 또는 위성위치확인시스템(GPS;Global Positioning System)을 통해 그 위치확인이 가능하다.
이때, 이동객체들의 위치는 소정의 시간간격으로(일반적으로 다소 불규칙적임) 측위되며, 이렇게 측위된 위치정보들은 위치정보지원센터(SMLC; Serving Mobile Location Center)에 데이터베이스화되어 관리되고, 서비스제공자로서는 위치정보제공 게이트웨이(GMLC; Gateway Mobile Location Center)를 통해 필요한 이동객체정보 및 그 위치정보들을 추출하여 이를 기반으로 이동객체들에게 위치기반서비스를 제공하게 된다.
서비스제공자가 이동객체 사용자의 요구에 부합하는 위치기반서비스를 제공하기 위해서는 시계열적으로 저장된 이동객체의 위치정보들로부터 다양한 관련정보를 추출할 수 있는 SQL질의어 및 질의처리시스템이 갖춰져야 한다.
하지만, 종래의 이동객체 질의어 및 질의처리시스템은 이러한 위치기반서비스에서의 특성을 충분히 반영하고 있지 못하고 있다.
한편, 종래 이동객체 질의어 및 질의처리시스템에 대한 주요 연구로는 유럽의 Guting과 Jensen 연구그룹과 Wolfson의 DOMINO 프로젝트 등이 있다.
DOMINO(Database fOr MovINg Objects) 프로젝트에서는 현재 객체의 위치정보에 대한 단순 질의외에 미래위치에 대한 질의를 처리해 주기 위해 기존 데이터베이스 위에 이동객체를 관리하는 소프트웨어 모델을 추가한 형태의 MOST모델을 제안하고 있다. MOST 모델은 동적 속성값을 표현하며 이동 객체의 향후 위치등에 대한 질의처리를 위해서 FTL(Future Temporal Logic)을 제공한다. 하지만, 이 모델은 이동점의 미래위치에 대한 질의와 한정된 과거에 대한 질의만을 지원한다는 단점을 갖고 있다.
또한, Guting의 연구에서는 이동객체 표현을 위해 시간 흐름별로 분할된 "슬라이스"라는 조각들을 통해 시간상에서 변화하는 이동객체의 속성 정보를 표현하는 슬라이스 표현을 제안하고 이를 바탕으로 연산자와 질의 모델을 정의하였으나 이동객체의 시계열(time-series)적 특성을 반영하지는 못하는 문제점이 있다.
따라서, 본 발명은 상술한 종래의 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 이동객체의 연속적 변화에 대한 질의뿐만 아니라 시계열적 특성을 구성하는 핵심 연산함수들을 제시하고 이를 포함하도록 SQL질의어를 확장함으로써, 위치기반서비스(LBS)를 수행하는 플랫폼 또는 이동객체의 위치정보를 이용하는 다양한 응용분야에서 사용자 및 프로그래머 등으로 하여금 보다 다양하고 정확한 정보의 추출과 그 정보검색을 효율적으로 할 수 있도록 하는 이동객체 데이터베이스에 대한 질의처리 시스템을 제공하는데 있다.
상기 본 발명의 목적을 달성하기 위한 이동객체 데이터베이스에 대한 질의처리 시스템은, 이동객체의 속성정보와 시공간 정보가 각각 속성DB와 이동객체 위치DB에 분리 저장되는 객체지향 데이터베이스시스템(DBMS)에 대하여 위치정보 응용시스템으로부터의 질의를 처리 제공하는 이동객체 질의처리 시스템에 있어서, 위치정보 응용시스템으로부터 이동객체들에 대한 질의어를 입력 받는 인터페이스부; 상기 입력된 질의어를 파싱하고 그 질의내용을 이동객체에 대한 속성질의와 시공간 질의로 분리 분석하는 질의분석 컴포넌트; 비공간 속성연산들을 처리하여 속성DB로부터 이동객체의 속성정보를 반환하는 속성필터; 이동객체 연산들을 처리하여 이동객체 위치DB로부터 이동객체의 시공간 정보를 반환하는 시공간필터; 이동객체 위치DB에 저장된 이동객체들에 대한 시공간 정보를 효율적으로 검색하기 위한 이동객체 위치색인부; 및 상기 질의분석 컴포넌트의 분석결과를 토대로 상기 속성필터를 통해 속성DB로부터 해당 이동객체의 속성정보를 추출하고 상기 시공간 필터를통해 이동객체 위치DB로부터 해당 이동객체의 시공간 정보를 추출한 후, 이 추출된 속성정보와 시공간 정보를 병합처리하는 질의수행 컴포넌트;로 구성된다.
도 1은 본 발명에 따른 이동객체 데이터베이스의 질의처리 시스템에 대한 구
성도.
도 2는 이동객체의 위치정보에 대한 시계열적 특성과 연속변화 특성을 보여
주는 그래프도.
도 3은 본 발명에 따른 시계열 연산함수들을 보여주는 도표도.
도 4는 본 발명에 따른 연속변화 연산함수들을 보여주는 도표도.
<도면의 주요부분에 대한 부호의 설명>
101: 위치정보 응용시스템 102: 인터페이스부
103: 질의분석 컴포넌트 104: 질의수행 컴포넌트
105: 속성필터 106: 시공간 필터
107: 이동객체 위치색인부 108: 속성DB
109: 이동객체 위치DB
이하, 본 발명에 따른 실시예를 첨부한 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명에 따른 이동객체 데이터베이스에 대한 질의처리시스템의 블럭구성도이다.
도 1에 도시된 바와 같이, 본 발명에 따른 질의처리시스템은 인터페이스부(102)와, 질의분석 컴포넌트(103)와, 질의수행 컴포넌트(104)와, 속성필터(105)와, 시공간 필터(106)와, 이동객체 위치색인부(107)로 이루어진다.
상기 인터페이스부(102)는 위치정보 응용시스템(101)으로부터 이동객체들에 대한 질의를 받고 그 처리결과를 제공하는 부분으로서, 마이크로소프트사의 데이터베이스 접근 인터페이스 규격인 ADO.NET을 사용할 수 있다.
위치정보 응용시스템(101)은 이동객체들에 대한 위치정보를 질의 요청하고 그 검색결과를 기반으로 다양한 위치기반서비스(LBS)를 제공하게 되는 응용시스템으로서, 위치기반서비스를 제공하기 위해 LBS 플랫폼 등을 구비한다.
이때, 위치정보 응용시스템(101)은 이하에서 설명될 바와 같은 이동객체에 대한 시계열 연산함수와 연속변화 연산함수를 통해 확장된 SQL질의어를 생성하여 질의 요청함으로써, 필요한 정보를 보다 효과적으로 질의할 수 있게 되고 성능이 향상된 위치기반서비스를 제공할 수 있게 된다.
상기 질의분석 컴포넌트(103)는 상기 위치정보 응용시스템(101)으로부터 요청된 질의어를 파싱(Parsing)하여, 그 질의어를 이동객체에 대한 속성질의와 시공간 질의로 분리 분석한다. 즉, 질의어 내용중에서 이동객체의 속성정보에 대한 질의내용과 이동객체의 위치정보(시공간 정보)에 대한 질의내용을 각각 추출 확인한다.
여기에서, 이동객체의 속성정보는 핸드폰 단말기(이동객체)의 폰번호, 사용자 이름, 등과 같은 비공간적 데이터를 의미하고, 시공간 정보는 이동객체의 이동에 따른 시간대별 위치정보를 말한다.
이러한 속성정보와 시공간 정보는 각각 속성DB(108)와 이동객체 위치DB(109)에 데이터베이스화되어 관리된다.
상기 질의수행 컴포넌트(104)는 상기 질의분석 컴포넌트(103)의 분석결과를 받아서 실제적인 질의를 수행하는 구성부분이다.
이때, 상기 질의수행 컴포넌트(104)는 속성질의를 처리하기 위하여 상기 속성필터(105)를 통해 속성DB(108)로부터 해당 이동객체에 대해 질의된 속성정보를 추출하고, 시공간 질의를 처리하기 위하여 상기 시공간 필터(106)를 통해 이동객체 위치DB(109)로부터 질의된 이동객체의 시공간 정보를 추출한다.
그리고, 상기 질의수행 컴포넌트(104)는 추출된 속성정보와 시공간 정보를 병합 처리하고 이를 상기 인터페이스부(102)로 전달한다.
상기 속성필터부(105)는 상기 질의수행 컴포넌트(104)에 의해 전달된 단위 비공간 속성연산들을 처리하여 속성DB(108)로부터 이동객체의 속성정보를 반환한다.
상기 시공간 필터부(106)는 상기 질의수행 컴포넌트(104)에 의해 전달된 단위 이동객체 연산들을 처리하여 상기 이동객체 위치DB(109)로부터 이동객체의 시공간 정보를 반환한다.
또한, 상기 이동객체 위치색인부(107)는 이동객체 위치DB(109)에 저장된 이동객체들에 대한 방대한 시공간 정보를 효율적으로 검색할 수 있도록 하며, 이동객체들의 현재 위치정보와 과거 위치정보에 대한 각각의 색인부를 구비한다.
이하에서는, 상기 설명된 바와 같은 이동객체 질의처리시스템에 적용될 수 있는 이동객체에 대한 시계열 연산함수 및 연속변화 연산함수와, 이를 통해 확장되는 SQL질의어에 대하여, 도 2내지 도 4를 참조하여, 설명하기로 한다.
도 2는 이동객체의 이동점정보에 대한 시계열적 특성과 연속변화 특성을 설명하기 위한 그래프도로서, 도 2를 참조하여 이동객체의 이동점데이터에 대해 살펴보기로 한다.
이동객체의 이동점은 일정한 선형 이동경로를 따라 움직이는 점 객체이며 특정 시간간격으로 샘플링된 유클리드 평면상의 점이된다. 즉, LBS에서의 이동점데이터는, 도 2의 좌측에 도시된 바와 같이, 일정하지 않는 특정 시간간격으로 샘플링된 위치데이터이다. 이러한 이동점의 특성상 각 샘플링시점(t2, t3 등)에서 이동점의 위치는 정확하게 얻어질 수 있으나 샘플링시점 t2와 t3사이의 어느 중간시점에 대한 위치정보는 얻어질 수 없다. 이와 같이 순차적으로 샘플링된 특정 시간에 대해서만 위치정보값을 갖는 것을 이동점데이터의 시계열적 특성이라 할 수 있다. 실제 데이터베이스화되는 이동객체 데이터는 이러한 시계열적인 이동점데이터이다.
이러한 시계열적 데이터는 그 데이터의 순서, 샘플링 시간, 및 위치 변화량 등에 대한 질의를 통해 위치기반서비스에 유용하게 사용될 수 있지만, 기존의 이동객체 DB에 대한 다른 연구들은 이를 간과하였다.
도 2의 우측에 도시된 그래프는 이동객체의 연속변화 특성을 도시한 것으로서, 중간시점에서의 이동객체의 위치는 두 샘플링시점사이를 연결하는 시간함수를 통해 추측될 수 있다. 이러한 이동객체의 연속변화 특성도 적절한 질의에 의해 위치기반서비스에 유용하게 사용될 수 있다.
한편, 도 3은 상기 설명된 이동점데이터의 시계열적(time-series) 특성을 지원하기 위한 핵심연산자(간단히, '시계열 연산함수'라고 함)들에 대한 도표이다.
도 3에 도시된 바와 같이, 시계열 연산함수로는 first함수, last함수, before함수, after함수, slice_sequence함수 등이 정의될 수 있다.
이러한 시계열 연산함수들의 특징은 시간함수를 통해 추측된 이동점데이터를 사용하는 것이 아니라, 이동객체 위치DB(109)에 저장되어 있는 이동객체의 실제 이동점데이터를 사용한다는 것이다.
시간정보와 위치정보의 쌍(시공간 정보)으로 이루어지는 이동객체의 정보 엘리먼트(element)는 e= <t∥x>로 정의할 수 있다. 즉, 도 2에서 첫번째 엘리먼트는 e1= <t1∥1>이 된다.
시퀀스(S)는 이러한 엘리먼트들의 시계열적 집합으로서 정의된다.
S = [e1,e2,...,en]
validtime함수는 특정 엘리먼트에 대한 그 샘플링 시간값을 추출하기 위한 연산함수이며, first함수는 정의된 시퀀스S에 대하여 앞에서 k번째 이동점데이터인 엘리먼트 ek를 반환하는 연산함수이고, last함수는 시퀀스S에 대하여 마지막점에서 k번째 엘리먼트인 en-k를 반환하는 연산함수이다.
after함수는 시퀀스S에서 임의시간 t(시계열적 샘플링시간이 아닌 중간시점의 시간값이 될 수 있음)를 기준으로 그 시점에 가장 근접한 이전 엘리먼트값을 반환하고, before함수는 시퀀스S에서 임의시간 t를 기준으로 그 시점 바로 이후의 엘리먼트값을 반환하는 함수이다.
next함수는 특정 엘리먼트에 대해 그 다음 엘리먼트값을 반환하고, previous함수는 특정 엘리먼트에 대해 그 이전 엘리먼트값을 반환하는 연산함수이다.
또한, slice_sequence함수는 시간 또는 위치정보 인덱스를 통해 시퀀스S를 분할 추출하기 위한 함수로서, slice_sequence(s,kfrom,kto)함수는 시퀀스S에서 kfrom번째로부터 kto번째에 해당하는 엘리먼트들을 추출하여 새로운 시퀀스로서 정의하고, slice_sequence(s,tfrom,tto)함수는 임의의 시간 tfrom에서 tto까지에 해당하는 엘리먼트 집합을 새로운 시퀀스로서 정의한다.
count함수는 시퀀스S에 포함된 위치정보의 숫자, 즉, 엘리먼트 숫자를 산출한다.
한편, 도 4는 본 발명에 따른 이동객체의 연속적 변화 특성을 지원하기 위한 핵심연산자(간단히, '연속변화 연산함수'라고 함)들에 대한 도표이다.
도 4에 도시된 바와 같이, 연속변화 연산함수로서 snapshot함수, slice함수, project함수 등이 정의될 수 있다.
이러한 연속변화 연산함수는 시계열 연산함수와는 달리 모든 시간에서의 특정위치를 연산할 수 있는 기능을 제공한다.
snapshot함수는 이동객체의 연속변화 특성에서 필요한 이동객체 속성정보, 위치정보, 또는 시간정보를 스냅샷하여 반환하는 함수이다. 즉, snapshot_validtime(m,ti)는 연속변화 이동점객체 m으로부터 임의의 어떤시간ti에서의 위치정보를 스냅샷하여 반환하고, snapshot_value(m,ci,x)는 연속변화 이동점객체 m으로부터 특정 공간 x에 이동객체가 위치하게 된 시간범위를 스냅샷하여 반환한다. 여기에서 ci파라미터는 컬럼(coulm)파라미터로서 이동객체가 위치하는 공간(즉, 빌딩지역, 도로변, 평지, 지하 등)에 따른 이동점데이터의 오차정보를 갖는다. 상기 snapshot_value함수는 이 오차정보를 감안하여 공간x에 대한 시간범위를 스냅샷한다.
slice함수는 특정 시간범위 또는 특정 속성값 범위에서의 속성값 시퀀스를 추출하는 연산함수이다. slice_validtime(m,tfrom,tto)는 이동점객체 m으로부터 임의의 시간 tfrom에서 tto까지의 시간범위에 대해 슬라이스된 새로운 이동점객체 m'을 반환하고, slice_validtime(m,ci,x)는 위치 오차정보 ci를 감안하여 이동점객체 m으로부터 특정공간 x에 대한 새로운 이동점객체 m'을 반환한다.
상기 snapshot함수와 slice함수의 가장 큰 차이점은 이동점객체를 특정시점의 현재점값으로 타입변환하고, slice함수는 이동점객체의 타입변환없이 객체의 슬라이스를 반환한다는 것이다.
project함수는 특정시점에서의 속성값들의 프로젝션 또는 특정속성값에서의 시간값들의 프로젝션을 추출하기 위한 연산함수로서, 위치정보의 변화분에 대한 프로젝션 결과를 반환하는 함수이다.
이하에서는, 상기 설명된 바와 같은 시계열 연산함수와 연속변화 연산함수를 이용하여 이동객체에 대한 SQL질의어를 작성하는 예들을 살펴보기로 한다.
SQL질의어는 기본적으로 테이블 생성을 위한 CREATE TABLE 질의와 정보검색을 위한 SELECT 질의를 지원한다.
먼저, 이동객체 테이블의 생성을 위한 CREATE TABLE 문의 작성에 대해 살펴보면 다음과 같다.
LBS의 이동점객체 정보를 저장하기 위한 테이블을 생성하는 데이터 정의어는 각 위치기반서비스의 특성에 적합하게 지원되어야한다. 즉, 예 1에서와 같이, GMLC(Gateway Mobile Location Center)의 위치, 데이터의 불확정 범위, 응답시간 설정, 이동점의 저장방법 등은 LBS의 특성에 맞게 설정할 수 있어야한다.
<예 1>. 이동점 속성을 갖는 gmlc_user 테이블을 생성하라.
CREATE TABLE gmlc_user (
cellphone_number char(20),
cellphone_owner char(15),
position mpoint
Options (
Get Location Gateway is "http://www.Netruck.com/gmlc?" + cellphone_number,
Default Horizontal Accuracy is (Indeterminacy(100m, 67%), Indeterminacy(300m, 95%)),
Response Time Mode is low delay,
Mpoint Raw Data Split Mode is by Time 1 day
Mpoint Storage is distributed
)
);
예 1에 제시된 바와 같이, 이동객체에 대한 테이블 생성 질의어는 데이터 타입으로서 이동객체를 위한 이동점(mpoint) 타입이 사용되며, 이동객체에 대한 특성들을 설정하기 위한 options 구문을 갖는다.
이 options 구문에는 위치획득을 위한 location gateway의 url, 이동객체의 위치 측위를 위한 측위 방법의 수평 및 수직 위치 정확도, 위치 측위 응답 모드, 데이터의 분할 저장 방법 등이 설정된다.
한편, 상기 설명된 시계열 연산함수를 사용하여 이동객체에 대한 SQL질의어를 확장하는 경우를 예 2내지 예 5를 통해서 설명하기로 한다.
이러한 시계열 연산함수는 최근 입력된 위치정보에 질의, 위치정보 입력 변화에 대한 질의 등을 용이하게 행할 수 있도록 한다.
<예 2>. 가장 최근 입력된 위치정보 sequence를 검색하고 집계하라.
SELECT last(position, 0), count(position)
FROM gmlc_user
WHERE cellphone_number = '016-402-****'
이는 시계열 연산함수인 last함수를 사용하여 데이터베이스의 gmlc_user테이블로부터 016-*** 휴대폰 사용자의 가장 최근 위치정보를 추출한다.
<예 3>. 최근 10개의 위치정보 sequence를 검색하라.
SELECT slice_sequence( position, index(last(position, 0)), index(last(position, 10))
FROM gmlc_user
이는 gmlc_user테이블에 입력된 이동점데이터에서 최근 10개에 대한 이동점정보 엘리먼트를 검색한다.
<예 4>. 특정 시간tx부터 1시간이후 동안의 위치정보 sequence 검색하라.
SELECT slice_sequence(position, tx,
tx+ interval('1 hour'))
FROM gmlc_user
이와 같이 slice_sequence함수를 사용하여 특정 시간구간에 대한 시계열적 이동점데이터를 용이하게 검색할 수 있게 된다.
<예5>. 두개의 위치정보 sequence에서 5000m 이상의 변화량을 보인 사용자 검색하라.
SELECT cellphone_owner
FROM gmlc_user
WHERE (
SELECT tpoint FROM position
WHERE DISTANCE(before( tpoint ).point, tpoint.point)> 5000 AND
before(tpoint).VT tpoint.VT < Interval('1 hour'))
이와 같이 시계열 연산함수인 before함수를 사용하여 용이하게 작성될 수 있다.
한편, 이동객체의 연속변화 연산함수를 사용하여 이동객체에 대한 SQL질의어를 확장하는 경우에 대해 살펴보면 다음과 같다.
snapshot 연산함수는 현재 또는 과거의 특정시점을 기준으로 그 당시의 위치정보에 대한 질의를 가능하게 한다. 또한, 이 snapshot함수를 사용하면 현재 위치정보에 대한 질의만을 사용하는 응용에 대하여 snapshot함수를 사용함으로서 의미적으로 연속성을 갖는 단순 질의를 작성할 수 있게 한다는 것이다.
예 6내지 예 9는 이러한 snapshot함수를 사용한 질의어 작성예를 보여주고 있다.
<예 6>. gmlc_user의 현재위치를 검색하라.
SELECT snapshot_validtime(position, now)
FROM gmlc_user
이는 gmlc_user테이블에 저장된 이동점데이터로부터 현재 시점의 위치정보를 추측하고 이를 반환하게 한다.
<예 7>. 현재 특정 지역내에 존재하는 사용자를 검색하라.
SELECT cellphone_owner, cellphone_number
FROM gmlc_user
WHERE within(snapshot_validtime(position, now), polygon('3454.32 3423.43'));
<예 8>. 'Hong gil Dong'이 언제 특정지역을 지나갔는지 검색하라.
SELECT snapshot_spatial(position, polygon('3454.32 3423.43'))
FROM gmlc_user
WHERE cellphone_user = 'Hong Gil Dong'
<예 9>. 특정시간동안에 특정지역내에 머물렀던 사람들을 검색하라.
SELECT cellphone_owner
FROM gmlc_user
WHERE contains(snapshot_spatial(position, polygon('3454.32 3423.43')),
period('2002/05/02:22:00-2002/05/03:02:00'))
상기 예 6내지 예 9를 통해 제시된 바와 같이, 연속변화 연산함수인snapshot함수를 사용하면 간단한 질의어 구성으로 이동객체에 대한 다양한 질의를 행할 수 있게 된다.
한편, 연속변화 연산함수인 slice함수와 project함수를 사용하는 SQL질의어의 작성에 대해 살펴보면 다음과 같다.
slice함수는 이동객체에 대해 특정 시간간격에 대한 부분을 한정하는 효과를 갖는다. 이러한 슬라이싱 표현에 의해 대상 이동객체의 범위가 축소되며 특정 시간 조건을 제시하는 역할을 수행한다.
또한, Project 함수는 이동객체의 위치정보를 시간차원에 대하여 프로젝션하는 함수로서 이동 객체의 궤적을 추출하는데 유용하게 사용될 수 있다.
다음의 예 10내지 예 13은 이러한 slice함수와 Project함수를 사용한 예이다.
<예 10>. 특정시간동안에 대한 사용자 궤적을 추출하라.
SELECT slice_validtime( position, period('2002/05/01-2002/05/31'))
FROM gmlc_user
<예 11>. 특정지역에서의 사용자 궤적을 추출하라.
SELECT slice_spatial(position, polygon('34234.33 234.33 '))
FROM gmlc_user
<예 12>. 특정시간에 특정지역을 지나간 사용자를 검색하라.
SELECT cellphone_owner
FROM gmlc_user
WHERE overlaps(position, motpolygon( period('2002/05/03-now'),
polygon('344.33 23.33 '))
<예 13>. 이동객체의 이동궤적을 추출하라.
SELECT project_spatial(position)
FROM gmlc_user
WHERE cellphone_owner = 'Hong Gil Dong'
한편, 이동객체 Join질의는 이동객체들간의 연산을 수행함으로서 좀더 복합적인 질의를 수행할 수 있도록 지원한다. 이러한 Join질의는, 예 14내지 예16에 제시된 바와 같이, distance, intersection 등의 함수와 같이 사용됨으로서 위치기반서비스의 보다 강력한 기능을 지원할 수 있게 한다.
<예 14>. 100 m 이내까지 상호 접근했던 사용자를 검색하라.
SELECT A.cellphone_owner, B.cellphone_owner
FROM gmlc_user A, gmlc_user B
WHERE distance(A.position, B.position) < 100
<예 15>. 특정지역내에 존재하는 사용자들을 검색하라.
SELECT cellphone_number
FROM gmlc_user, EMart
WHERE overlaps(snapshot_validtime( position, now), emart_region)
<예 16>. 두 사용자의 교차지점을 검색하라.
SELECT intersection( A.position, B.position )
FROM gmlc_user A, gmlc_user B
상술한 바와 같이 본 발명에 따른 이동객체 데이터베이스에 대한 질의처리 시스템은, 이동객체의 연속적 변화에 대한 질의뿐만 아니라 시계열적 특성을 구성하는 연산함수들을 제시하고 확장된 SQL질의어를 통해 이동객체에 대한 질의처리를 수행함으로써 위치기반서비스(LBS)를 수행하는 플랫폼 또는 이동객체의 위치정보를 이용하는 다양한 응용분야에서 사용자 및 프로그래머 등으로 하여금 보다 다양하고 정확한 정보의 추출과 그 정보검색을 효율적으로 할 수 있도록 한다.
이상에서 설명한 것은 본 발명에 따른 이동객체의 위치정보데이터베이스에 대한 질의처리 시스템을 실시하기 위한 하나의 실시예에 불과한 것으로서, 본 발명은 상기한 실시예에 한정되지 않고, 이하의 특허청구의 범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 있다고 할 것이다.

Claims (6)

  1. 이동객체의 속성정보와 시공간 정보가 각각 속성DB와 이동객체 위치DB에 분리 저장되는 객체지향 데이터베이스시스템(DBMS)에 대하여 위치정보 응용시스템으로부터의 질의를 처리 제공하는 이동객체 질의처리 시스템에 있어서,
    위치정보 응용시스템으로부터 이동객체들에 대한 질의어를 입력 받는 인터페이스부;
    상기 입력된 질의어를 파싱하고 그 질의내용을 이동객체에 대한 속성질의와 시공간 질의로 분리 분석하는 질의분석 컴포넌트;
    비공간 속성연산들을 처리하여 속성DB로부터 이동객체의 속성정보를 반환하는 속성필터;
    이동객체 연산들을 처리하여 이동객체 위치DB로부터 이동객체의 시공간 정보를 반환하는 시공간필터;
    이동객체 위치DB에 저장된 이동객체들에 대한 시공간 정보를 효율적으로 검색하기 위한 이동객체 위치색인부; 및
    상기 질의분석 컴포넌트의 분석결과를 토대로 상기 속성필터를 통해 속성DB로부터 해당 이동객체의 속성정보를 추출하고 상기 시공간 필터를 통해 이동객체 위치DB로부터 해당 이동객체의 시공간 정보를 추출한 후, 이 추출된 속성정보와 시공간 정보를 병합처리하는 질의수행 컴포넌트;로 구성되는 것을 특징으로 하는 이동객체 데이터베이스에 대한 질의처리 시스템.
  2. 제 1항에 있어서, 상기 인터페이스부는 마이크로소프트사의 데이터베이스 접근 인터페이스 규격인 ADO.NET의 인터페이스를 구현하는 것을 특징으로 하는 이동객체 데이터베이스에 대한 질의처리 시스템.
  3. 제 1항에 있어서, 상기 질의어는 이동객체 위치DB에 저장되어 있는 이동객체의 실제 이동점데이터의 시계열적(time-series) 특성을 지원하는 시계열 연산함수와, 모든 시간에 대한 이동객체의 연속적 변화 특성을 지원하는 연속변화 연산함수를 사용하여 이뤄지는 것을 특징으로 하는 이동객체 데이터베이스에 대한 질의처리 시스템.
  4. 제 3항에 있어서, 상기 시계열 연산함수는, 각 이동객체의 정보 엘리먼트가 위치정보와 시간정보의 쌍으로 이루어져 있을때, 특정 엘리먼트에 대한 시간값을 추출하기 위한 validtime함수와, 순차적인 엘리먼트 집합에 대하여 앞에서부터 특정 순서에 위치한 엘리먼트를 검색하기 위한 first함수와, 엘리먼트 집합에 대하여 마지막으로부터 특정 순서에 위치한 엘리먼트를 검색하기 위한 last함수와, 특정시간의 바로 다음 시간값을 갖는 엘리먼트를 검색하기 위한 after함수와, 특정시간의 바로 이전 시간값을 갖는 엘리먼트를 검색하기 위한 before함수와, 특정 엘리먼트에 대해 바로 다음 엘리먼트를 반환하기 위한 next함수와, 특정 엘리먼트에 대해 바로 이전 엘리먼트를 반환하기 위한 previous함수와, 위치정보 시퀀스를 시간 또는 위치정보 인덱스를 통해 분할 추출하기 위한 slice_sequence함수를 포함하는 것을 특징으로 하는 이동객체 데이터베이스에 대한 질의처리 시스템.
  5. 제 3항에 있어서, 상기 연속변화 연산함수는, 이동객체의 연속변화 특성에서 이동객체의 속성정보, 위치정보, 또는 시간정보를 스냅샷하여 반환하기 위한 snapshot함수와, 특정 시간범위 또는 특정 속성값 범위에서의 속성값 시퀀스를 추출하기 위한 slice함수와, 특정 시점에서의 속성값들의 프로젝션 또는 특정 속성값에서의 시간값들의 프로젝션을 추출하기 위한 project함수를 포함하는 것을 특징으로 하는 이동객체 데이터베이스에 대한 질의처리 시스템.
  6. 제 3항에 있어서, 상기 질의어는 distance, intersection 함수를 사용하여 이동객체들간의 join질의를 수행하는 것을 특징으로 하는 이동객체 데이터베이스에 대한 질의처리 시스템.
KR10-2002-0078310A 2002-12-10 2002-12-10 이동객체 데이터베이스에 대한 질의처리 시스템 KR100461020B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0078310A KR100461020B1 (ko) 2002-12-10 2002-12-10 이동객체 데이터베이스에 대한 질의처리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0078310A KR100461020B1 (ko) 2002-12-10 2002-12-10 이동객체 데이터베이스에 대한 질의처리 시스템

Publications (2)

Publication Number Publication Date
KR20040050466A KR20040050466A (ko) 2004-06-16
KR100461020B1 true KR100461020B1 (ko) 2004-12-09

Family

ID=37344657

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0078310A KR100461020B1 (ko) 2002-12-10 2002-12-10 이동객체 데이터베이스에 대한 질의처리 시스템

Country Status (1)

Country Link
KR (1) KR100461020B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100688013B1 (ko) * 2005-02-21 2007-02-27 엘지전자 주식회사 티피알 트리의 통계치 갱신방법
KR100806115B1 (ko) * 2006-05-02 2008-02-21 인하대학교 산학협력단 다중레벨 dbms에서 질의 분류 컴포넌트의 설계 방법
KR100800461B1 (ko) * 2006-07-19 2008-02-04 제주대학교 산학협력단 미래 위치 검색 인덱스의 구성 방법
KR100891039B1 (ko) * 2007-04-25 2009-03-31 제주대학교 산학협력단 도로 네트워크에서 이동객체의 질의 처리를 위한 인덱싱구조 및 방법
KR101673802B1 (ko) * 2015-09-01 2016-11-07 성균관대학교산학협력단 Gqr 트리에 기반한 이동객체 질의를 위한 영역 할당 방법 및 gqr 트리에 기반한 이동객체의 위치를 확인하는 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040048465A (ko) * 2002-12-03 2004-06-10 한국전자통신연구원 이동객체의 위치모니터링과 이동경로 탐색 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040048465A (ko) * 2002-12-03 2004-06-10 한국전자통신연구원 이동객체의 위치모니터링과 이동경로 탐색 시스템

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
2002년도 한국정보과학회 가을 학술발표 논문집 Vol. 29. No.2, *
정보처리학회논문지 제 9-D권 제 5호, *
정보처리학회논문지 제9-D권 제 1호, *
한국정보처리학회 논문지 제8-D권 제 2호 *

Also Published As

Publication number Publication date
KR20040050466A (ko) 2004-06-16

Similar Documents

Publication Publication Date Title
US6594666B1 (en) Location aware application development framework
WO2001082113A3 (en) System and method for proximity searching position information using a proximity parameter
Ilarri et al. Location-dependent query processing: Where we are and where we are heading
KR100650389B1 (ko) 2차원 구조의 시분할 이동 객체 인덱싱 시스템 및 방법
Jensen et al. Location-based services: A database perspective.
US7809721B2 (en) Ranking of objects using semantic and nonsemantic features in a system and method for conducting a search
US6954764B2 (en) Region modeling of mobile services
US7921108B2 (en) User interface and method in a local search system with automatic expansion
EP2592885B1 (en) System and method for acquiring statistics of navigation information
EP2518642A1 (en) Method and terminal device for updating word stock
WO2016127879A1 (zh) 一种确定热点区域的方法和装置
US20090132645A1 (en) User interface and method in a local search system with multiple-field comparison
CN104462430A (zh) 关系型数据库的数据处理方法及装置
Jensen Research Challenges in Location-enabled M-services
KR101757124B1 (ko) 시공간 키워드 질의를 위한 셀 기반 역리스트 인덱싱 기법
Marsit et al. Query processing in mobile environments: A survey and open problems
KR100461020B1 (ko) 이동객체 데이터베이스에 대한 질의처리 시스템
Abbasifard et al. Efficient indexing for past and current position of moving objects on road networks
KR101523192B1 (ko) 소셜 검색 시스템 및 기법
CN106649489B (zh) 一种地理文本信息数据中的连续skyline查询处理机制
CN110263108B (zh) 一种基于道路网的关键词Skyline模糊查询方法及系统
Ku et al. Geo-Store: A framework for supporting semantics-enabled location-based services
KR101966928B1 (ko) 이동객체 시공간정보의 고속분산처리를 위한 색인 및 저장 시스템
US20090132485A1 (en) User interface and method in a local search system that calculates driving directions without losing search results
JP7116948B2 (ja) 検索装置、検索方法、およびプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121129

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131128

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151127

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20161121

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20171201

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20181025

Year of fee payment: 15