KR100931310B1 - Integrated continuous query processing device and user method using user-defined shared extended trigger - Google Patents

Integrated continuous query processing device and user method using user-defined shared extended trigger Download PDF

Info

Publication number
KR100931310B1
KR100931310B1 KR1020070123489A KR20070123489A KR100931310B1 KR 100931310 B1 KR100931310 B1 KR 100931310B1 KR 1020070123489 A KR1020070123489 A KR 1020070123489A KR 20070123489 A KR20070123489 A KR 20070123489A KR 100931310 B1 KR100931310 B1 KR 100931310B1
Authority
KR
South Korea
Prior art keywords
trigger
user
result
integrated continuous
continuous query
Prior art date
Application number
KR1020070123489A
Other languages
Korean (ko)
Other versions
KR20080051068A (en
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 한국전자통신연구원
Publication of KR20080051068A publication Critical patent/KR20080051068A/en
Application granted granted Critical
Publication of KR100931310B1 publication Critical patent/KR100931310B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Abstract

본 발명은 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치 및 그 방법에 관한 것으로, 사용자 정의 공유 트리거를 이용한 저장 데이터에 대한 다중 통합 연속 질의 처리 시, 각각의 통합 연속 질의에서 사용되는 사용자 정의 공유 트리거 결과에 대한 질의를 사용자 정의 공유 확장 트리거로 등록하여 사용자 정의 공유 트리거 결과 전체를 검색하지 않고 사용자 정의 공유 확장 트리거 결과를 검색하여 통합 연속 질의를 처리함으로써, 질의 처리에 소요되는 시간을 감소시켜 질의 처리 성능을 향상시키기 위한, 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치 및 그 방법을 제공하고자 한다.The present invention relates to an integrated continuous query processing apparatus and method using a user-defined shared extended trigger, and to a user-defined shared used in each integrated continuous query when processing multiple integrated continuous queries on stored data using a user-defined shared trigger. By registering a query for the trigger result as a user-defined shared extension trigger, instead of searching the entire user-defined shared trigger result, the user can search the user-defined shared extended trigger result and process the integrated continuous query, thereby reducing the time required to process the query. To improve processing performance, an integrated continuous query processing apparatus using a user-defined shared extended trigger and a method thereof are provided.

이를 위하여, 본 발명은 통합 연속 질의 처리장치에 있어서, 데이터 스트림을 관리하기 위한 데이터 스트림 관리수단; 통합 연속 질의문을 분석하여 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 트리거 관리수단으로 알리기 위한 통합 연속 질의 관리수단; 상기 통합 연속 질의 관리수단으로부터의 알림 정보에 따라 상기 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)하기 위한 상기 트리거 관리수단; 상기 트리거 관리수단이 설정한 사용자 정의 공유 확장 트리거의 결과를 집합(트리거 결과 집합)으로 관리하기 위한 트리거 결과 관리수단; 및 상기 데이터 스트림 관리수단으로부터의 데이터 스트림과 상기 트리거 결과 관리수단으로부터의 트리거 결과 집합을 이용하여 통합 연속 질의를 처리하기 위한 통합 연속 질의 실행수단을 포함한다.To this end, the present invention provides an integrated continuous query processing apparatus comprising: data stream management means for managing a data stream; Integrated continuous query management means for analyzing the integrated continuous query statement and informing the trigger management means according to the query for the result of the user-defined shared trigger; The trigger management means for setting (registering) a user-defined shared extended trigger for the integrated continuous query statement according to the notification information from the integrated continuous query management means; Trigger result management means for managing the result of the user-defined shared extended trigger set by the trigger management means as a set (trigger result set); And integrated continuous query execution means for processing the integrated continuous query using the data stream from the data stream management means and the trigger result set from the trigger result management means.

Description

사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치 및 그 방법{Apparatus and method for processing integrated continuous query using user-defined shared extension trigger}Apparatus and method for processing integrated continuous query using user-defined shared extension trigger}

본 발명은 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치 및 그 방법에 관한 것으로, 더욱 상세하게는 사용자 정의 공유 트리거를 이용한 저장 데이터에 대한 다중 통합 연속 질의 처리 시, 각각의 통합 연속 질의에서 사용되는 사용자 정의 공유 트리거 결과에 대한 질의를 사용자 정의 공유 확장 트리거로 등록하여 사용자 정의 공유 트리거 결과 전체를 검색하지 않고 사용자 정의 공유 확장 트리거 결과를 검색하여 통합 연속 질의를 처리함으로써, 질의 처리에 소요되는 시간을 감소시켜 질의 처리 성능을 향상시키기 위한, 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치 및 그 방법에 관한 것이다.The present invention relates to an integrated continuous query processing apparatus and method using a user-defined shared extended trigger, and more particularly, to use in each integrated continuous query when processing multiple integrated continuous queries on stored data using a user-defined shared trigger. Time required to process a query by registering a query for the result of the user-defined shared trigger as a user-defined shared extension trigger and processing the integrated continuous query by searching the user-defined shared trigger result without searching the entire user-defined shared trigger result. The present invention relates to an integrated continuous query processing apparatus using a user-defined shared extended trigger and to a method for improving query processing performance.

본 발명은 정보통신부 및 정보통신연구진흥원의 IT신성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호 : 2005-S-405-02, 과제명 : 차세대 인터넷 서버 기술 개발].The present invention is derived from the research conducted as part of the IT new growth engine core technology development project of the Ministry of Information and Communication and the Ministry of Information and Communication Research and Development. [Task Management Number: 2005-S-405-02, Title: Development of Next Generation Internet Server Technology] .

유비쿼터스 컴퓨팅 환경에서는 무선인식(Radio Frequency IDentification), 지피에스(Global Positioning System), 다양한 센서(예 : 온도 센서, 습도 센서)와 각종 응용 프로그램으로부터 끊임없이 생성되는 데이터를 실시간으로 처리하기 위한 연속 질의 처리 기술이 필수적으로 요구되고 있다.In the ubiquitous computing environment, continuous query processing technology for real-time processing of data continuously generated from radio frequency identification, global positioning system, various sensors (e.g. temperature sensor, humidity sensor) and various applications is provided. It is required.

센서 네트워크를 예로 들어 살펴보면, 경량의 센서 노드들이 무선통신으로 연결되는 센서 네트워크는 사람이 감시할 수 없는 지역의 환경 감시, 집과 사무실 등의 자동화 및 방범, 건강 모니터링, 이동 물체에 대한 추적, 네트워크 모니터링, 물류/유통, 웹 로그 등과 같은 각종 유비쿼터스 환경을 위한 다양한 응용 서비스들을 제공할 수 있다.Taking a sensor network as an example, the sensor network, where lightweight sensor nodes are connected by wireless communication, can be used to monitor environmental conditions in areas where humans cannot monitor, automation and security of homes and offices, health monitoring, tracking of moving objects, and networks. Various application services for various ubiquitous environments such as monitoring, logistics / distribution, web logs, etc. can be provided.

여기서, 상기와 같은 각종 응용 서비스를 위해 처리되는 데이터는 연속적으로 끊임없이 생성되고, 생성되는 데이터의 양이 시시각각 변하므로 실시간으로 처리해야 하는 특성이 있다.In this case, the data processed for the various application services as described above is continuously generated, and since the amount of the generated data is changed at any time, there is a characteristic to be processed in real time.

아울러, 유비쿼터스 컴퓨팅 환경에서는 실시간 상황 인식을 위하여, 사용자 또는 애플리케이션에 의해 등록된 연속 질의(continuous query)를 처리하는 연속 질의 처리장치에서 데이터 스트림뿐만 아니라 관련 정보 혹은 이력 정보와 같은 저장 데이터를 포함한 통합 연속 질의 처리에 대한 요구가 높아지고 있다. In addition, in a ubiquitous computing environment, a continuous query including a data stream as well as stored data such as related information or history information in a continuous query processing device that processes a continuous query registered by a user or an application for real time situation recognition. There is an increasing demand for query processing.

그러나, 유비쿼터스 컴퓨팅 환경하에서 실시간으로 입력되는 데이터 스트림에 대한 분석만으로는 현 상황에 대한 이해 및 판단이 부정확할 수도 있다. 즉, 과거 이력 또는 관련된 정보를 기반으로 하는 통합 분석이 이뤄져야 보다 정확하고 부가가치가 높은 정보를 획득할 수 있다. However, analysis and analysis of data streams input in real time under ubiquitous computing environments may lead to inaccurate understanding and judgment of the current situation. In other words, integrated analysis based on past history or related information should be performed to obtain more accurate and high value-added information.

그에 따라 연속 질의 처리장치는 연속 질의를 통해 사용자, 애플리케이션으로 고부가가치의 정보를 제공하기 위하여 실시간으로 입력되는 데이터 스트림뿐만 아니라, 일정한 저장소의 히스토리컬 데이터 혹은 관련된 데이터를 포함한 통합 질의(통합 연속 질의)를 지원하고 있다.Accordingly, the continuous query processing unit integrates historical data or related data in a certain repository as well as data streams input in real time to provide high value information to users and applications through continuous queries (integrated continuous queries). Is supported.

그런데, 지금까지 대부분의 연구 및 개발은 지속적으로 입력되는 데이터 스트림에 대해서는 푸쉬 기반(push-based) 접근 방식을 채택하고, 데이터베이스의 저장 데이터에 대해서는 풀 기반(pull-based) 접근 방식을 채택하여 이를 결합하여 통합 질의에 대한 처리를 수행하였다. However, until now, most research and development have adopted a push-based approach to continuously input data streams and a pull-based approach to stored data in a database. Combined, the integrated query was processed.

그에 따라 실시간으로 통합 질의의 처리 결과를 전달해야 하는 데이터 스트림 관리 시스템에서는 데이터베이스의 저장 데이터에 대한 질의 처리 소요 시간이 데이터 스트림에 대한 질의 처리 소요 시간보다 길어 전체 통합 질의 처리 시 그 질의 성능이 떨어지는 문제점이 있었다.Accordingly, in the data stream management system that needs to deliver the result of the integrated query in real time, the query processing time for the stored data of the database is longer than the query processing time for the data stream. There was this.

즉, 종래 기술에 따른 연속 질의 처리장치의 경우 데이터베이스의 저장 데이터가 변동되었는지의 여부를 알지 못해 매번 데이터베이스와 연결된 후에 질의를 수행하는 풀 기반(pull-based) 접근 방식을 취함으로써, 데이터베이스의 저장 데이터에 대한 질의 처리 시 소요 시간이 길어 전체 질의 성능을 떨어뜨리는 문제점이 있었다.That is, the continuous query processing apparatus according to the prior art takes a pull-based approach to perform a query after each connection with a database without knowing whether or not the stored data of the database has changed, thereby storing the stored data of the database. Due to the long time required for query processing, there is a problem of degrading the overall query performance.

이하, 저장 데이터의 질의 성능을 향상시키기 위한 종래의 기술에 대해 살펴보기로 한다.Hereinafter, a conventional technique for improving query performance of stored data will be described.

제 1 종래의 기술은, 질의 결과의 변경을 지원하기 위하여 초기 질의 결과의 변경을 추적할 일부 데이터를 위한 질의를 이용하여 초기 질의를 변형한 후, 변경 추적과 상관없는 나머지 초기 질의 결과와 새로 변형한 질의를 처리하여 얻어진 최신 질의 결과를 조합하여 데이터 변경이 반영된 초기 질의의 최신 결과를 생성한다. 즉, 초기 질의 결과를 모두 검색하지 않고 일부 지정된 결과의 최신 변경만을 반영토록 하여 초기 질의의 최신 결과를 제공한다. The first conventional technique is to modify an initial query using a query for some data that will track the change in the initial query result to support a change in the query result, and then newly transform it with the rest of the initial query result not related to change tracking. The latest query result obtained by processing a query is combined to generate the latest result of the initial query reflecting the data change. In other words, instead of retrieving all the initial query results, only the latest changes of some specified results are reflected to provide the latest results of the initial query.

이러한 제 1 종래의 기술은 추후 변경될 데이터를 사용자 혹은 응용 프로그램이 지정함으로써 그 기술 적용이 한정되는 문제점이 있다.The first conventional technology has a problem in that the application of the technology is limited by designating data to be changed later by a user or an application program.

제 2 종래의 기술은, 한 개 이상의 데이터 저장소로부터 발생하는 핵심어(keyword) 검색 능력을 강화하기 위한 기술로, 초기 질의 결과로부터 파일 인자 및 유형(타입)을 추출하여 2차 검색 결과를 발생시켜 1차 질의 결과를 보강한 추가 검색, 행동, 정보로서 분류한다.The second conventional technique is a technique for enhancing a keyword search capability generated from one or more data stores, and extracts a file argument and a type (type) from an initial query result to generate a second search result. Classify the results as additional retrieval, actions, and information that augment the results.

이러한 제 2 종래의 기술은 초기 질의 결과로부터 초기 질의를 보강한 2차 검색 질의 결과를 생성하는 기술로, 질의 대상이 되는 데이터가 변경되지 않아야 한다는 제약이 있다.The second conventional technique is a technique of generating a second search query result that reinforces the initial query from the initial query result, and has a limitation that data to be queried should not be changed.

제 3 종래의 기술은, 관계형 데이터베이스에서 반복적으로 수행되는 질의 처리의 최적화를 위하여 트리거가 데이터베이스의 변경을 인지하면 데이터 처리 엔진이 관계형 데이터베이스를 대상으로 질의를 재수행하고 해당 질의 결과는 동일한 질의 수행에 한하여 재사용되도록 함으로써, 관계형 데이터베이스에서 반복적으로 수행되는 질의를 최적화할 수 있는 효과가 있다. 이때, 트리거는 데이터베이스의 변경 감지의 역할만을 수행한다.In the third conventional technique, when a trigger detects a change in a database to optimize a query processing repeatedly performed in a relational database, the data processing engine re-executes the query for the relational database and the result of the query is limited to executing the same query. By reusing it, you can optimize queries that are executed repeatedly in a relational database. At this time, the trigger only plays a role of detecting change of the database.

이러한 제 3 종래의 기술은 트리거가 데이터베이스의 변경 감지 역할만을 수행하기 때문에 데이터 변경 시에 질의를 처리하는 시간은 단축되지 않는다는 문제점이 있다.This third conventional technique has a problem that the time for processing a query is not shortened when data is changed because the trigger only plays a role of detecting a change of the database.

제 4 종래의 기술은, 데이터 스트림과 저장 데이터에 대한 통합 질의를 수행하는 데이터 스트림 관리 시스템에 관한 논문으로, 저장 데이터의 샘플링을 통한 저장 데이터에 대한 I/O 비용을 감소시킴으로써 통합 연속 질의 처리 성능을 향상시킨다.The fourth prior art is a paper on a data stream management system for performing an integrated query on a data stream and stored data, and the integrated continuous query processing performance by reducing the I / O cost for the stored data through sampling of the stored data. To improve.

이러한 제 4 종래의 기술은 저장 데이터에 대한 질의 처리 성능을 향상시키기 위하여 샘플링을 수행함으로써, 실제 질의 대상 자체를 축소시키는 문제점이 있다.This fourth conventional technique has a problem of reducing the actual query subject itself by performing sampling to improve query processing performance for stored data.

결국, 상기와 같은 종래 기술은 데이터베이스 상의 데이터 변경시 데이터베이스별 소정의 사용자 정의 공유 트리거만 수행하기 때문에 사용자 정의 공유 트리거의 결과에 대한 질의 요구시 전체 사용자 정의 공유 트리거 결과 집합을 검색해야 하므로, 사용자의 다양한 요구 정보를 단시간에 제공할 수 없는 문제점이 있고, 아울러, 방대한 종류의 사용자 요구 상세정보를 단시간에 제공하기 위해 일일이 사용자 정의 공유 확장 트리거로 설정하는 것은 많은 시간을 소요하는 문제점을 유발 하는 문제점이 있으며, 이러한 문제점을 해결하고자 하는 것이 본 발명의 과제이다.As a result, since the above conventional technology performs only a predetermined user-defined shared trigger for each database when data is changed on the database, the entire user-defined shared trigger result set must be retrieved when a query for the result of the user-defined shared trigger is requested. There is a problem that can not provide a variety of request information in a short time, and setting a user-defined shared extended trigger to provide a large amount of user request details in a short time is a problem that takes a lot of time And, to solve this problem is a problem of the present invention.

본 발명은, 사용자 정의 공유 트리거를 이용한 저장 데이터에 대한 다중 통합 연속 질의 처리 시, 각각의 통합 연속 질의에서 사용되는 사용자 정의 공유 트리거 결과에 대한 질의를 사용자 정의 공유 확장 트리거로 등록하여 사용자 정의 공유 트리거 결과 전체를 검색하지 않고 사용자 정의 공유 확장 트리거 결과를 검색하여 통합 연속 질의를 처리함으로써, 질의 처리에 소요되는 시간을 감소시켜 질의 처리 성능을 향상시키기 위한, 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치 및 그 방법을 제공하는데 그 목적이 있다.The present invention, when processing a multi-integrated continuous query for the stored data using a user-defined shared trigger, by registering a query for a user-defined shared trigger result used in each integrated continuous query as a user-defined shared extended trigger user-defined shared trigger Integrated continuous query processing using user-defined shared extended triggers to improve query processing performance by reducing the time required for query processing by retrieving user-defined shared extended trigger results without processing the entire result. It is an object of the present invention to provide an apparatus and a method thereof.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned above can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Also, it will be readily appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

상기 목적을 달성하기 위한 본 발명의 장치는, 통합 연속 질의 처리장치에 있어서, 데이터 스트림을 관리하기 위한 데이터 스트림 관리수단; 통합 연속 질의문을 분석하여 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 트리거 관리수단으로 알리기 위한 통합 연속 질의 관리수단; 상기 통합 연속 질의 관리 수단으로부터의 알림 정보에 따라 상기 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)하기 위한 상기 트리거 관리수단; 상기 트리거 관리수단이 설정한 사용자 정의 공유 확장 트리거의 결과를 집합(트리거 결과 집합)으로 관리하기 위한 트리거 결과 관리수단; 및 상기 데이터 스트림 관리수단으로부터의 데이터 스트림과 상기 트리거 결과 관리수단으로부터의 트리거 결과 집합을 이용하여 통합 연속 질의를 처리하기 위한 통합 연속 질의 실행수단을 포함한다.An apparatus of the present invention for achieving the above object comprises: an integrated continuous query processing apparatus, comprising: data stream management means for managing a data stream; Integrated continuous query management means for analyzing the integrated continuous query statement and informing the trigger management means according to the query for the result of the user-defined shared trigger; The trigger management means for setting (registering) a user-defined shared extended trigger for the integrated continuous query statement according to the notification information from the integrated continuous query management means; Trigger result management means for managing the result of the user-defined shared extended trigger set by the trigger management means as a set (trigger result set); And integrated continuous query execution means for processing the integrated continuous query using the data stream from the data stream management means and the trigger result set from the trigger result management means.

또한, 상기 목적을 달성하기 위한 본 발명의 방법은, 통합 연속 질의 처리방법에 있어서, 데이터 스트림을 입력받는 단계; 외부의 애플리케이션으로부터 입력받은 통합 연속 질의문을 분석하여 사용자 정의 공유 트리거의 결과에 대한 질의를 포함하는지 확인하는 확인단계; 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 상기 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)하는 등록단계; 및 상기 데이터 스트림과 해당 사용자 정의 공유 확장 트리거 결과를 이용하여 통합 연속 질의를 처리하는 단계를 포함한다.In addition, the method of the present invention for achieving the above object, the integrated continuous query processing method, comprising: receiving a data stream; A verification step of analyzing an integrated continuous query received from an external application and including a query for a result of a user-defined shared trigger; A registration step of setting (registering) a user-defined shared extended trigger for the integrated continuous query statement according to a query for a result of a user-defined shared trigger; And processing an integrated continuous query using the data stream and the corresponding user-defined shared extended trigger result.

또한, 본 발명은 연속적으로 입력되는 데이터 스트림과 데이터베이스의 저장 데이터를 처리하기 위한 사용자 정의 공유 트리거 기반 통합 연속 질의 처리 시스템에서, 사용자 정의 공유 트리거 결과에 대한 질의 처리 성능을 향상시키기 위하여, 사용자 정의 공유 트리거에 대한 질의를 확장 트리거로 등록하여 처리한다.In addition, the present invention provides a user-defined sharing in order to improve the query processing performance for the user-defined shared trigger results in the integrated continuous query processing system for processing the user-defined shared trigger for processing the data stream and the data stored in the database continuously input Register and process a query for a trigger as an extended trigger.

또한, 본 발명은 사용자 정의 공유 트리거를 이용한 데이터 스트림과 저장 데이터의 통합 연속 질의 처리 시스템에서 등록된 통합 연속 질의를 수행하는데 있어서, 사용자 정의 공유 트리거의 결과 전체를 검색하지 않고 통합 연속 질의 구문 에 정의된 사용자 정의 공유 확장 트리거 결과를 이용하여 질의를 처리한다.In addition, the present invention, when performing the integrated continuous query registered in the integrated continuous query processing system of the data stream and the stored data using the user-defined shared trigger, it is defined in the integrated continuous query syntax without searching the entire result of the user-defined shared trigger The query is processed using the customized shared extension trigger result.

또한, 본 발명은 연속적으로 입력되는 데이터 스트림과 메인 메모리 데이터베이스에 관리되는 저장 데이터를 대상으로 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리 시, 사용자 정의 공유 트리거 결과에 대한 질의 처리에 소요되는 시간을 감소시킨다. In addition, the present invention, when the integrated continuous query processing using the user-defined shared extended trigger for the data stream continuously input and the stored data managed in the main memory database, the time required for processing the query for the user-defined shared trigger result Decrease.

또한, 본 발명은 보통 다중 통합 연속 질의가 사용자 정의 공유 트리거 결과를 공유하여 정의되나, 각각의 통합 연속 질의가 필요로 하는 저장 데이터는 그 일부에 불과함을 감안하여, 사용자 정의 공유 트리거 결과에 대한 질의를 사용자 정의 공유 확장 트리거로 등록함으로써, 저장 데이터에 대한 질의 처리 소요 시간을 단축하여 통합 질의 처리 성능을 높인다. In addition, the present invention is generally defined by sharing a user-defined shared trigger result of multiple integrated continuous queries, but the stored data required for each integrated continuous query is only a part, By registering the query as a user-defined shared extension trigger, the query processing time for the stored data can be shortened to improve the integrated query processing performance.

또한, 본 발명은 사용자 정의 공유 트리거를 이용한 저장 데이터에 대한 다중 통합 연속 질의를 실시간으로 처리할 때, 각각의 통합 연속 질의에서 사용되는 사용자 정의 공유 트리거 결과에 대한 질의를 사용자 정의 공유 확장 트리거로 등록하여 사용자 정의 공유 트리거 결과 전체를 검색하지 않음으로써, 질의 처리 성능을 향상시킨다.In addition, the present invention registers a query for a user-defined shared trigger result used in each integrated continuous query as a user-defined shared extended trigger when processing multiple unified continuous queries on stored data using a user-defined shared trigger in real time. Improve query processing performance by not searching the entire user-defined shared trigger result.

상기와 같은 본 발명은, 사용자 정의 공유 트리거를 이용한 저장 데이터에 대한 다중 통합 연속 질의 처리 시, 각각의 통합 연속 질의에서 사용되는 사용자 정의 공유 트리거 결과에 대한 질의를 사용자 정의 공유 확장 트리거로 등록하여 사용자 정의 공유 트리거 결과 전체를 검색하지 않고 사용자 정의 공유 확장 트리거 결과를 검색하여 통합 연속 질의를 처리함으로써, 질의 처리에 소요되는 시간을 감소시켜 질의 처리 성능을 향상시킬 수 있는 효과가 있다.In the present invention as described above, when processing a multi-integrated continuous query for the stored data using a user-defined shared trigger, by registering a query for a user-defined shared trigger result used in each integrated continuous query as a user-defined shared extended trigger user By retrieving the user-defined shared extended trigger result without processing the entire definition shared trigger result and processing the integrated continuous query, the query processing performance can be improved by reducing the time required for query processing.

또한, 본 발명은, 데이터 스트림에 대한 사용자 정의 공유 트리거를 이용한 연속 질의 처리 시스템에서, 데이터 스트림 및 메인 메모리 데이터베이스의 저장 데이터에 대한 통합 연속 질의 처리 시에 사용자 정의 공유 트리거 결과에 대한 질의 결과를 사전에 산출하고 여러 통합 연속 질의에서 공유함으로써, 전체 통합 질의 처리 성능을 향상시킬 수 있는 효과가 있다.In addition, the present invention, in the continuous query processing system using a user-defined shared trigger for the data stream, advance query results for the user-defined shared trigger results in the integrated continuous query processing for the stored data of the data stream and the main memory database It is possible to improve the overall integrated query processing performance by calculating and sharing it among multiple integrated continuous queries.

또한, 본 발명은, 메인 메모리 데이터베이스에 사용자 정의 공유 트리거의 결과에 대한 변경이 발생할 때마다 사용자 정의 공유 확장 트리거의 트리거 문을 실시간으로 수행하여 그 결과 집합을 미리 산출해서 통합 연속 질의에서 사용자 정의 공유 트리거 결과 전체를 검색하지 않고 지정된 일부 결과 데이터를 바로 접근할 수 있도록 하고, 여러 통합 연속 질의에서 공유하도록 함으로써, 통합 연속 질의 처리 시간을 줄여 전체 질의 성능을 향상시킬 수 있는 효과가 있다.In addition, the present invention, when a change to the result of the user-defined shared trigger in the main memory database occurs, the trigger statement of the user-defined shared extended trigger in real time to calculate the result set in advance to the user-defined shared in the integrated continuous query By directly accessing some designated result data without searching the entire trigger result and sharing it among several integrated continuous queries, the overall query performance can be improved by reducing the integrated continuous query processing time.

상술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되어 있는 상세한 설명을 통하여 보다 명확해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대 한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.The above objects, features, and advantages will become more apparent from the detailed description given hereinafter with reference to the accompanying drawings, and accordingly, those skilled in the art to which the present invention pertains may share the technical idea of the present invention. It will be easy to implement. In addition, in describing the present invention, when it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

이하의 상세한 설명에서는, 인터넷 및 애플리케이션 사이에 전달되는 데이터가 엑스엠엘(XML: eXtensible Markup Language, 이하 XML이라고 함) 형식을 따르는 점에 착안하여, XML 데이터 스트림과 XML 데이터베이스를 예로 들어 설명하기로 한다.In the following detailed description, an XML data stream and an XML database will be described by taking into consideration that data transmitted between the Internet and an application conforms to the XML (eXtensible Markup Language, XML) format. .

도 1 은 본 발명에 따른 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리 장치의 일실시예 구성도이다.
도 1의 구성도를 살펴보기에 앞서, 사용자 정의 공유 트리거와 사용자 정의 공유 확장 트리거에 대해 설명하기로 한다. 사용자 정의 공유 트리거란, 데이터 베이스에 저장된 데이터의 삽입, 업데이트, 삭제 등의 변경이 발생할 때마다 사용자가 정의한 질의(검색)를 수행하는 트리거이다. 또한, 사용자 정의 공유 확장 트리거는 사용자 정의 공유 트리거로부터 발생하는 검색 결과의 변경을 감지하여, 사용자 정의 공유 트리거 결과의 일부 데이터에 대한 검색 질의를 자동으로 수행하는 트리거이다.
1 is a block diagram of an integrated continuous query processing apparatus using a user-defined shared extended trigger according to the present invention.
Before looking at the configuration diagram of FIG. 1, the user-defined sharing trigger and the user-defined sharing extended trigger will be described. A user-defined shared trigger is a trigger that executes a user-defined query (search) whenever a change such as inserting, updating, or deleting data stored in a database occurs. In addition, the user-defined shared extended trigger is a trigger that detects a change in the search result generated from the user-defined shared trigger and automatically performs a search query for some data of the user-defined shared trigger result.

도 1에 도시된 바와 같이, 본 발명에 따른 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리 장치는, 외부의 다양한 XML 데이터 스트림 소스로부터 연속적으로 입력받는 XML 데이터 스트림을 관리하기 위한 데이터 스트림 관리기(11), 외부의 애플리케이션으로부터의 통합 연속 질의문을 관리하고, 이의 분석 결과 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 트리거 관리기(13)로 알리기 위한 통합 연속 질의 관리기(12), 상기 통합 연속 질의 관리기(12)로부터의 알림 정보에 따라 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)하기 위한 트리거 관리기(13), 상기 트리거 관리기(13)가 설정한 사용자 정의 확장 트리거의 결과를 집합(트리거 결과 집합)으로 관리하기 위한 트리거 결과 관리기(14), 및 상기 데이터 스트림 관리기(11)로부터의 XML 데이터 스트림과 상기 트리거 결과 관리기(14)로부터의 트리거 결과 집합을 이용하여 상기 통합 연속 질의를 처리한 후, 그 결과를 외부의 애플리케이션으로 전달하기 위한 통합 연속 질의 실행기(15)를 포함한다.As illustrated in FIG. 1, an integrated continuous query processing apparatus using a user-defined shared extended trigger according to the present invention includes a data stream manager 11 for managing an XML data stream continuously input from various external XML data stream sources. ), An integrated continuous query manager 12 for managing an integrated continuous query statement from an external application, and notifying the trigger manager 13 according to its analysis result including a query for the result of a user-defined shared trigger. Trigger manager 13 for setting (registering) a user-defined shared extended trigger for the integrated continuous query statement according to the notification information from the query manager 12, and the result of the user-defined extended trigger set by the trigger manager 13 A trigger result manager 14 for managing the data as a set (trigger result set), and the data An integrated continuous query executor for processing the integrated continuous query using the XML data stream from the stream manager 11 and the trigger result set from the trigger result manager 14 and then passing the result to an external application. 15).

여기서, 상기 통합 연속 질의 관리기(12)는 통합 연속 질의 등록 및 삭제 기능을 제공하는 구성 요소로서, 통합 연속 질의 등록 시에 상기 통합 연속 질의의 구문 분석 및 정당성 검사를 수행하며, 정당성 검사 과정에서 통합 연속 질의에 사용자 정의 공유 트리거의 결과에 대한 질의를 포함하는 경우, 사용자 정의 공유 확장 트리거로 등록되어 있는지 트리거 관리기(13)를 통해 확인하여, 등록되어 있지 않으면 트리거 관리기(13)로 등록을 요청한다. 아울러, 통합 연속 질의 삭제 시에는 트리거 등록 여부를 검사하고 이에 따른 작업을 수행한다. Here, the integrated continuous query manager 12 is a component that provides a function of registering and deleting an integrated continuous query. When the integrated continuous query is registered, the integrated continuous query manager 12 performs parsing and validity checking of the integrated continuous query and integrates it in the validity checking process. When the query for the result of the user-defined shared trigger is included in the continuous query, the trigger manager 13 checks whether it is registered as the user-defined shared extended trigger and requests registration to the trigger manager 13 if it is not registered. . In addition, when deleting the integrated continuous query, the trigger is registered and its operation is performed.

또한, 상기 트리거 관리기(13)는 트리거 등록 및 삭제 기능을 제공하는 구성 요소로서, 사용자 정의 공유 확장 트리거 등록 시에 구문 분석 및 정당성 검사를 수행하고, 트리거의 생성에 따른 작업을 수행하여 통합 연속 질의 실행기(15)를 위한 환경을 구축한다. 아울러, 사용자 정의 공유 확장 트리거 삭제 시에는 사용자 정의 공유 확장 트리거를 사용하는 통합 연속 질의의 존재 여부를 검사하고 이에 따른 작업을 수행한다.In addition, the trigger manager 13 is a component that provides a trigger registration and deletion function, performs parsing and validity check when registering a user-defined shared extended trigger, and performs an operation according to generation of a trigger to integrate a continuous query. Build an environment for the executor 15. In addition, when the user-defined shared extended trigger is deleted, the existence of an integrated continuous query using the user-defined shared extended trigger is checked and the corresponding operation is performed.

또한, 상기 트리거 관리기(13)는 엑스쿼리(XQuery) 구문 구조를 따르는 XML 트리거를 XML 메인 메모리 데이터베이스의 내부에 등록함으로써, 트리거 결과 관리기(14)는 XML 데이터의 추가, 변경 및 삭제에 따라 자동으로 기 등록된 XML 트리거 수행 결과를 전달받는다.In addition, the trigger manager 13 registers an XML trigger that conforms to an XQuery syntax structure in the XML main memory database, so that the trigger result manager 14 automatically generates an XML data according to addition, change, and deletion. Receives the result of registered XML trigger execution.

또한, 상기 트리거 결과 관리기(14)는 추후 트리거 관리기(13)로부터의 요청 에 따라 해당 트리거 결과(사용자 정의 공유 트리거 또는 사용자 정의 공유 확장 트리거)를 검색하여 통합 연속 질의 실행기(15)로 전달한다.In addition, the trigger result manager 14 retrieves the corresponding trigger result (user-defined shared trigger or user-defined shared extended trigger) according to a request from the trigger manager 13 and delivers the result to the integrated continuous query executor 15.

또한, 상기 트리거 결과 관리기(14)는 통합 연속 질의 처리 시스템과 연동 되어 있는 하나 이상의 XML 메인 메모리 데이터베이스로부터 실시간으로 각 저장 데이터에 대한 XML 트리거 수행 결과를 전달받는다. 이를 위해, 트리거 관리기(13)는 사용자 정의 공유 트리거 및 사용자 정의 공유 확장 트리거를 해당 XML 메인 메모리 데이터베이스에 XML 트리거로서 등록함으로써, XML 데이터베이스의 내부 데이터에 변경이 발생할 때마다 상기 등록된 XML 트리거가 자동으로 수행되도록 한다. 수행 결과는 트리거 결과 관리기(14)로 실시간 전달되어, 통합 연속 질의 처리 시에 이미 질의 처리가 완료된 결과를 참조할 수 있도록 한다. In addition, the trigger result manager 14 receives an XML trigger execution result for each stored data in real time from one or more XML main memory databases linked to the integrated continuous query processing system. To this end, the trigger manager 13 registers a user-defined shared trigger and a user-defined shared extended trigger as an XML trigger in the corresponding XML main memory database so that the registered XML trigger is automatically generated whenever a change occurs in the internal data of the XML database. To be performed. The execution result is transmitted to the trigger result manager 14 in real time, so that the integrated query can refer to the result of the query processing already completed.

또한, 통합 연속 질의 실행기(15)는, 데이터 스트림 관리기(11)로부터 XML 데이터 스트림을 전달받고, 트리거 결과 관리기(14)로부터 저장 데이터에 대한 트리거 결과 집합을 전달받아, 이를 참조하여 상기 XML 데이터 스트림 및 저장 데이터에 대한 통합 연속 질의를 처리한 후, 그 결과를 외부의 애플리케이션으로 전달한다.In addition, the integrated continuous query executor 15 receives the XML data stream from the data stream manager 11, receives a trigger result set for the stored data from the trigger result manager 14, and refers to the XML data stream with reference thereto. And after processing the integrated continuous query for the stored data, and passes the result to the external application.

본 발명은 외부의 무선 인식 센서(RFID sensor)를 포함하는 다양한 센서, 애플리케이션 등의 XML 데이터 스트림 소스로부터 끊임없이 XML 데이터 스트림을 입력받고, XML 트리거를 지원하는 하나 이상의 XML 데이터베이스와 연동하여 저장 데이터에 대한 접근이 가능하다. The present invention continuously receives XML data streams from XML data stream sources such as various sensors and applications including an external RFID sensor, and works with one or more XML databases supporting XML triggers to store data. Accessible.

또한, 본 발명은 입력받은 XML 데이터 스트림과 XML 데이터베이스(108)의 저 장 데이터에 대하여 통합 연속 질의 처리를 수행하고, 그로부터 발생하는 결과를 다른 애플리케이션으로 실시간 전달한다. In addition, the present invention performs integrated continuous query processing on the received XML data stream and the stored data of the XML database 108, and delivers the results generated therein to other applications in real time.

Figure 112007086524286-pat00001
Figure 112007086524286-pat00001

이하, 상기 [표 1]을 참조하여 사용자 정의 공유 확장 트리거로 설정되는 통합 연속 질의문에 대해 살펴보기로 한다.Hereinafter, an integrated continuous query statement set as a user-defined shared extended trigger will be described with reference to [Table 1].

통합 연속 질의문은 엑스쿼리를 바탕으로 "FLWOR" 절을 구성할 수 있고, "USING" 절은 일반적인 엑스쿼리가 문서를 바탕으로 이루어지는 반면, 통합 연속 질의 처리 장치는 데이터 소스를 기반으로 이루어지므로 이를 위하여 확장한 것이다. 각 데이터 소스는 이름을 이용하여 구분 가능하며, 이름을 통해 데이터 스트림 소스인지 혹은 XML 데이터베이스의 저장 데이터 소스인지 알 수 있다. Integrated continuous query statements can construct a "FLWOR" clause based on an Ex Query, while a "USING" clause is based on a document while a typical Ex Query is based on a document. To expand. Each data source can be identified by its name, and the name indicates whether it is a data stream source or a stored data source in an XML database.

상기 통합 질의문의 내용을 살펴보면, "DataStreamSource"로부터 입력되는 데이터 스트림으로부터 "/Building/Room/Temperature"의 값이 사용자 정의 공유 트리거 T1의 결과에서 "/Buildging/lobby/avgTemperature"의 값, 즉 최근까지 XML 데이터베이스에 저장되어 있는 건물의 로비 평균 온도 값보다 큰 경우에 방 번호와 현재 온도를 "<REPORT>"란 엘리먼트를 생성하여 전달해 달라는 내용이다.Looking at the contents of the integrated query statement, the value of "/ Building / Room / Temperature" from the data stream input from "DataStreamSource" is the value of "/ Buildging / lobby / avgTemperature" in the result of the user-defined sharing trigger T1, that is, until recently If the building's lobby average temperature value is stored in the XML database, the room number and current temperature will be created by passing an element called "<REPORT>".

여기서, 사용자 정의 공유 트리거는 트리거 이름과 트리거 문장을 받아 등록되며, 이후 uc:trigger() 함수에서 트리거 이름을 참조함으로써 여러 통합 연속 질의에서 공유하여 사용할 수 있도록 한다. In this case, the user-defined shared trigger is registered by receiving the trigger name and the trigger statement. After that, the trigger name is referred to in the uc: trigger () function so that it can be shared and used in multiple continuous queries.

이때, uc:trigger() 함수에서 네임스페이스 접두어인 uc는 네임스페이스 URI인 'http://ubicore.etri.re.kr/xquery-functions'에 바인딩되며, 상기의 네임스페이스를 통해 본 발명은 W3C의 XQuery에서 정의되지 않은 고유의 XQuery 함수들을 정의하여 제공한다. At this time, the namespace prefix uc in the uc: trigger () function is bound to the namespace URI 'http://ubicore.etri.re.kr/xquery-functions', and the present invention uses the W3C through the namespace. Defines and provides unique XQuery functions which are not defined in XQuery.

도 2 는 본 발명에 따른 사용자 정의 공유 트리거를 이용한 통합 연속 질의 처리 방법에 대한 일실시예 흐름도이다.2 is a flowchart illustrating an integrated continuous query processing method using a user-defined sharing trigger according to the present invention.

먼저, 외부의 다양한 XML 데이터 스트림 소스로부터 XML 데이터 스트림을 입력받는다(201). First, an XML data stream is input from various external XML data stream sources (201).

이후, 외부의 애플리케이션으로부터 입력받은 통합 연속 질의문을 분석하여 사용자 정의 공유 트리거의 결과에 대한 질의를 포함하는지 확인한다(202).Thereafter, the integrated continuous query received from an external application is analyzed to determine whether the query includes the query for the result of the user-defined shared trigger (202).

이후, 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)한다(203). 이때, 사용자 정의 공유 트리거의 결과에 대한 질의를 포함하지 않으면 사용자 정의 공유 확장 트리거를 생성하지 않는다. 아울러, 상기 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거가 이미 존재하는 경우에도 생성하지 않는다. 다만, 사용자 수 정보를 1 증가시킨다.Thereafter, the user-defined shared extended trigger for the integrated continuous query statement is set (registered) as including the query for the result of the user-defined shared trigger (203). At this time, if the query for the result of the user-defined shared trigger is not included, the user-defined shared extended trigger is not generated. In addition, even if a user-defined shared extension trigger for the integrated continuous query already exists, it is not generated. However, the number of users is increased by one.

이후, 상기 XML 데이터 스트림과 해당 트리거 결과를 이용하여 상기 통합 연속 질의를 처리한다(204).Thereafter, the integrated continuous query is processed using the XML data stream and the corresponding trigger result (204).

이후, 상기 처리한 결과를 외부의 애플리케이션으로 전달한다(205).Thereafter, the processed result is transmitted to an external application (205).

도 3 은 본 발명에 따른 통합 연속 질의 관리기에서의 통합 연속 질의 등록 과정에 대한 일실시예 상세 흐름도이다.3 is a detailed flowchart illustrating an integrated continuous query registration process in the integrated continuous query manager according to the present invention.

먼저, 입력받은 통합 연속 질의를 분석한다(301).First, the integrated continuous query received is analyzed (301).

이후, 상기 분석한 통합 연속 질의에 대하여 정당성 검사를 수행한다(302).Thereafter, a validity check is performed on the analyzed integrated continuous query (302).

이후, 정당성 여부를 판단한다(303). 이때, 정당성 검사는 구문 검사를 통해 질의하고자 하는 데이터 스트림 소스가 존재하는지의 여부, 트리거 결과 참조 함수의 인자가 등록된 사용자 정의 공유 트리거 이름인지의 여부, 데이터에 대한 지정이 유효한지의 여부 등을 검사한다. Then, it is determined whether or not the legitimacy (303). In this case, the validity check checks whether the data stream source to be queried through the syntax check exists, whether the argument of the trigger result reference function is a registered user-defined shared trigger name, whether the specification for the data is valid, etc. Check it.

상기 판단 결과(303), 정당한 통합 연속 질의가 아닐 경우에는 종료하고, 정당한 통합 연속 질의일 경우에는 통합 연속 질의문에서 사용자 정의 공유 트리거 결과 참조 함수를 사용하여 사용자 정의 공유 트리거 결과에 대한 질의를 포함하고 있는지 검사한다(304).In the determination result 303, if it is not a legitimate integrated continuous query, it terminates, and if it is a legitimate integrated continuous query, the query for the user-defined shared trigger result is included by using the user-defined shared trigger result reference function in the integrated continuous query. Check if it is (304).

상기 검사 결과(304), 사용자 정의 공유 트리거 결과에 대한 질의를 포함하고 있으면 트리거 관리기(13)에 이를 알린 후 통합 연속 질의 관련 메타데이터 정보를 저장한다(305, 306). 이때, 저장하는 정보는 통합 연속 질의, 사용자 정의 공유 트리거 및 사용자 정의 공유 확장 트리거 정보를 포함한다.If the check result 304 includes a query for a user-defined shared trigger result, the trigger manager 13 notifies the query result and stores metadata information related to the integrated continuous query (305 and 306). In this case, the information to be stored includes integrated continuous query, user-defined shared trigger and user-defined shared extended trigger information.

상기 검사 결과(305), 사용자 정의 공유 트리거 결과에 대한 질의를 포함하고 있지 않으면 곧바로 통합 연속 질의 관련 메타데이터 정보를 저장한다(306). 이때, 저장하는 정보는 통합 연속 질의 및 사용자 정의 공유 트리거 정보를 포함한다.If the check result 305 does not include a query for a user-defined shared trigger result, metadata information related to the integrated continuous query is immediately stored (306). In this case, the information to be stored includes the integrated continuous query and the user-defined shared trigger information.

상기와 같은 과정을 통해 등록된 통합 연속 질의는 데이터 스트림에 대하여 반복적으로 수행된다. 반면에, 저장 데이터에 대한 처리는 사용자 정의 공유 트리거 및 사용자 정의 공유 확장 트리거의 수행에 따라 트리거 결과 관리기(14)가 관리하는 트리거 결과를 참조하여 처리한다.The integrated continuous query registered through the above process is repeatedly performed on the data stream. On the other hand, the processing for the stored data is processed by referring to the trigger result managed by the trigger result manager 14 according to the execution of the user-defined shared trigger and the user-defined shared extended trigger.

상기와 같은 과정을 통해 생성된 사용자 정의 공유 확장 트리거는 사용자 정의 공유 트리거와 마찬가지로 통합 연속 질의 처리 시스템의 통합 연속 질의 처리 동작과는 별도로 상기 XML 데이터베이스의 변경에 따라 사용자 정의 공유 트리거 결과가 변경될 때마다 자동으로 사용자 정의 공유 확장 트리거가 수행되어 결과가 갱신된다. 그리하여, 사용자 정의 공유 트리거 결과를 모두 검색하지 않고 사용자 정의 공유 확장 트리거 결과를 참조하는 것으로 저장 데이터에 대한 질의 처리가 완료된다.The user-defined shared extended trigger generated through the above process is the same as the user-defined shared trigger, when the result of the user-defined shared trigger is changed according to the change of the XML database separately from the integrated continuous query processing operation of the integrated continuous query processing system. Each time, a user-defined shared extension trigger is automatically executed to update the result. Thus, querying the stored data is completed by referring to the user-defined shared extended trigger result without retrieving all the user-defined shared trigger results.

또한, 등록된 사용자 정의 공유 확장 트리거는 다수의 통합 연속 질의에 참조가 가능하므로, 트리거 결과를 여러 통합 연속 질의 수행 시에 공유함으로써 전체 질의 처리 성능이 향상될 수 있도록 한다.In addition, since the registered user-defined extended trigger can refer to a plurality of integrated continuous queries, the entire query processing performance can be improved by sharing the trigger result when performing multiple integrated continuous queries.

도 4 는 본 발명에 따른 통합 연속 질의 관리기에서의 통합 연속 질의 삭제 과정에 대한 일실시예 상세 흐름도이다.4 is a detailed flowchart illustrating an integrated continuous query deleting process in the integrated continuous query manager according to the present invention.

먼저, 삭제하고자 하는 통합 연속 질의의 등록 여부를 확인한다(401). First, it is checked whether the integrated continuous query to be deleted is registered (401).

상기 확인 결과(401), 해당 통합 연속 질의가 존재하지 않는 경우에는 종료하고, 해당 통합 연속 질의가 존재하면 사용자 정의 공유 확장 트리거의 결과를 참조하는지 판단한다(402).The check result 401, if there is no integration continuation query is terminated, and if the integration continuation query exists, it is determined whether to refer to the result of the user-defined shared extension trigger (402).

상기 판단 결과(402), 사용자 정의 공유 확장 트리거 결과를 참조하면 상기 통합 연속 질의 삭제를 트리거 관리기(13)에 알린 후 통합 연속 질의를 삭제한다(403, 404).Referring to the determination result 402, the user-defined shared extended trigger result, the integrated continuous query deletion is notified to the trigger manager 13, and then the integrated continuous query is deleted (403, 404).

상기 판단 결과(402), 사용자 정의 공유 확장 트리거 결과를 참조하지 않으면 바로 해당 통합 연속 질의 관련 정보를 삭제한다(404). If the determination result 402 does not refer to the user-defined shared extended trigger result, the corresponding integrated continuous query related information is immediately deleted (404).

도 5 는 본 발명에 따른 트리거 관리기에서의 사용자 정의 공유 확장 트리거 생성 및 삭제 과정에 대한 일실시예 흐름도이다.5 is a flowchart illustrating an embodiment of a process for generating and deleting a user-defined shared extended trigger in the trigger manager according to the present invention.

먼저, 사용자 정의 공유 확장 트리거에 대한 요청 기능의 종류(생성/삭제)를 판단한다(501). First, a type (creation / deletion) of a request function for a user-defined shared extension trigger is determined (501).

상기 요청 기능 종류 판단 결과(501), 사용자 정의 공유 확장 트리거의 생성을 요청받았을 경우 생성하고자 하는 사용자 정의 공유 확장 트리거를 검색하여(502), 그 존재 여부를 판단한다(503).When the request function type determination result 501 is requested to generate the user-defined shared extended trigger, the user-defined shared extended trigger is searched for to be generated (502) and the existence thereof is determined (503).

상기 트리거 존재 여부 판단 결과(503), 해당되는 사용자 정의 공유 확장 트리거가 존재하지 않는 경우에는 해당 XML 데이터베이스에 관련 사용자 정의 공유 트리거 결과에 대한 사용자 정의 공유 확장 트리거를 생성 및 등록하고(505), 트리거의 생성과 함께 발생하는 트리거 결과를 통합 질의 처리 시에 접근할 수 있도록 구성(트리거 결과 집합 구성)한 후(506), 상기 사용자 정의 공유 확장 트리거의 이름을 반환한다(507). 이때, 트리거 결과 집합을 구성한 후에 사용자 수를 1로 설정한다. 여기서, "사용자가 있다"란 "트리거가 생성되었다"를 의미한다. As a result of determining whether the trigger exists (503), if the corresponding user-defined extended trigger does not exist, create and register a user-defined shared extended trigger for the related user-defined shared trigger result in the corresponding XML database (505), and trigger After configuring the trigger result that occurs with the generation of a (a trigger result set configuration) to be accessible in the integrated query processing (506), and returns the name of the user-defined shared extended trigger (507). At this time, the number of users is set to 1 after configuring the trigger result set. Here, "the user exists" means "the trigger has been created."

반면에, 상기 트리거 존재 여부 판단 결과(503), 해당되는 사용자 정의 공유 확장 트리거가 이미 존재하는 경우에는 트리거의 결과 집합의 총 사용자 수(정확하게는, 통합 질의 수)를 1 증가시키고(504), 해당되는 사용자 정의 공유 확장 트리거의 이름을 반환한다(507).On the other hand, if the result of determining whether the trigger exists (503), if the corresponding user-defined extended trigger already exists, the total number of users (exactly, the number of combined queries) of the result set of the trigger is increased by one (504), Return the name of the corresponding custom shared extension trigger (507).

한편, 상기 요청 기능 종류 판단 결과(501), 사용자 정의 공유 확장 트리거의 삭제를 요청받았을 경우 해당되는 사용자 정의 공유 확장 트리거를 검색한 후(508), 상기 사용자 정의 공유 확장 트리거를 이용하는 총 사용자 수(트리거 결과 집합의 총 사용자 수)를 확인한다(509). On the other hand, if the request function type determination result 501, when requested to delete the user-defined shared extended trigger is retrieved (508) corresponding to the user-defined shared extended trigger (508), the total number of users using the user-defined shared extended trigger ( The total number of users in the trigger result set) (509).

상기 확인 결과(509), 총 사용자 수가 1보다 크지 않을 경우 해당 XML 데이터베이스에 등록된 사용자 정의 공유 확장 트리거 및 그 결과 집합을 삭제한다(510). If the total number of users is not greater than 1, the verification result 509 deletes the user-defined shared extension trigger and the result set registered in the corresponding XML database (510).

상기 확인 결과(509), 총 사용자 수가 1보다 큰 경우에는 트리거 결과 집합의 총 사용자 수를 1만큼 감소시킨다(511). 그리고 종료한다.If the total number of users is greater than 1, the verification result 509 reduces the total number of users in the trigger result set by one (511). And exit.

여기서, 사용자 정의 공유 확장 트리거의 결과 집합은 여러 통합 질의가 공유할 수 있도록 한다. 즉, 사용자 정의 공유 확장 트리거의 생성 요청시 이미 존재하는 트리거인 경우에는 생성되어 있는 결과 집합을 이용할 수 있도록 기 생성한 사용자 정의 공유 확장 트리거의 이름을 반환한다. Here, the result set of the user-defined shared extension trigger can be shared by multiple integration queries. That is, in the case of a trigger that already exists when a request for creating a user-defined shared extension trigger is generated, the name of the user-defined user-defined extended trigger previously created to use the created result set is returned.

동일하게, 사용자 정의 공유 확장 트리거의 삭제 요청시 결과 집합의 사용자가 삭제 요청한 객체 외에 존재하지 않을 경우 트리거 및 트리거 결과 집합을 삭제한다. 이러한 사용자 정의 공유 확장 트리거 및 사용자 정의 공유 확장 트리거 결과 집합의 공유는 시스템 리소스의 사용면에서 최적화 효과를 제공한다. Similarly, when the user of the result set delete request does not exist other than the object requested for deletion, the trigger and the trigger result set are deleted. The sharing of these user-defined shared extension triggers and the user-defined shared extension trigger result set provides an optimization effect on the use of system resources.

이하, 하기의 [표 2]를 참조하여 사용자 정의 공유 확장 트리거를 등록하기 위한 사용자 정의 공유 확장 트리거 문에 대해 살펴보기로 한다.Hereinafter, the user-defined shared extension trigger statement for registering the user-defined shared extension trigger will be described with reference to Table 2 below.

Figure 112007086524286-pat00002
Figure 112007086524286-pat00002

사용자 정의 공유 확장 트리거 문은 "UserDefinedTriggerResult" 사용자 정의 공유 트리거의 결과 데이터 소스로부터 "Building/lobby/avgTemperature"의 값을 검색하여 그 값을 반환하는 것을 의미하며, XML 데이터베이스는 사용자 정의 공유 확장 트리거를 XML 트리거로서 전달받아 데이터베이스에 설정(등록)한다.A custom shared extension trigger statement means retrieving the value of "Building / lobby / avgTemperature" from the result data source of the "UserDefinedTriggerResult" custom shared trigger and returning that value. Received as a trigger and set (registered) in the database.

이후, 트리거 결과 관리기(14)는 사용자 정의 공유 확장 트리거의 결과를 전달받아 초기 결과 집합을 구성한다. Thereafter, the trigger result manager 14 receives the result of the user-defined shared extended trigger to construct an initial result set.

사용자 정의 공유 확장 트리거가 생성된 이후에는, XML 데이터베이스에 "UserDefinedTriggerResult"란 저장 데이터 소스가 추가, 삭제, 변경될 때마다 상기 사용자 정의 공유 확장 트리거 문이 수행되고, 그 결과는 통합 연속 질의 처리 장치로 반환되어 트리거 결과가 갱신이 된다. After the user-defined shared extended trigger is created, the user-defined shared extended trigger statement is executed whenever the stored data source "UserDefinedTriggerResult" is added, deleted, or changed in the XML database. Is returned and the trigger result is updated.

이러한 사용자 정의 공유 확장 트리거는 연속 질의에서 사용자 정의 공유 트리거 결과 집합에 대한 질의 수행 시에 전체 사용자 정의 공유 트리거 결과 집합을 검색하지 않고, 자동으로 최신 결과 집합으로 구축되어 있는 사용자 정의 공유 확장 트리거 결과 집합을 참조함으로써, 연속 질의 처리 성능면에서 최적화의 효과를 제공한다.These user-defined shared extended triggers do not retrieve the entire user-defined shared trigger result set when performing a query on the user-defined shared trigger result set in a continuous query. Instead, the user-defined shared extended trigger result set is automatically built into the latest result set. By referring to, it provides the effect of optimization in terms of performance of continuous query processing.

도 6 은 본 발명에 따른 사용자 정의 공유 확장 트리거의 결과 관리를 위한 일실시예 데이터 구성도이다.6 is a diagram illustrating an embodiment of data configuration for managing results of a user-defined sharing extension trigger according to the present invention.

도 6에 도시된 바와 같이, 사용자 정의 공유 확장 트리거의 결과 집합 목록(601)은 통합 연속 질의 처리 장치에서 생성한 모든 사용자 정의 공유 확장 트리거의 결과 집합을 모두 포함한다. 특정 사용자 정의 공유 확장 트리거의 결과 집합은 해당 트리거의 이름을 통해 접근 가능하며, 트리거의 이름은 통합 연속 질의 처리 장치 내에서 유일하도록 자동으로 부여된다.As shown in FIG. 6, the result set list 601 of the user-defined shared extended trigger includes all the result sets of all the user-defined shared extended triggers generated by the integrated continuous query processing apparatus. The result set of a specific user-defined extended trigger is accessible via the name of the trigger, and the trigger's name is automatically assigned to be unique within the integrated continuous query processing unit.

또한, 특정 사용자 정의 공유 확장 트리거의 결과 집합은 특정 트리거 문을 수행한 결과(602), 총 사용자 수(603), 결과 집합의 참조/변경시 필요한 잠금(604)에 관련된 정보를 포함한다.In addition, the result set of a particular user-defined shared extended trigger includes information related to the result of performing the particular trigger statement 602, the total number of users 603, and the lock 604 required to reference / change the result set.

여기서, 총 사용자 수는 사용자 정의 공유 확장 트리거의 결과 집합에 접근하여 사용하고 있는 총 통합 연속 질의의 수를 말한다. 사용자 정의 공유 확장 트리거가 처음으로 생성되어 결과 집합을 구성할 시점에는 사용자 수가 1이며, 추후 해당 트리거를 참조하는 통합 연속 질의의 등록 요청에 따라 1만큼 사용자 수를 증가시킨다. 반대로, 상기 트리거를 참조하는 통합 연속 질의의 삭제 요청에 따라 1만큼 사용자 수를 감소시키고, 최종적으로 사용자 수가 0이 되는 시점에 해당 2차 트리거가 자동으로 삭제된다.Here, the total number of users refers to the total number of integrated continuous queries that access and use the result set of the user-defined shared extended trigger. The first time a user-defined shared extended trigger is created to form a result set, the number of users is 1, and the number of users is increased by 1 according to the registration request of the integrated continuous query referencing the trigger later. On the contrary, the number of users is reduced by 1 according to the deletion request of the integrated continuous query referring to the trigger, and the secondary trigger is automatically deleted when the number of users becomes 0 at last.

이때, 사용자 정의 공유 확장 트리거의 결과 집합은 통합 연속 질의 처리 장치에서 통합 연속 질의를 처리하는데 이용된다. 즉, 상기 통합 연속 질의 처리 시 사용자 정의 공유 확장 트리거의 결과 집합을 참조하고, 상기 사용자 정의 공유 확장 트리거의 결과 집합에 대한 변경은 XML 데이터베이스에서 이루어진다. In this case, the result set of the user-defined shared extended trigger is used to process the integrated continuous query in the integrated continuous query processing apparatus. That is, when processing the integrated continuous query, the result set of the user-defined shared extended trigger is referred to, and the change to the result set of the user-defined shared extended trigger is made in the XML database.

그러므로 결과 집합의 변경 시에 읽기가 수행되거나, 읽기 수행 시에 변경이 수행되지 않도록 하기 위해, 사용자 정의 공유 확장 트리거의 결과 집합에 대한 연산 수행시 잠금(604) 관리 기법을 사용한다. 즉, 읽거나 변경하기 위해서는 잠금을 획득해야 하고, 읽기/변경 작업을 완료한 후에는 잠금 해제하도록 하여 읽기와 변경 작업이 함께 수행되지 않도록 한다. XML 데이터베이스 및 통합 연속 질의 처리 장치에서의 질의 수행 등의 동작은 별도로 이루어지므로, 오버헤드가 적어 위의 잠금 관리 기법이 가능하다.Therefore, the lock 604 management technique is used to perform an operation on the result set of the user-defined shared extended trigger so that the read is performed when the result set is changed or the change is not performed when the read is performed. In other words, a lock must be acquired in order to read or change, and after the read / change operation is completed, the lock is released to prevent the read and change operations from being performed together. Since the operations such as query execution in XML database and integrated continuous query processing device are performed separately, the above lock management technique is possible because of less overhead.

또한, 사용자 정의 공유 확장 트리거 문 수행에 따른 결과 집합은 노드 트리 형태의 결과(605) 또는 정수(Integer)(606), 스트링(String)(607) 등의 기본 타입 형태의 결과를 모두 포함할 수 있다.In addition, the result set according to the execution of the user-defined shared extended trigger statement may include the result of the node tree type 605 or the result of basic type such as an integer 606 and a string 607. have.

한편, 전술한 바와 같은 본 발명의 방법은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체(정보저장매체)에 저장되고, 컴퓨터에 의하여 판독되고 실행됨으로써 본 발명의 방법을 구현한다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.On the other hand, the method of the present invention as described above can be written in a computer program. And the code and code segments constituting the program can be easily inferred by a computer programmer in the art. In addition, the written program is stored in a computer-readable recording medium (information storage medium), and read and executed by a computer to implement the method of the present invention. The recording medium may include any type of computer readable recording medium.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawings.

본 발명은 통합 연속 질의 처리 등에 이용될 수 있다.The present invention can be used for integrated continuous query processing and the like.

도 1 은 본 발명에 따른 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리 장치의 일실시예 구성도,1 is a configuration diagram of an integrated continuous query processing apparatus using a user-defined shared extended trigger according to the present invention;

도 2 는 본 발명에 따른 사용자 정의 공유 트리거를 이용한 통합 연속 질의 처리 방법에 대한 일실시예 흐름도,2 is a flowchart illustrating an integrated continuous query processing method using a user-defined shared trigger according to the present invention;

도 3 은 본 발명에 따른 통합 연속 질의 관리기에서의 통합 연속 질의 등록 과정에 대한 일실시예 상세 흐름도,3 is a detailed flowchart illustrating an embodiment of an integrated continuous query registration process in an integrated continuous query manager according to the present invention;

도 4 는 본 발명에 따른 통합 연속 질의 관리기에서의 통합 연속 질의 삭제 과정에 대한 일실시예 상세 흐름도,4 is a detailed flowchart illustrating an embodiment of a process for deleting an integrated continuous query in the integrated continuous query manager according to the present invention;

도 5 는 본 발명에 따른 트리거 관리기에서의 사용자 정의 공유 확장 트리거 생성 및 삭제 과정에 대한 일실시예 흐름도,5 is a flowchart illustrating an embodiment of a process for generating and deleting a user-defined shared extended trigger in the trigger manager according to the present invention;

도 6 은 본 발명에 따른 사용자 정의 공유 확장 트리거의 결과 관리를 위한 일실시예 데이터 구성도이다.6 is a diagram illustrating an embodiment of data configuration for managing results of a user-defined sharing extension trigger according to the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

10 : 통합 연속 질의 처리장치 11 : 데이터 스트림 관리기10: integrated continuous query processing device 11: data stream manager

12 : 통합 연속 질의 관리기 13 : 트리거 관리기12: integrated continuous query manager 13: trigger manager

14 : 트리거 결과 관리기 15 : 통합 연속 질의 실행기14: trigger result manager 15: integrated continuous query executor

Claims (12)

통합 연속 질의 처리장치에 있어서, In the integrated continuous query processing apparatus, 데이터 스트림을 관리하기 위한 데이터 스트림 관리수단; Data stream management means for managing the data stream; 통합 연속 질의문을 분석하여 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 트리거 관리수단으로 알리기 위한 통합 연속 질의 관리수단; Integrated continuous query management means for analyzing the integrated continuous query statement and informing the trigger management means according to the query for the result of the user-defined shared trigger; 상기 통합 연속 질의 관리수단으로부터의 알림 정보에 따라 상기 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)하기 위한 상기 트리거 관리수단; The trigger management means for setting (registering) a user-defined shared extended trigger for the integrated continuous query statement according to the notification information from the integrated continuous query management means; 상기 트리거 관리수단이 설정한 사용자 정의 공유 확장 트리거의 결과를 집합(트리거 결과 집합)으로 관리하기 위한 트리거 결과 관리수단; 및 Trigger result management means for managing the result of the user-defined shared extended trigger set by the trigger management means as a set (trigger result set); And 상기 데이터 스트림 관리수단으로부터의 데이터 스트림과 상기 트리거 결과 관리수단으로부터의 트리거 결과 집합을 이용하여 통합 연속 질의를 처리하기 위한 통합 연속 질의 실행수단Integrated continuous query execution means for processing an integrated continuous query using the data stream from the data stream management means and the trigger result set from the trigger result management means 을 포함하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.Integrated continuous query processing apparatus using a user-defined shared extended trigger including a. 제 1 항에 있어서,The method of claim 1, 상기 통합 연속 질의 관리수단은, The integrated continuous query management means, 통합 연속 질의 등록 및 삭제 기능을 제공하고, 통합 연속 질의 등록 시에 상기 통합 연속 질의문의 구문 분석 및 정당성 검사를 수행하며, 정당성 검사 과정에서 통합 연속 질의에 사용자 정의 공유 트리거의 결과에 대한 질의를 포함하는 경우, 사용자 정의 공유 확장 트리거로 등록되어 있는지 상기 트리거 관리수단을 통해 확인하여, 등록되어 있지 않음에 따라 상기 트리거 관리수단으로 등록을 요청하는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.It provides integrated continuous query registration and deletion function, performs parsing and validity checking of the integrated continuous query when registering the integrated continuous query, and includes the query for the result of the user-defined shared trigger in the integrated continuous query during the validity checking process. If it is, the integrated continuous query using the user-defined shared extended trigger characterized in that it is registered as a user-defined shared extended trigger through the trigger management means, and requests registration to the trigger management means if it is not registered. Processing unit. 제 2 항에 있어서,The method of claim 2, 상기 통합 연속 질의 관리수단은, The integrated continuous query management means, 상기 정당성 검사로서, 구문 분석을 통해 질의하고자 하는 데이터 스트림 소스가 존재하는지의 여부, 트리거 결과 참조 함수의 인자가 등록된 사용자 정의 공유 트리거 이름인지의 여부, 및 데이터에 대한 지정이 유효한지의 여부를 검사하는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.As the validity check, whether the data stream source to be queried through parsing exists, whether the argument of the trigger result reference function is a registered user-defined shared trigger name, and whether the specification for the data is valid. Integrated continuous query processing apparatus using a user-defined shared extended trigger, characterized in that the inspection. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 3, 상기 트리거 관리수단은, The trigger management means, 해당 XML 데이터베이스에 관련 사용자 정의 공유 트리거 결과에 대한 사용자 정의 공유 확장 트리거를 생성 및 등록한 후, 상기 등록한 사용자 정의 공유 확장 트리거 결과를 통합 질의 처리 시에 접근할 수 있도록 상기 트리거 결과 관리수단에 트리거 결과 집합을 구성하는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.After generating and registering a user-defined shared extended trigger for the related user-defined shared trigger result in the corresponding XML database, the trigger result set is set in the trigger result management means so that the registered user-defined extended trigger result can be accessed during the integrated query processing. Integrated continuous query processing apparatus using a user-defined shared extended trigger, characterized in that the configuration. 제 4 항에 있어서,The method of claim 4, wherein 상기 트리거 관리수단은,The trigger management means, 사용자 정의 공유 확장 트리거 삭제 시,When you delete a custom shared extension trigger, 해당 사용자 정의 공유 확장 트리거를 참조하는 총 사용자 수를 확인하여 1을 초과하지 않으면 사용자 정의 공유 확장 트리거는 물론 해당 결과 집합까지 삭제하고, 1을 초과하면 1 감소시키는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.Check the total number of users referencing the user-defined shared extension trigger, and if it does not exceed 1, delete the user-defined shared extension trigger as well as the corresponding result set, and if it exceeds 1, the user-defined shared extension trigger Integrated continuous query processing device using. 제 4 항에 있어서,The method of claim 4, wherein 상기 트리거 결과 관리수단은, The trigger result management means, 상기 트리거 관리수단의 제어에 따라 사용자 정의 공유 확장 트리거의 결과를 집합으로 관리하여, 통합 연속 질의 처리 시에 이용할 수 있도록 하는 것을 특 징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.An integrated continuous query processing apparatus using a user-defined shared extended trigger, characterized in that for managing the result of the user-defined shared extended trigger as a set under the control of the trigger management means to be used in the integrated continuous query processing. 제 6 항에 있어서,The method of claim 6, 상기 트리거 결과 관리수단은, The trigger result management means, 사용자 정의 공유 확장 트리거의 트리거 문을 수행한 결과, 총 사용자 수, 및 잠금에 관련된 정보를 결과 집합으로서 관리하는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리장치.An integrated continuous query processing apparatus using a user-defined shared extended trigger, characterized in that the result of performing a trigger statement of the user-defined shared extended trigger, the total number of users, and information related to the lock are managed as a result set. 통합 연속 질의 처리방법에 있어서, In the integrated continuous query processing method, 데이터 스트림을 입력받는 단계; Receiving a data stream; 외부의 애플리케이션으로부터 입력받은 통합 연속 질의문을 분석하여 사용자 정의 공유 트리거의 결과에 대한 질의를 포함하는지 확인하는 확인단계; A verification step of analyzing an integrated continuous query received from an external application and including a query for a result of a user-defined shared trigger; 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 상기 통합 연속 질의문에 대한 사용자 정의 공유 확장 트리거를 설정(등록)하는 등록단계; 및 A registration step of setting (registering) a user-defined shared extended trigger for the integrated continuous query statement according to a query for a result of a user-defined shared trigger; And 상기 데이터 스트림과 해당 사용자 정의 공유 확장 트리거 결과를 이용하여 통합 연속 질의를 처리하는 단계Processing an integrated continuous query using the data stream and the corresponding user-defined shared extended trigger result 를 포함하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리방법.Integrated continuous query processing method using a user-defined shared extended trigger comprising a. 제 8 항에 있어서,The method of claim 8, 상기 확인단계는, The checking step, 상기 입력받은 통합 연속 질의문을 분석하는 단계;Analyzing the received integrated continuous query; 상기 분석한 통합 연속 질의문에 대하여 정당성 검사를 수행하는 단계;Performing a validity check on the analyzed integrated continuous query; 정당한 통합 연속 질의문임에 따라 상기 통합 연속 질의문에서 사용자 정의 공유 트리거 결과 참조 함수를 사용하여 사용자 정의 공유 트리거 결과에 대한 질의를 포함하고 있는지 검사하는 검사단계;A check step of checking whether the integrated continuous query includes a query for a user-defined shared trigger result using a user-defined shared trigger result reference function in the integrated continuous query statement; 를 포함하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리방법.Integrated continuous query processing method using a user-defined shared extended trigger comprising a. 제 9 항에 있어서,The method of claim 9, 상기 정당성 검사 과정은,The validity test process, 구문 검사를 통해 질의하고자 하는 데이터 스트림 소스가 존재하는지의 여부, 트리거 결과 참조 함수의 인자가 등록된 사용자 정의 공유 트리거 이름인지의 여부, 및 데이터에 대한 지정이 유효한지의 여부를 검사하는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리방법.The syntax check checks whether the data stream source to be queried exists, whether the argument of the trigger result reference function is a registered user-defined shared trigger name, and whether the specification for the data is valid. Integrated continuous query processing method using a user-defined shared extended trigger. 제 8 항 있어서,The method of claim 8, 상기 사용자 정의 공유 확장 트리거 등록단계는, The user-defined shared extended trigger registration step, 사용자 정의 공유 트리거의 결과에 대한 질의를 포함함에 따라 동일한 트리거가 존재하는지 확인하는 단계; Ascertaining whether the same trigger exists as including a query for the result of the user-defined shared trigger; 상기 확인 결과, 해당 사용자 정의 공유 확장 트리거가 존재하지 않으면 해당 데이터베이스에 생성/등록하고, 통합 질의 처리 시에 접근할 수 있도록 트리거 결과 집합으로 구성하는 단계; 및If the user-defined shared extended trigger does not exist as a result of the checking, creating / registering in the corresponding database, and configuring the trigger result set to be accessible when the integrated query is processed; And 상기 확인 결과, 해당 사용자 정의 공유 확장 트리거가 존재하면 트리거 결과 집합의 총 사용자 수를 1 증가시키는 단계If the user-defined shared extended trigger exists, increasing the total number of users in the trigger result set by 1 를 포함하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리방법.Integrated continuous query processing method using a user-defined shared extended trigger comprising a. 제 11 항에 있어서,The method of claim 11, wherein 상기 사용자 정의 공유 확장 트리거 결과는,The user-defined shared expansion trigger result is, 상기 사용자 정의 공유 확장 트리거의 트리거 문을 수행한 결과, 총 사용자 수, 및 잠금에 관련된 정보를 결과 집합으로서 포함하는 것을 특징으로 하는 사용자 정의 공유 확장 트리거를 이용한 통합 연속 질의 처리방법.And a result of performing the trigger statement of the user-defined shared extended trigger, including a total number of users and information related to the lock as a result set.
KR1020070123489A 2006-12-04 2007-11-30 Integrated continuous query processing device and user method using user-defined shared extended trigger KR100931310B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20060121247 2006-12-04
KR1020060121247 2006-12-04

Publications (2)

Publication Number Publication Date
KR20080051068A KR20080051068A (en) 2008-06-10
KR100931310B1 true KR100931310B1 (en) 2009-12-11

Family

ID=39806201

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070123489A KR100931310B1 (en) 2006-12-04 2007-11-30 Integrated continuous query processing device and user method using user-defined shared extended trigger

Country Status (1)

Country Link
KR (1) KR100931310B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060067095A (en) * 2004-12-14 2006-06-19 한국전자통신연구원 Method and system for supporting xquery trigger in xml databases based on relational database

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060067095A (en) * 2004-12-14 2006-06-19 한국전자통신연구원 Method and system for supporting xquery trigger in xml databases based on relational database

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
유비쿼터스 컴퓨팅 환경을 위한 RFID 기반 센서 데이터 처리 미들웨어 기술 동향(2004.10, 전자통신동향분석 제19권 제5호, 원종호 외 2명)
트리거와 저장프로시저를 이용한 연속질의 처리 시스템 설계 및 구현(2005.11, 충남대학교, 이근주)

Also Published As

Publication number Publication date
KR20080051068A (en) 2008-06-10

Similar Documents

Publication Publication Date Title
KR100778314B1 (en) System and method for processing continuous integrated queries on both data stream and stored data using user-defined shared trigger
US8495082B2 (en) Stream data processing method cooperable with reference external data
US20070136254A1 (en) System and method for processing integrated queries against input data stream and data stored in database using trigger
US7290131B2 (en) Guaranteeing hypertext link integrity
US7376658B1 (en) Managing cross-store relationships to data objects
JP4944160B2 (en) Method and apparatus for searching a plurality of real-time sensors
US20150213043A1 (en) Retrieval device, method for controlling retrieval device, and recording medium
Honle et al. Benefits of integrating meta data into a context model
CA3025493A1 (en) Optimizing read and write operations in object schema-based application programming interfaces (apis)
JP5527027B2 (en) Schema definition generation device, schema definition generation method, and schema definition generation program
JP2016021232A (en) Checking freshness of data for data integration system (dis)
US8539457B2 (en) Partial on-demand lazy semantic analysis
JP2007066017A (en) System and method for controlling access to database
KR20100117415A (en) Method and system for managing database
KR100789771B1 (en) System and method for processing queries of data stream and data in databases using trigger
KR100931310B1 (en) Integrated continuous query processing device and user method using user-defined shared extended trigger
US20130218928A1 (en) Information processing device
US8352481B2 (en) Server, data transfer method, and recording medium
KR100861799B1 (en) Method and system for providing personal history data on user-bookmarked contents, and computer-readable meduim for recording computer program that enables implementation of same method
JP2004192657A (en) Information retrieval system, and recording medium recording information retrieval method and program for information retrieval
GB2536921A (en) Apparatus, program, and method for updating cache memory
EP3985528A1 (en) Negotiation of information contracts between information providers and consumers
JP4550876B2 (en) Structured document retrieval system and program
KR101132741B1 (en) System and method for metadata management
Konopnicki et al. Bringing database functionality to the WWW

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee