KR20070080350A - 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법 - Google Patents

데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법 Download PDF

Info

Publication number
KR20070080350A
KR20070080350A KR1020060011575A KR20060011575A KR20070080350A KR 20070080350 A KR20070080350 A KR 20070080350A KR 1020060011575 A KR1020060011575 A KR 1020060011575A KR 20060011575 A KR20060011575 A KR 20060011575A KR 20070080350 A KR20070080350 A KR 20070080350A
Authority
KR
South Korea
Prior art keywords
attribute
query
selection
property
queries
Prior art date
Application number
KR1020060011575A
Other languages
English (en)
Other versions
KR100810257B1 (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 KR1020060011575A priority Critical patent/KR100810257B1/ko
Publication of KR20070080350A publication Critical patent/KR20070080350A/ko
Application granted granted Critical
Publication of KR100810257B1 publication Critical patent/KR100810257B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01GHORTICULTURE; CULTIVATION OF VEGETABLES, FLOWERS, RICE, FRUIT, VINES, HOPS OR SEAWEED; FORESTRY; WATERING
    • A01G3/00Cutting implements specially adapted for horticultural purposes; Delimbing standing trees
    • A01G3/02Secateurs; Flower or fruit shears
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D46/00Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01GHORTICULTURE; CULTIVATION OF VEGETABLES, FLOWERS, RICE, FRUIT, VINES, HOPS OR SEAWEED; FORESTRY; WATERING
    • A01G17/00Cultivation of hops, vines, fruit trees, or like trees

Landscapes

  • Life Sciences & Earth Sciences (AREA)
  • Environmental Sciences (AREA)
  • Botany (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Ecology (AREA)
  • Forests & Forestry (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

무한히 빠르게 연속적으로 새로운 데이터 투플이 발생하는 데이터스트림 환경에서 데이터 투플집합에 대한 질의는 기존 데이터베이스 시스템과 같이 일회성으로 수행할 수 없으며 이보다는 필요한 질의들을 미리 등록해 놓고 지속적으로 발생하는 데이터 투플에 대한 수행 결과를 계속적으로 전달받는 연속질의의 형태를 가진다. 즉, 일회성 질의는 한번 수행되나 연속질의는 데이터스트림의 새로운 데이터가 도착할 때마다 등록된 질의들에 대해 지속적으로 수행되면서 질의들의 결과를 새롭게 연속적으로 생성한다. 이와 같이 연속질의를 처리하는 시스템을 데이터스트림 관리 시스템(Data Stream Management System: DSMS)이라고 하며 일반적으로 다수의 연속 질의들이 데이터스트림에 대해 동시에 수행되므로 개별적으로 하나의 질의를 별도로 수행하는 것보다는 이들 연속질의들에 중복해서 표현/사용되는 연산작업을 한 번만 수행하여 전체적인 성능을 향상시 킬 수 있다.
본 발명은 다수의 연속질의들에 사용되는 선택조건들을 효과적으로 처리하기 위해 기존의 DSMS와는 다른 방법으로 이들 질의들에 사용된 선택조건들을 동일 속성 단위로 분류하고 각 속성별로 표현된 모든 선택조건들의 조건으로 사용된 상수들로 해당 속성의 도메인을 여러 영역들로 구분한다. 각 영역에 대해 질의들에 표현된 선택조건들의 만족 여부 결과를 질의 등록 시 색인하여 구성한 구조체, 즉 속성 선택 를 제안함으로써 데이터스트림에서 새로 발생한 데이터 투플의 해당 속성의 속성값으로 검색하면 그 속성을 사용하여 정의된 연속 질의들에 표현된 모든 선택 조건들의 만족 여부를 효율적으로 판단할 수 있는 방법을 제시한다. 이러한 처리 방식은 속성별로 처리하는 방식으로, 데이터스트림 스키마의 속성들을 처리하는 순서에 따라 상당히 많은 성능 차이가 발생할 수 있다. 이를 위해 각 속성에 정의된 선택조건들의 선택률 분포와 해당 속성을 사용하는 질의 수를 고려하여 저비용 처리를 보장하는 최적화된 속성 처리 순서를 효과적으로 찾는 방법을 제안한다.
데이터스트림, 데이터스트림 관리 시스템(DSMS), 연속질의, 필터 순서, 선택조건, 선택조건 색인

Description

데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된 선택조건들의 효율적인 처리장치 및 처리방법 {Efficient Processing of Selection Predicates in Multiple Continuous Queries for Data Stream Management Systems(DSMS)}
도 1은 본 발명에서 고안한 속성 선택체의 생성과 속성 선택체간의 수행 순서결정 과정을 보여 주는 상위 레벨 구성도이다.
도 2는 본 발명에서 고안한 속성 선택체의 구조와 이를 통한 연속질의 처리 과정을 보여주는 예이다.
도 3은 본 발명에서 고안한 속성 선택체의 결과 상태비트열을 설정하는 방법을 기술한 구성도이다.
도 4는 속성 선택체들의 최소속성 커버집합을 결정하는 방법에 대한 구성도이다.
도 5은 속성 선택체들의 처리 순서를 결정하는 방법을 보여주는 예이다.
도 6는 속성 선택체들의 처리 순서를 결정하는 방법에 대한 구성도이다.
도 7는 속성 선택률을 알 수 있는 경우 불필요한 조건을 제거하는 방법과 조건 선택률을 알 수 없는 경우 샘플링을 통해 수집하는 과정을 보여주는 구성도이다.
J. Chen, D. J. DeWitt, F. Tian and Y. Wang, NiagaraCQ: A Scalable Continuous Query System for Internet Databases, SIGMOD 2000: 379-390.
Samuel R. Madden, Mehul A. Shah, Joseph M. Hellerstein and Vijayshankar Raman. Continuously Adaptive Continuous Queries over Streams. ACM SIGMOD Conference, Madison, WI, June 2002.
Ron Avnur,Joe Hellerstein “Eddies:Continuously Adaptive Query Processing” SIGMOD 2000
Vijayshankar Raman, Amol Deshpande, and Joseph M. Hellerstein. Using State Modules for Adaptive Query Processing. ICDE 2003
Vijayshankar Raman, Amol Deshpande, and Joseph M. Hellerstein. Using State Modules for Adaptive Query Processing. ICDE 2003
Sirish Chandrasekaran and Michael J. Franklin. Streaming Queries over Streaming Data. VLDB Conference, Hong Kong, August 2002.
기존의 데이터베이스 관리 시스템(DataBase Management System: DBMS)분야의 종래 기술은 새롭게 발생하는 데이터 투플이 무한히 빠른 속도로 유입되는 데 이터스트림에 대한 질의를 처리하는데 있어서 공간적, 시간적 제약으로 인해 적절한 처리가 불가능하다. 따라서 데이터스트림 처리에 적합한 데이터스트림 관리 시스템(Data Stream Management System: DSMS)이 현재 활발하게 연구되고 있다. 본 발명은 데이터스트림에서 연속질의(Continuous Queries) 최적화 실행 기법에 관련된 기술이며 다수의 연속질의들에 표현된 선택조건들을 효과적으로 처리하기 위해 데이터스트림의 각 속성별로 해당 속성으로 정의된 선택조건들에 대한 색인 방법과 속성별로 색인된 구조체들의 처리 순서에 관한 것이다.
질의에 사용된 단위 선택조건이란 속성 A와 속성 상수값 C, 그리고 비교 연산자 θ로 정의된 AθC, θ={=,≠,<,> 등과 같은 비교 연산자}이다. 한 연속질의의 선택조건은 단위 선택조건들을 "AND" boolean 연산자로 결합한 형태로 정의된다. 연속질의 등록 시, 연속질의에 표현된 선택조건들에 대한 가능한 모든 조합에 대해 해당 질의의 만족 여부를 색인하게 되면 새롭게 발생한 데이터스트림의 데이터 투플이 미리 등록되어 있는 연속질의들의 선택조건들에 대한 만족 여부를 신속하게 판단할 수 있고 이 과정에서 이들 질의들에 중복해서 표현된 선택조건들에 대한 처리 과정을 공유하게 됨으로 효율적으로 처리할 수 있다. 따라서 기존의 데이터스트림 관리 시스템에서도 이와 같은 색인 또는 그룹처리 기법을 사용한다. NiagaraCQ에서는 연속질의 선택조건의 그룹처리 방법으로 "J. Chen, D. J. DeWitt, F. Tian and Y. Wang, NiagaraCQ: A Scalable Continuous Query System for Internet Databases, SIGMOD 2000: 379-390." 에서 다수의 연속질의들에 사용된 유사한 선택조건들을 그룹화하여 속성과 비교 연산자가 동일한 조건들을 별도로 모아 그룹 상 수테이블( Group Constant Table )이라는 구조체를 제안하였다. 연속질의들의 선택조건처리는 그룹 상수테이블과 새로 발생하는 데이터스트림의 투플들과의 관계 데이터베이스의 조인 연산 작업으로 처리된다.
CACQ는 고정된 연속질의 수행 계획을 만들지 않고 질의 처리 중에 계속해서 연산자의 순서를 동적으로 변경하는 에디( Eddy )라는 처리 시스템을 사용한다. CACQ는 "Samuel R. Madden, Mehul A. Shah, M...., Continuously Adaptive Continuous Queries over Streams. ACM SIGMOD Conference, Madison, WI, June 2002."에서 제안한 바와 같이 연속질의의 선택조건들을 각 속성별로 분류하고 다시 동일 연산별로 그룹화하는 그룹 필터( Grouped Filter )라는 방식으로 선택조건을 색인한다. 그룹 필터는 서로 다른 선택조건이 나타나는 속성 수 만큼 만들어지며 내부적으로는 2개의 해쉬 구조와 2개의 AVL트리의 데이터 구조를 가지고 연속질의에 사용된 선택조건에 사용된 비교 연산자의 종류에 따라 분리되어 색인된다. 새로운 연속질의가 등록되면 이 질의에 사용된 선택조건에 속성의 그룹 필터가 있으면 해당 그룹 필터에 추가되고 없으면 새로운 그룹 필터가 만들어진다. 데이터 투플은 그룹 필터를 통해 처리되고 각 질의에 대한 선택 조건 만족 여부는 데이터 투플의 비트형태로 표시된다. Psoup은 "Sirish Chandrasekaran and Michael J. Franklin. Streaming Queries over Streaming Data. VLDB Conference, Hong Kong, August 2002."에서 제안한 것과 같이 Red-Black 트리를 이용하여 질의의 선택조건들을 색인한다. 이 트리는 각 속성마다 별도로 생성되며 트리의 각 노드는 선택조건의 상수를 의미하고 각 노드는 비교 연산자 수만큼의 2차원 배열구조를 가지고 있어 조 건의 연산자와 질의 만족 여부 정보를 저장한다.
NiagaraCQ와 Psoup에서는 속성별로 만들어진 트리형태의 그룹 필터는 새로 발생한 데이터 투플에 대해 해당 속성의 선택조건 처리 순서를 결정하지만 속성 간의 처리 순서는 명시되어 있지 않다. 또한 에디(Eddy)에서는 "Ron Avnur, Joe Hellerstein “Eddies: Continuously Adaptive Query Processing” SIGMOD 2000" 과 "Vijayshankar Raman, Amol Deshpande, and Joseph M. Hellerstein. Using State Modules for Adaptive Query Processing. ICDE 2003" 에서와 같이 티켓 라우팅(ticket routing) 또는 무작위 방식으로 그룹 필터의 처리 순서를 결정한다. 무작위 방식은 용어처럼 무작위로 다음 처리할 그룹 필터를 결정하게 되고 티켓 라우팅은 에디가 특정 그룹필터에 투플을 하나 주면서 해당 그룹 필터의 티켓을 하나 증가시키고 라우팅된 투플이 해당 그룹 필터의 선택 조건을 만족하여 투플을 제거하지 못한 경우에는 이 투플을 다시 에디로 돌려주면서 해당 그룹 필터의 티켓의 수를 감소시킨다. 따라서 티켓의 수가 많은 그룹 필터는 많은 투플이 그룹 필터의 선택조건으로 제거되었다는 것을 의미하며 에디는 티켓의 수가 많은 것을 우선적으로 라우팅함으로써 필터를 많이 할 수 있는 그룹 필터를 먼저 수행하도록 설계되어 있다. 이는 일반 DBMS에서 선택률(Selectivity)이 낮은 조건을 먼저 수행하는 것과 같은 맥락이다. 에디의 티켓 라우팅 방식으로 그룹 필터의 순서를 동적으로 결정하는 방법은 다수의 연속질의들이 있는 경우에는 불필요하게 순서를 자주 변경하는 단점을 가질 수 있다. 즉, 한 그룹 필터의 티켓 수가 많다는 것은 해당 그룹 필터의 자체 필터 능력이 아니라 앞 단의 그룹 필터와의 상호작용이기 때문에 그 위치 를 변경하면 티켓의 수가 변경될 수 있기 때문이다.
"S. Babu, R. Motwani, K. Munagala, I. Nishizawa, and J. Widom. Adaptive Ordering of Pipelined Stream Filters. SIGMOD , June 2004" 에서 STREAM은 하나의 연속질의에 있는 다수개의 필터 연산. 즉, 선택조건의 순서를 정하기 위해 조건부 선택률을 기반으로 하는 욕심쟁이(Greedy) 알고리즘을 기본으로, 질의처리 수행 중에 샘플링을 통하여 필터의 상호 관계를 고려한 조건부 선택률을 동적으로 구하여 순서를 적응적으로 변경하는 A-Greedy(Adaptive Greedy)라는 알고리즘을 제안하였다. STREAM의 A-Greedy 역시 다수개의 질의들을 동시에 처리할 경우 속성 처리 순서에 따라 데이터의 필터 능력이 변경되므로 다수의 연속질의 처리에는 효과가 없다.
종래의 기술들은 다수의 연속질의들에 나타나는 선택조건들의 색인과 색인된 구조체의 처리 순서에 대하여 다음과 같은 기술적 한계를 가진다.
1. 속성과 비교 연산자의 종류에 따라 분류되는 색인 기법에서, 종래의 기술은 다수의 연속질의들에 사용되는 선택조건들이 속성별로 나누어지고 다시 비교 연산자 별로 세분화되는 방식이므로 속성으로 구분된 후 비교 연산자 단위로 세분화되며 이 후에 동일 비교 연산자를 갖는 선택조건들의 상수들을 비교하는 구조체로 구성된다. 따라서 새로 발생한 데이터 투플 각각에 대해 이들 3단계 비교를 순차적으로 검사해야 한다.
2. 종래의 기술인 NiagaraCQ와 Psoup에서는 속성별로 서로 다른 선택조건들의 수행 순서에 대한 방법만 제안되었고 속성들간의 실행 순서를 결정하는 방법이 없다.
3. 또한 종래의 기술인 CACQ와 STREAM은 단일 연속질의의 선택조건들의 처리 순서 결정 방법만을 제시하였으며 이들 방법들은 다수의 연속질의들에 적용할 수 없다.
본 발명에서는 이상과 같은 종래의 문제점을 해결하고자 비교 연산자의 종류에 상관없이 선택조건 정보가 저장되기 때문에 비교 연산자에 독립적인 선택조건들의 색인 방법이며 속성별로 색인된 구조체를 다수의 연속질의들의 처리 특성과 단위 선택조건 선택률을 고려하여 최적의 속성간 처리 순서를 결정하는 방법과 단위 선택조건 선택률을 알 수 없는 경우에는 샘플링을 통하여 단위 선택조건 선택률 정보를 동적으로 수집하여 최적의 속성간 처리 순서를 적응적으로 결정하는 방법 및 이에 적합한 장치를 제시 한 것이다.
본 발명의 특징은, 실시간적으로 빠르게 유입되는 비한정적인 데이터스트림을 대상으로 다수의 연속질의들을 수행하는 방법에 있어서,
다수의 연속질의들에 표현된 모든 선택조건들을 색인하기 위해 각 속성별로 선택조건들에 사용된 서로 다른 상수값과 상수값 사이의 구간의 대표값들로 해당 속성의 도메인 범위를 영역별로 구분하여 질의 처리 결과를 질의 등록 시에 속성 선택체를 통해 미리 찾아 저장한다.
또한 속성 선택체의 데이터 구조를 이용하여 질의 처리 성능을 극대화하기 위하여 모든 연속질의들의 선택조건들이 하나 이상 포함되면서 최소개의 속성 구조체들로 구성되는 최소속성 커버집합을 최우선으로 처리한다.
또한 최소속성 커버집합과 속성 순차 선택률을 이용하여 속성들에 대한 속성 선택체들의 최적의 순서를 결정하고, 단위 선택조건의 선택률은 속성 선택체를 통하여 질의에 대한 속성의 단위 선택조건의 선택률을 수집한다.
또한 최소속성 커버집합과 속성 순차 선택률을 적용하여 결정된 순서에서 현재까지의 결과 상태비트열을 누적하면서 순서상 다음 속성 선택체의 질의 활용비트열과의 연산을 통하여 불필요한 속성 선택체의 수행을 건너뛰도록 한다.
또한 다수 연속질의들의 모든 선택조건들을 색인하고 질의의 결과를 저장하기 위한 속성 선택체에서 유지되는 4개의 엔트리로 이루어지며, 상기 엔트리는 질의의 단위 선택조건에 사용된 비교상수 값 리스트, 속성이 해당 질의에 사용 유무를 표현한 비트열인 질의 활용비트열, 속성 도메인의 각 영역별로 연속질의들의 만족 여부 상태를 표현한 결과 상태비트열, 영역을 만족하는 데이터 투플의 빈도를 갖는 투플 카운트로 이루어지는 것을 특징으로 한다.
본 발명은 데이터스트림 환경에서 다수의 연속질의들에 사용된 모든 선택조건들을 새롭게 발생하는 데이터 투플에 대해 신속하게 처리하기 위해 데이터스트림 스키마의 각 속성별로 연속질의들에 표현된 모든 선택조건들에 따라 속성의 전체 도메인(domain) 범위를 세분화된 영역으로 나누어 각 영역에서 이들 연속질의들의 만족 여부를 미리 색인하는 구조체인 속성 선택체와 새로 발생한 데이터 투플에 대한 모든 연속질의들의 만족 여부를 최소의 비용으로 파악할 수 있는 최적의 속성 선택체 처리 순서를 결정하는 방법 및 장치이다.
1. 속성 선택체의 정의 및 구조
데이터스트림 D의 데이터 투플 구조를 정의하는 데이터스트림 스키마 D(A1,A2,...,An)를 구성하는 n개의 속성 집합 A={A1,A2,...,An}에 대해 k개의 연속질의들
Figure 112006008948537-PAT00001
={Q1,Q2,...,Qk}이 사용되고 있을 때,
Figure 112006008948537-PAT00002
중에 속성 Ai에 대해 서로 다른 상수를 사용하는 단위 선택조건 AiθCj이 m개가 존재할 때, 이들 단위 선택조건들 집합을 P(Ai)={P1,P2,...,Pm}라 정의한다. P(Ai)의 선택조건들에 사용된 서로 다른 상수들의 집합을 C(Ai)={cj| 1≤j≤m}라 정의한다. 속성 Ai의 데이터 도메인(domain) 범위에서 이들 상수값을 크기에 따라 {cj>cj +1(1≤j<m)}이 되도록 오름차순으로 정렬하면 상수 cj는 점으로 상수 cj와 상수 cj +1 사이는 구간 Ij으로 표현된다. 즉 한 속성 Ai에 대한 선택조건을 표현하기 위해 m개의 서로 다른 상수값이 사용되었다면 이들 m개의 상수값들과 이들 사이의 m+1구간으로 Ai의 도메인 범위를 전체적으로 2m+1개의 서로 다른 영역으로 구분할 수 있으며 데이터스트림에서 새로 발생한 데이터 투플의 속성 Ai값에 따라
Figure 112006008948537-PAT00003
의 연속질의들 각각이 이 투플을 만족하는 여부를 각 영역별로 미리 결정할 수 있다. 즉, m개의 상수값들 각각에 대해 새로 발생한 데이터 투플이 해당값을 가질 때의 연속질의들의 만족 여부가 결정된다. 또한 m+1 구간에 대해서는 구간의 어떠한 값이 Ai값이 되어도 연속질의들의 만족 여부는 동일하다. 따라서 상수값으로 나타내지는 m개의 영역은 해당 상수값을 대표값으로, 구간으로 나타내지는 m+1개의 영역에 대해서는 각 구간별로 무작위로 발생시킨 임의의 값을 해당 영역에서 속성 Ai를 대표하는 대표값으로 설정한다. 속성 Ai의 도메인 범위에서 2m+1개 영역의 대표값들 각각에 대해
Figure 112006008948537-PAT00004
에 있는 각 질의의 만족 여부를 미리 구하여 색인한 구조체를 해당 속성 Ai의 속성 선택체라 정의한다.
[정의 1]속성 선택체
데이터스트림 스키마 D(A1,A2,....An)에 대해 k개의 연속질의집합
Figure 112006008948537-PAT00005
={Q1,Q2,...,Qk}이 정의되어 있을 때 각 속성 Ai에 대해 하나의 속성 선택체가 정의된다. 또한 속성 Ai 에 m개의 서로 다른 상수값으로 표현된 단위 선택조건들이 존재할 때 속성 Ai의 도메인 범위는 m개의 상수값과 m+1개의 구간으로 나누어지며 이들은 2m+1개의 영역으로 구분되고 상수 영역은 해당 상수값을, 구간 영역은 무작위로 결정된 해당 구간의 값을 대표값으로 설정한다. 속성 선택체의 구조는 4개의 엔트리[비교상수값 리스트, 질의 활용비트열, 결과 상태비트열, 투플 카운트]로 구성된다.
1) 비교상수값 리스트: 2m+1개의 상수값 리스트로 m개의 상수영역에는 해당 상수값을 저장하고 m+1개의 구간영역은 비워둔다.
2)질의 활용비트열 b k , b k -1 ,..., b 1 :
Figure 112006008948537-PAT00006
의 k개의 연속질의들 각각에 대응되는 k개의 비트로 구성된 비트열로 각 비트 bj (1≤j≤k)는 속성 Ai에 대한 단위 선택조건이 질의 Qj에 사용되었는지를 나타낸다. 질의 Qj에 속성 Ai에 대한 단위 선택조건이 없으면 bj=1이고, 질의 Qj에서는 속성 Ai에 대한 단위 선택조건이 있으면 bj=0이 된다.
3)결과 상태비트열 d k , d k -1 ,..., d 1 : 속성 Ai의 도메인 범위에 있는 2m+1개의 영역 각각에 대해 해당 영역의 대표값을 속성 Ai의 값으로 설정하여 구한 k개의 연속 질의들의 만족 여부를 나타내는 비트열이다. 주어진 영역에서 속성 Ai의 값이 해당 영역의 대표값을 가질 때, 만약 질의 Qj에 속성 Ai와 관련된 단위 선택조건이 없거나 속성 Ai와 관련된 모든 단위 선택조건들을 만족할 경우 dj=1이 된다. 만약 질의 Qj가 위의 조건을 만족하지않을 경우 dj=0 이 된다.
4) 투플 카운트: 속성 선택체의 처리 순서를 결정할 때 정확한 속성 선택률을 알고 있다면 선택률이 낮은 속성 선택체부터 실행함으로 새로운 데이터 투플에 대한 처리를 불필요한 속성 선택체의 처리 없이 빨리 끝낼 수 있다. 그러나 속성 선 택률을 알 수 없다면 데이터 발생 시 샘플링 방법을 통해 속성 선택률을 구하게 되며 이를 위해 각 구간별로 데이터스트림 D에서 일정기간 동안 발생하였던 데이터 투플 중에 속성 Ai의 값이 해당 구간에 속한 데이터 투플의 빈도수 비율을 저장한다.
도 2는 데이터스트림 R(A,B)에 대해 정의된 세개의 연속질의
Figure 112006008948537-PAT00007
={Q1,Q2,Q3}에 대해 속성 A와 B별로 속성 선택체를 생성하는 방법을 예시한다. 연속질의들(201)을 각 질의에 사용된 속성별 단위 선택조건에 따라 구분한다(202). 속성 A는 질의 Q1과 Q2에만 사용되었으므로 속성 A의 질의 활용비트열 b3b2b1 = "100"가 되고 속성 B는 모든 질의에서 사용하므로 질의 활용비트열은 b3b2b1 = "000"이 된다. 속성 A의 선택조건 {R.A>20, R.A<30, R.A>80}에서 사용된 3개의 상수값 {20,30,80}(203)과 이들 상수값 사이의 4개의 구간들로 구분된 7개의 영역별로 각 영역의 대표값(204)에 대한 각 질의들 만족 여부를 검사하며 질의의 결과 상태비트열을 생성한다. 즉, 첫번째 구간의 대표값 "19"를 속성 A의 값으로 간주하여 질의들의 만족 여부를 구하면 Q1과 Q2는 만족하지 못하고 Q3는 사용되지 않았으므로 결과 상태비트열 d3d2d1 = "100"가 된다.
특정 속성의 속성 선택체 처리는 데이터스트림에 새로운 투플이 발생하면 새로 발생한 투플의 해당 속성의 값을 포함하는 속성 선택체 내의 영역에 정의된 결 과 상태비트열을 검색한다. 도 2에서 새로운 투플에서 속성 A의 값이 "25"일 경우(206) 질의들을 수행하기 전에 속성 선택체를 점검한다. 여기에서는 새로 발생한 투플의 속성 "A"의 상수값 "25"에 대해서는 "A"의 속성 선택체에서 비교상수값 리스트에서 "20"과 "30"의 구간에 속하는 상수값이기 때문에 해당 영역의 결과 상태비트열 d3d2d1 = "101"를 찾는다. 이는 새로 발생한 데이터 투플이 질의 Q1와 Q3의 선택조건은 만족하지만 Q2의 선택조건은 만족하지않는다는 뜻이다. 새로 발생하는 데이터 투플에 대한 영역을 탐색하기 위해서 비교상수값 리스트를 찾을 때, 이진 탐색(Binary Search) 방식을 사용한다. 속성 Ai에 2m+1개의 영역이 있으므로 평균 탐색 비용은 ○(log2(2m+1))이 된다.
결론적으로 연속질의들에 사용된 두 속성(A,B)에 대한 결과 상태비트열은 새로운 데이터 투플 t(A,B)=(25,29)가 발생하였을 때 속성 A와B의 속성 선택체에서 투플 t에 해당하는 영역을 찾고 영역의 결과 상태비트열을 "AND" 연산을 수행하면 새로 발생한 데이터 투플 t가 Q1의 선택조건만 만족하고 나머지 Q2,Q3의 선택조건들을 만족하지 않는다는 것을 질의들을 수행하지않고 속성 선택체만을 점검함으로써 그 결과를 알 수가 있다. 이렇게 속성 선택체는 다수의 질의들에 사용된 상수값과 상수값 사이의 구간에 대한 선택조건의 결과 정보를 미리 저장하고 있으므로 질의 처리 시간을 최소화할 수 있다.
도 3에서는 하나의 속성에 대해 속성 선택체를 생성하는 방법을 도시하였고 도 1에서는 연속질의들이 정의된 데이터스트림의 속성 선택체들을 생성하고 속성 선택체의 처리 순서를 찾는 방법을 도시하였다.
2. 속성 선택체의 처리 순서
다수의 연속질의들의 모든 선택조건들이 그룹 처리되어 있는 속성 선택체는 이들 질의들에 사용된 속성 수만큼 만들어지게 되며 새로운 데이터 투플이 발생하였을 때 이들 속성 선택체들의 처리 순서에 따라 처리비용의 차이가 많이 날 수 있다. 많은 가능한 순서 중 우선 고려해야할 것은 새로운 데이터 투플이 발생하였을 때 처리해야할 비용을 최소화하는 것이다. 단위 선택조건들이 "AND"연산으로 구성된 연속질의에서 새로운 데이터 투플이 이들 선택조건들 중에 하나만 만족하지 않으면 다른 단위 선택조건들의 만족 여부를 검사할 필요없이 해당 질의를 만족하지 못하므로 이 데이터 투플에 대한 처리는 더 이상 진행되지 않고 끝난다. 하지만 이와 같은 연속질의가 다수 존재할 경우 새로운 데이터 투플에 대해 모든 질의들의 결과가 모두 만족하지 않는 경우에만 더 이상의 처리없이 해당 투플의 처리를 끝낼 수 있다.
데이터스트림 D(A1,A2,...An)에는 최대 n개의 속성 선택체가 구성될 수 있으며 각 속성 선택체마다 질의 활용비트열은 다른것이 일반적이다. 데이터스트림에서 새로 발생한 데이터 투플에 대한 처리를 끝내기 위해서는 이 투플에 대한 모든 연속질의들의 만족 여부가 결정될 때 가능하다. 따라서 가능한 많은 질의들의 단위 선택조건에 사용된 속성 선택체를 먼저 점검하는 것이 유리하다. 즉, 질의 활용비트열에 "1"이 많은 속성 선택체를 먼저 처리하는 것이 유리하다. 이러한 특성을 고려하기 위해 가능한 많은 질의에 활용된 속성 순으로 우선적으로 처리함으로 불필요한 데이터 투플을 빨리 제거할 수 있다. 따라서 모든 질의들의 만족 여부를 검사할 수 있는 최소한의 속성 집합을 "최소속성 커버집합"이라고 정의한다. 즉, 이 속성 집합의 원소의 개수는 새로운 데이터 투플에 대한 처리를 끝내기 위해 반드시 점검해야될 최소의 속성 수이므로 적을수록 유리하다.
[정의 2]최소속성 커버집합
k개의 연속질의 집합
Figure 112006008948537-PAT00008
={Q1,Q2,...,Qk}에 대해 속성 Ai를 사용하는 단위 선택조건이 있는 p (p≤k)개의 질의들을 속성 Ai선택질의 집합이라고 정의하고 L(Ai)라고 표현한다. 데이터스트림 스키마 D(A1,...,An)에 사용된 모든 속성들의 집합을
Figure 112006008948537-PAT00009
={A1,...An}라고 하고
Figure 112006008948537-PAT00010
의 멱집합(Power Set)을
Figure 112006008948537-PAT00011
로 나타낼 때, 속성집합 a∈(
Figure 112006008948537-PAT00012
)에 있는 각 속성에 대한 선택질의 집합의 합집합이
Figure 112006008948537-PAT00013
가 되는 속성집합 a를 데이터스트림 D의 커버(Cover)집합이라고 정의한다. 즉, ∀Ai∈a,
Figure 112006008948537-PAT00014
. 이와 같은 커버집합의 원소 수가 최소인 집합을 최소속성 커버집합이라고 한다.
도 4에서는 최소속성 커버집합을 찾는 방법을 도시하였다. 최소속성 커버집 합을 찾기 위해서는 조합 알고리즘을 사용한다. 질의에 사용된 n개의 속성에서 r개의 속성을 선택하는 조합(nCr)으로 속성 선택체의 질의 활용비트열들을 "AND" 연산한 결과가 "0"이 될 때까지 r을 증가시켜 찾는다. "0"은 해당 질의에 속성이 활용되고 있다는 의미이다. 예를 들어 4개의 질의에 4개의 속성 A,B,C,D로 된 속성 선택체가 있을 경우 질의 활용비트열(b4b3b2b1)이 A는 "0011", B는 "1000", C는 "1001", D는 "0110"라고 가정하면 활용비트열이 "0000"인 속성, 즉 모든 질의에 사용된 속성이 없으므로 속성간의 조합을 통하여 모든 질의에 사용된 속성집합을 찾아야 하며 속성 간의 질의 활용비트열의 "AND" 연산이 "0000"이 되는 속성집합을 찾으면 된다. 따라서 속성의 개수가 2개인 {A,B},{C,D} 2개의 최소속성 커버집합을 구할 수 있다.
일반적으로 단위 선택조건의 선택률(Selectivity)은 대상 데이터 투플 대비 해당 단위 선택조건을 만족하는 투플 수로 정의된다. 두 속성이 속성 활용도가 동일하다면 속성에 표현된 단위 선택조건들의 선택률이 낮은 속성을 먼저 수행함으로 데이터 투플의 처리를 빨리 끝낼 수 있는 속성 처리 순서를 결정할 수 있다.
다수의 연속질의 처리에서는 속성마다 속성 활용도가 다른 경우가 대부분이기 때문에 최적의 속성 처리 순서를 찾기 위해 고려해야 하는 속성 활용도와 속성 선택률 중에서 속성 활용도의 영향을 제거하기 위해 질의 q에 속성 Ai에 대한 단위 선택조건이 없다면 그 질의 q에는 속성 Ai에 대해 항상 만족하는 단위 선택조건(즉, 선택률이 1인 조건)이 있다고 가정한다.
[정의 3]속성 선택률
데이터스트림 스키마 D(A1,...An)에 대해 표현된 k개의 연속질의 집합
Figure 112006008948537-PAT00015
={Q1,Q2,...,Qk}의 속성 Ai(1≤i≤n)에 대해 생성된 속성 선택체의 속성 선택률 S(Ai)은 다음과 같이 정의된다.
Figure 112006008948537-PAT00016
만약 질의 Qj에 속성 Ai에 대한 단위 선택조건이 없는 경우에는 S(Qj,Ai)=1이 되고 질의 Qj에 속성 Ai의 단위 선택조건이 있다면 S(Qj,Ai)의 값은 이 단위 선택조건의 선택률 s로 계산한다. 즉, S(Qj,Ai)=s이다.
도 5에서 속성 A의 속성 선택률은 질의 Q1과 Q2에는 단위 선택조건이 있고 Q3와 Q4에는 단위 선택조건이 없기 때문에 S(A)=(0.3+0.5+1+1)/4이고 속성 A의 속성 선택률은 0.7이 된다. 이와 동일하게 속성 B에 대한 속성 선택률을 계산해 보면 S(B)=0.65가 된다. 따라서 이 두 속성의 처리 순서는 속성 선택률이 낮은 {B→A}순으로 결정한다.
[정의 4]속성 순차 선택률
데이터스트림 스키마 D(A1,...An)에 대해 표현된 k개의 연속질의 집합
Figure 112006008948537-PAT00017
={Q1,Q2,...,Qk}로 생성된 속성 Ai(1≤i≤n)의 속성 선택체들에 대해 정해진 속성 순서 V= A1→A2→...→At (1≤i≤t)의 속성 순차 선택률 P(V)은 다음과 같이 정의된다.
Figure 112006008948537-PAT00018
만약 질의 Qj에 속성 Ai에 대한 단위 선택조건이 없는 경우에는 S(Qj,Ai)=1이 되고 질의 Qj에 속성 Ai의 단위 선택조건이 있다면 S(Qj,Ai)의 값은 속성 Ai의 단위 선택조건의 선택률 s로 계산한다. 즉, S(Qj,Ai)=s이다.
속성 선택체의 효율적인 처리 순서는 다수의 연속질의들에 사용된 모든 속성별 속성 선택체의 속성 선택률을 구해서 가장 낮은 속성 선택률을 가지는 속성을 순서상 맨 앞에 놓는다. 순서상 맨 앞의 속성이 정해지면 속성 순차 선택률을 통해 순차적인 조건 선택률이 가장 낮은 순으로 속성의 처리 순서를 결정한다. 이때, 속성 선택체의 처리 순서를 결정하는데 있어서 좀 더 효율적인 처리 순서를 결정하기 위해서는 최소속성 커버집합과 속성 순차 선택률을 동시에 적용한다.
도 6에서 표현된 방법과 같이 이를 단계별로 정리하면 다음과 같다.
단계 1. 최소속성 커버집합을 찾는다(601).
단계 2. 최소속성 커버집합이 다수 개인 경우에는 속성 순차 선택률이
가장 작은 집합을 선택한다(602).
단계 3. 현재 선택된 속성과 나머지 속성에 대하여 각각의 속성 순차 선택률 을 구하여 이중 가장 낮은 속성 순차 선택률을 가지는 속성을 선택한다(603).
단계 4. 모든 속성들에 대한 순차적인 순서를 찾을 때까지 단계 3를 반복한다(604).
도 5에서는 속성 선택체의 처리 순서를 결정하는 예를 보여준다. 모든 질의에 관련된 속성이 없으므로 질의 활용비트열를 이용한 최소속성 커버집합을 구한다. 도 5에서는 {A,B},{C,D}인 2개의 최소속성 커버집합을 구할 수가 있다. 최소속성 커버집합에 대한 속성 순차 선택률을 구하면 P(A→B)=0.35이고 P(C→D)= 0.2가 된다. 따라서 2개의 최소속성 커버집합 중 {C.D}를 처리 순서상에 맨 앞에 놓는다. 나머지 속성들에 대해 각각 속성 순차 선택률을 구하면 P(C→D→A)=((0.2*1*0.3)+(1*0.1*0.5)+(0.1*1*1)+(1*0.4*1))/4=0.1525이고 P(C→D→B)=((0.2*1*1)+(1*0.1*0.5)+(0.1*1*1)+(1*0.4*1))/4=0.105이다. 따라서 도 5에서는 {C→D→B}순서가 최소이므로 가장 효율적인 속성 선택체의 최종 처리 순서는 {C→D→B→A}가 된다.
3. 실행 시 조건 선택률 수집과 동적 순서 결정
연속질의들의 단위 선택조건 선택률을 알 수 없는 경우는 속성 선택체를 통하여 속성 선택률을 수집하여 속성 순차 선택률을 새롭게 구하여 그 순서를 동적으로 재결정할 수 있다. 샘플링(Sampling) 기법으로 속성 선택체의 해당 구간에 적중한 투플의 수를 기록하면 속성 선택체의 각 구간에서 각각의 질의가 만족된 경우 의 투플 수를 더하여 샘플링 투플 수로 나누어 주면 해당 속성 조건과 질의에 대한 단위 선택조건의 선택률 (S(Qj,Ai))을 수집할 수 있다. 샘플링되는 투플은 중간에 필터되지 않고 모든 속성 선택체를 처리하기 때문에 불필요한 오버헤드가 발생한다. 또한 데이터 변화에 대한 적응성(Adaptivity)을 부여하기 위하여 각 속성의 속성 순차 선택률을 특정 수의 데이터 투플을 처리한 후 이전의 값과 비교한 뒤 그 차이가 임의의 미리 결정된 이탈 기준치 임계값(threshold)을 초과할 경우 순서를 재결정한다. 즉 정해진 속성 순서 V에 대해 이전의 속성 순차 선택률을 P prev (V)라 하고 현재의 속성 순차 선택률을 P cur (V)라 하면 다음과 같은 조건이 만족될 때 속성 순서를 재결정한다.
Figure 112006008948537-PAT00019
4. 불필요한 조건 색인 구조체의 회피
새로 발생한 데이터 투플의 처리가 주어진 속성 선택률의 순서로 진행될 때 한 속성 선택체를 점검하고 다음 속성 선택체를 진행하기 전에 현재까지 처리한 모든 속성 선택체의 결과 상태비트열들을 "AND" 연산으로 누적한 비트열을 전역 상태비트열이라고 정의한다. 전역 상태비트열의 모든 비트값이 "0"이 되는 경우, 즉 새로 발생한 투플에 대한 모든 질의의 만족 여부가 주어진 속성 처리 순서에서 현재까지 처리한 속성 선택체들만으로도 충분히 결정되어 남은 속성 선택체의 처리가 불필요하게 된 상태이므로 이 투플에 대한 처리는 미리 종료할 수 있다. 또한 전역 상태비트열과 다음 속성 선택체의 질의 활용비트열과의 "AND" 연산 결과가 이 연산 전의 전역 상태비트열과 같다면 해당 속성 선택체에는 지금까지 만족 되지않은 질의에 대한 선택조건이 없다는 것을 의미하므로 이 속성 선택체는 처리할 필요가 없고 속성 선택체 처리 순서에서 해당 속성 선택체의 처리를 건너뛰고(Skip) 다음 속성 선택체를 수행하면 더욱 효율적이다. 도 7에서는 단위 선택조건의 선택률을 동적으로 수집하는 단계와 불필요한 속성 선택체를 건너뛰는 방법을 도시하였다.
다수의 연속질의들의 모든 선택조건들을 색인하게 되면 중복 처리를 방지하고 처리 결과를 공유할 수 있기 때문에 연속질의에 대한 처리시간과 메모리 소비를 최소화하면서 신속한 처리가 가능하다. 속성 선택체 처리 방식은 데이터스트림에서 발생하는 데이터 투플의 예상 가능한 모든 데이터 값별로 처리된 결과가 미리 저장되어 있기 때문에 실행 시 질의의 복잡성과 연산자의 처리 비용을 전혀 고려할 필요가 없다. 따라서 다른 처리 방법에 비해 특히 복잡한 질의나 연산자의 처리 비용이 높은 경우에 그 차이는 크게 된다. 속성별로 선택조건들이 색인되어 있는 속성 선택체의 처리 순서는 가능한 새로운 투플에 대한 처리를 최소화하는 속성 선택체 순서를 단위 선택조건의 선택률에 기반하여 찾는 방법을 제시하였고, 선택률이 유동적으로 변할 경우 샘플링을 통하여 속성의 단위 선택조건의 선택률을 동적으로 수집하고 속성 순차 선택률을 구하여 속성 선택체 실행 순서를 적응적으로 변경하 는 방법을 제시한다. 이는 데이터스트림에서 연속질의들의 선택조건들을 효율적으로 처리될 수 있게 한다.

Claims (3)

  1. 실시간적으로 빠르게 유입되는 비한정적인 데이터스트림을 대상으로 다수의 연속질의들을 수행하는 방법에 있어서,
    다수의 연속질의들에 표현된 모든 선택조건들을 색인하기 위해 각 속성별로 선택조건들에 사용된 서로 다른 상수값과 상수값 사이의 구간의 대표값들로 해당 속성의 도메인 범위를 영역별로 구분하여 질의 처리 결과를 질의 등록 시에 속성 선택체를 통해 미리 찾아 저장하고,
    상기 속성 선택체의 데이터 구조를 이용하여 질의 처리 성능을 극대화하기 위하여 모든 연속질의들의 선택조건들이 하나 이상 포함되면서 최소개의 속성 구조체들로 구성되는 최소속성 커버집합을 최우선으로 처리하며,
    상기 최소속성 커버집합과 속성 순차 선택률을 이용하여 속성들에 대한 속성 선택체들의 최적의 순서를 결정하고, 단위 선택조건의 선택률은 속성 선택체를 통하여 질의에 대한 속성의 단위 선택조건의 선택률을 수집하는 것을 특징으로 하는 데이터스트림 관리 시스템에서 다수의 연속질의에 표현된 선택조건들의 효율적인 처리방법.
  2. 제 1 항에 있어서,
    상기 최소속성 커버집합과 속성 순차 선택률을 적용하여 결정된 순서에서 현재까지의 결과 상태비트열을 누적하면서 순서상 다음 속성 선택체의 질의 활용비트 열과의 연산을 통하여 불필요한 속성 선택체의 수행을 건너뛰는 것을 특징으로 하는 데이터스트림 관리 시스템에서 다수의 연속질의에 표현된 선택조건들의 효율적인 처리방법.
  3. 다수 연속질의들의 모든 선택조건들을 색인하고 질의의 결과를 저장하기 위한 속성 선택체에서 유지되는 4개의 엔트리로 이루어지며, 상기 엔트리는 질의의 단위 선택조건에 사용된 비교상수 값 리스트, 속성이 해당 질의에 사용 유무를 표현한 비트열인 질의 활용비트열, 속성 도메인의 각 영역별로 연속질의들의 만족 여부 상태를 표현한 결과 상태비트열, 영역을 만족하는 데이터 투플의 빈도를 갖는 투플 카운트로 이루어지는 것을 특징으로 하는 데이터스트림 관리 시스템에서 다수의 연속질의에 표현된 선택조건들의 효율적인 처리장치.
KR1020060011575A 2006-02-07 2006-02-07 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법 KR100810257B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060011575A KR100810257B1 (ko) 2006-02-07 2006-02-07 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060011575A KR100810257B1 (ko) 2006-02-07 2006-02-07 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법

Publications (2)

Publication Number Publication Date
KR20070080350A true KR20070080350A (ko) 2007-08-10
KR100810257B1 KR100810257B1 (ko) 2008-03-11

Family

ID=38600744

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060011575A KR100810257B1 (ko) 2006-02-07 2006-02-07 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법

Country Status (1)

Country Link
KR (1) KR100810257B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100924370B1 (ko) * 2008-03-21 2009-10-30 고려대학교 산학협력단 셀 상태 값을 이용한 연속 스카이라인 질의 방법, 그시스템 및 이를 기록한 기록매체
US8954460B2 (en) 2012-01-18 2015-02-10 Samsung Electronics Co., Ltd. Apparatus and method for scheduling user defined operator (UDO) in data stream management system (DSMS)
US9009157B2 (en) 2009-11-19 2015-04-14 Samsung Electronics Co., Ltd. Apparatus and method for processing a data stream

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101959562B1 (ko) 2012-07-03 2019-03-18 삼성전자 주식회사 데이터 스트림에서 효율적인 다중 연속 집계 질의 처리 장치 및 방법
KR102599008B1 (ko) * 2022-09-29 2023-11-07 스마트마인드 주식회사 멀티-쿼리 스케줄러를 기반으로 멀티-쿼리를 처리하는 방법 및 이러한 방법을 제공하는 데이터 처리 시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495600A (en) 1992-06-03 1996-02-27 Xerox Corporation Conversion of queries to monotonically increasing incremental form to continuously query a append only database
KR100670208B1 (ko) * 2004-12-15 2007-01-16 한국전자통신연구원 Xml 형태로 표현된 스트리밍 데이터 처리를 위한xml 질의어 기반 연속 질의 언어 처리 시스템 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100924370B1 (ko) * 2008-03-21 2009-10-30 고려대학교 산학협력단 셀 상태 값을 이용한 연속 스카이라인 질의 방법, 그시스템 및 이를 기록한 기록매체
US9009157B2 (en) 2009-11-19 2015-04-14 Samsung Electronics Co., Ltd. Apparatus and method for processing a data stream
US8954460B2 (en) 2012-01-18 2015-02-10 Samsung Electronics Co., Ltd. Apparatus and method for scheduling user defined operator (UDO) in data stream management system (DSMS)

Also Published As

Publication number Publication date
KR100810257B1 (ko) 2008-03-11

Similar Documents

Publication Publication Date Title
WO2021052177A1 (zh) 日志解析方法、装置、服务器和存储介质
US20040093329A1 (en) Database system and query optimiser
US8745037B2 (en) Exploiting partitioning, grouping, and sorting in query optimization
US20210397619A1 (en) Processing techniques for queries where predicate values are unknown until runtime
US20070233720A1 (en) Lazy bulk insertion method for moving object indexing
KR100810257B1 (ko) 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법
AU2002229734A1 (en) Database system and query optimiser
Zhang et al. TARDIS: Distributed indexing framework for big time series data
WO2014210218A1 (en) Incremental maintenance of range-partitioned statistics for query optimization
CN106383830B (zh) 一种数据检索方法及设备
US20180276264A1 (en) Index establishment method and device
Xin et al. Computing iceberg cubes by top-down and bottom-up integration: The starcubing approach
EP1341098A2 (en) Getpage - Workload based Index Optimizer
US10970295B2 (en) Collecting statistics in unconventional database environments
Silva et al. Database similarity join for metric spaces
CN106909624A (zh) 一种海量数据实时排序优化方法
Mishra et al. Entity matching technique for bibliographic database
Holanda et al. Cracking KD-Tree: The First Multidimensional Adaptive Indexing (Position Paper).
CN110191005B (zh) 一种告警日志处理方法及系统
KR101237736B1 (ko) 데이터 스트림에서의 다중 조인 질의 처리 방법
KR101515304B1 (ko) 하둡 기반의 리듀스-사이드 조인 처리 시스템의 리듀스-사이드 조인 질의 처리 방법
CN113568931A (zh) 一种数据访问请求的路由解析系统及方法
Thi-To-Quyen et al. Improving hamming distance-based fuzzy join in mapreduce using bloom filters
Sakr et al. Centralized RDF query processing
Hose et al. Processing Top-N Queries in P2P-based Web Integration Systems with Probabilistic Guarantees.

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
FPAY Annual fee payment

Payment date: 20121126

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140408

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150429

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160202

Year of fee payment: 9