KR100472949B1 - 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법 - Google Patents

시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법 Download PDF

Info

Publication number
KR100472949B1
KR100472949B1 KR10-2001-0064302A KR20010064302A KR100472949B1 KR 100472949 B1 KR100472949 B1 KR 100472949B1 KR 20010064302 A KR20010064302 A KR 20010064302A KR 100472949 B1 KR100472949 B1 KR 100472949B1
Authority
KR
South Korea
Prior art keywords
node
query
window
tree
index
Prior art date
Application number
KR10-2001-0064302A
Other languages
English (en)
Other versions
KR20030032498A (ko
Inventor
유한양
배명남
김상욱
박대현
이헌길
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR10-2001-0064302A priority Critical patent/KR100472949B1/ko
Publication of KR20030032498A publication Critical patent/KR20030032498A/ko
Application granted granted Critical
Publication of KR100472949B1 publication Critical patent/KR100472949B1/ko

Links

Abstract

본 발명의 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법은 질의 윈도우 점을 위한 R-트리를 주기억장치 내에 생성하고 디스크로부터 데이터 윈도우 점들을 위한 R-트리의 노드를 액세스하여 상기 노드에 포함된 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 범위로 하는 범위 질의를 상기 질의 윈도우 점을 위한 R-트리에 수행한다. 이로써, 각 노드에 대한 액세스 여부를 결정하여 필요한 노드를 액세스하여 범위 질의로 리턴되는 질의 윈도우 점과 상기 엔트리에 대응되는 점의 쌍을 윈도우-조인을 활용하여 인덱스 검색결과로 반환하는 효과적인 인덱스 방법에 관한 것이다.
본 발명에 따르면, 본 발명에 따르면, 디스크로부터 각 노드는 한번만 액세스되므로 액세스되는 횟수를 줄이고 다차원 인덱스 검색 비용을 줄일 수 있고 인덱스 단계의 착오 채택을 미연에 방지한다.

Description

시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법{A METHOD FOR SEARCHING AN INDEX FOR SUBSEQUENCE MATCHING IN TIME-SERIES DATABASES}
본 발명은 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법에 관한 것으로 보다 상세하게는, 질의 윈도우 점을 위한 새로운 R-트리를 주기억장치에 생성하고 디스크 내의 데이터 윈도우 점을 위한 R-트리의 노드를 액세스하여 상기 노드에 포함된 엔트리에 대해 범위 질의를 상기 질의 윈도우 점의 R-트리에 수행한 후 이 결과로부터 윈도우-조인을 통해 인덱스 검색의 결과를 반환하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 방법에 관한 것이다.
최근 컴퓨터 기술이 발전함에 따라 시계열 데이터를 활용하고자 하는 연구가 활발하게 진행되고 있으며 또한, 실제로 주식 데이터, 의료 데이터, 환율변동 데이터 등과 같은 다양한 분야에서 많은 양의 시계열 데이터가 이용되고 있다.
일반적으로 시계열 데이터베이스(time-series database)는 시간별로 측정된 개체의 값을 연속적으로 구성한 시계열 데이터를 저장하는 데이터베이스를 의미한다. 이러한 시계열 데이터베이스에 저장된 시계열 데이터를 데이터 시퀀스라 하며 질의 시퀀스는 사용자에 의해 주어지는 검색하고자 하는 패턴의 시퀀스를 의미한다. 상기와 같이 사용자에 의해 질의 시퀀스와 유사한 데이터 시퀀스를 데이터베이스에서 검색하는 것을 유사 시퀀스 매칭이라 한다. 상기 시계열 데이터에 대한 유사 시퀀스 매칭은 시계열 데이터베이스를 기반으로 하는 새로운 응용분야인 데이터 마이닝(data mining) 및 데이터 웨어하우징(data warehousing) 분야에서 중요한 연산으로 사용된다.
일반적으로 길이 n인 시퀀스는 n개의 엔트리로 구성된 배열을 의미하고 하나의 시퀀스가 다른 시퀀스의 일부분인 경우 전자는 후자의 서브시퀀스가 된다.
유사 시퀀스 매칭은 크게 전체 매칭과 서브시퀀스 매칭으로 분류된다. 상기 전체 매칭은 모든 데이터 시퀀스들과 질의 시퀀스의 길이가 항상 동일하다는 전제하에 상기 질의 시퀀스와 유사한 시퀀스를 데이터베이스로부터 검색하는 것을 말한다. 반면, 상기 서브시퀀스 매칭은 다양한 길이의 데이터 시퀀스들이 존재하는 것을 허용하며 데이터베이스로부터 질의 시퀀스와 유사한 서브시퀀스의 오프셋을 검색한다. 이와 같이 서브시퀀스 매칭은 길이에 대한 제약이 없으므로 다양한 실제 응용 분야에서 널리 사용된다.
서브시퀀스 매칭의 처리과정은 사용자에 의해 주어지는 질의 시퀀스와 유사한 서브시퀀스를 검색하는 인덱스 검색과정과 상기 검색되어 반환된 서브시퀀스에 대한 액세스를 실행하여 상기 검색된 서브시퀀스와 상기 질의 시퀀스의 유사성을 비교하여 최종적인 결과를 다시 사용자에게 되돌려주는 후처리과정으로 나누어 진다. 상기 인덱스 검색과정에서 임의의 시퀀스와 유사한 서브시퀀스를 검색하는 방법으로는 두 시퀀스간의 거리가 설정된 유사 허용치 이하이면 '유사하다'고 간주한다. 상기 거리 계산방법은 다양하게 적용될 수 있으나 본 발명에서는 특정한 거리 계산방법에 한정되지 않는다. 그러나, 이하에서 본 발명의 이해를 돕기 위해 거리 계산방법의 일실시예를 들어 유사 서브시퀀스 매칭을 설명한다. 예를 들어, 시계열 데이터베이스 D, 길이 n의 질의 시퀀스 Q = (q[0], q[1], ..., q[n-1]), 그리고 유사 허용치 ε이 주어질 때, 서브시퀀스 매칭 문제는 다음과 같이 정의된다.
D에 저장된 길이 N의 임의의 시퀀스 S = (s[0], s[1], ..., s[N-1]) 내에 존재하는 길이 n의 임의의 서브시퀀스 X = (x[0], x[1], ..., x[n-1])가 하기 수식 1의 조건을 만족하면, 상기 서브시퀀스 X와 상기 질의 시퀀스 Q는 '유사하다'고 간주한다.
[수식 1]
상기 수식 1에서 d(X,Q)는 유클리드 거리(Euclidean distance)라 하며 상기 유클리드 거리가 주어진 유사 허용치 ε이하인 경우, 상기 서브시퀀스 X와 상기 질의 시퀀스 Q를 유사하다고 간주한다.
서브시퀀스 매칭을 위한 해결 방법에서는 통상적으로 미리 고정된 크기 w를 갖는 윈도우(window) 개념을 이용한다. 상기 윈도우(window)는 시퀀스를 분할하는 단위로서, 분할하는 방법에 따라 슬라이딩 윈도우(sliding window)와 디스조인트 윈도우(disjoint window)로 구분한다. 상기 슬라이딩 윈도우는 시퀀스의 가능한 모든 위치를 시작 위치로 하여 구성한 윈도우를 의미하며 상기 디스조인트 윈도우는 윈도의 크기의 배수가 되는 위치를 시작 위치로 하여 구성한 윈도우를 의미한다.
도 1은 상기한 시퀀스를 윈도우로 분할하는 예시도를 도시한 것이다. 도 1(a)는 시퀀스를 슬라이딩 윈도우로 분할하는 방법에 대한 예시도를 나타낸 것으로서 시퀀스(11)를 크기가 4인 슬라이딩 윈도우(12)들로 나눈 예이다. 도 1(a)에 도시된 바와 같이 시퀀스(11)의 크기가 12이고 슬라이딩 윈도우(12)의 크기가 4 인 경우, 상기 분할된 슬라이딩 윈도우(12)의 개수는 9개(=12-4+1)가 된다. 도 1(b)는 시퀀스를 디스조인트 윈도우로 분할하는 방법에 대한 예시도를 나타낸 것으로서 시퀀스(13)를 크기가 4인 디스조인트 윈도우(14)들로 나눈 예이다. 도 1(b)에 도시된 바와 같이 시퀀스(13)의 크기가 12이고 디스조인트 윈도우(14)의 크기가 4 인 경우 상기 분할된 디스조인트 윈도우(14)의 개수는 3개(=12/4)이다.
이하, 종래의 시계열 데이터에 대한 유사 서브시퀀스 매칭방법을 간략하게 설명한다. 참고문헌 [Fal94] C. Faloutsos, M, Ranganathan, and Y. Manolopoulos, "Fast Subsequence Matching in Time-series Databases," In Proc. Int'l. Conf. on Management of Data, ACM SIGMOD, pp. 419-429, May 1994. 의 논문에서는 상기한 윈도의 개념을 이용하여 서브시퀀스 매칭방법을 제안하였다.
상기 논문을 참조하면, 각 시퀀스로부터 모든 가능한 위치에서 시작되는 길이 w의 슬라이딩 윈도우들을 추출하고 각 윈도우를 이산 퓨리에 변환(discrete Fourier transform; DFT)을 이용하여 저차원 공간상의 점으로 변환한다. 상기 논문에서는 이 점을 데이터 윈도우 점(data window point)이라 정의한다. 도 1에서 알 수 있듯이 슬라이딩 윈도우로 추출하기 때문에 인덱싱의 대상이 되는 윈도우 점들의 수가 매우 많다. 그래서, FRM에서는 이들을 다수의 점들을 포함하는 최소 포함 사각형(minimum bounding rectangle;MBR)들로 구성한 후, 상기 MBR들을 다차원 인덱스(multidimensional index)의 하나인 R-트리에 저장한다.
서브시퀀스 매칭을 위해서는 인덱스 검색과정에서 질의 시퀀스로부터 크기 w의 디스조인트 윈도우들을 추출하고 윈도우들을 DFT하여 저차원 공간상의 윈도우 점(이를 '질의 윈도우 점(query window point)'이라 함)들로 변환하고 상기 각 윈도우 점에 대하여 ε/ p1/2를 허용치로 갖는 범위 질의를 R-트리 상에서 수행한다. 여기서, 상기 p = (질의 시퀀스 길이 / w) 이다. 이러한 범위 질의의 결과로 얻어진 데이터 윈도우 점들을 조사함으로써 최종 결과에 포함될 가능성이 높은 후보 서브시퀀스(candidate subsequence)들을 파악한다. 이어, 후처리 과정에서 상기 후보 서브시퀀스들이 속하는 실제 데이터 시퀀스를 디스크로부터 액세스하여 상기 후보 서브시퀀스들과 질의 시퀀스와의 유클리드 거리를 실제로 계산하여 최종적인 진위를 판단하게 된다.
그러나, 상기 방법은 인덱스 검색을 위한 저장 공간의 오버헤드를 줄이기 위하여 개별적 윈도우 점들 대신 다수의 윈도우 점들을 포함하는 MBR들을 R-트리 내에 저장한다. 이러한 MBR 내부에는 죽은 공간(dead space)이 존재하게 되므로 이로 인하여 후보 서브시퀀스의 착오 채택(false alarm)이 발생되며 이것은 곧 처리 성능 저하를 초래하는 문제점이 있었다.
이러한 문제를 극복하기 위한 한 예로서, 참고문헌 [Moo01] Y. S. Moon, K, Y. Whang, W. K. Loh, "Duality-Based Subsequence Matching in Time-Series Databases," In Proc. IEEE Int'l Conf. on Data Engineering, IEEE ICDE, pp. 263-272, 2001. 의 논문에 이원성 기반 서브시퀀스 매칭(이하, 'Dual-Match'라 함)이 제시되어 있다. 상기 참고문헌을 참조하면, 데이터 시퀀스로부터 슬라이딩 윈도우를 추출하고 질의 시퀀스로부터 디스조인트 윈도우를 추출하는 FRM과는 반대로 데이터 시퀀스로부터 디스조인트 윈도우를 추출하고 질의 시퀀스로부터는 슬라이딩 윈도우를 추출하는 방식을 사용한다. 이와 같은 역할 교환을 통해 상기 Dual-Match에서는 도 1에서도 알 수 있듯이 R-트리에 저장할 윈도우들의 수를 FRM의 약 1/w로 줄일 수 있다. 이 결과, MBR들을 저장하는 FRM과는 달리 상기 Dual-Match에서는 윈도우 점 자체를 R-트리에 저장하는 것이 가능해 진다. 따라서 MBR 내의 죽은 공간으로 인한 후보 서브시퀀스의 착오 채택이 발생하지 않으므로 처리 성능이 개선된다.
그러나, 상기 Dual-Match에서는 질의 시퀀스로부터 슬라이딩 윈도우를 추출하므로 도 1에서도 알 수 있듯이 상기한 FRM에서와는 달리 무수히 많은 개수의 질의 윈도우 점들이 생성된다. 예를 들어, 질의 시퀀스의 크기가 1024 이고 질의 윈도우의 크기가 256 인 경우 생성되는 질의 윈도우의 수는 769 개(=1024-256+1)이다. 상기 생성되는 모든 질의 윈도우 점들에 대하여 각각 영역 질의를 수행하므로 윈도우 점들의 개수만큼 R-트리를 검색해야 하므로 디스크 액세스 횟수가 증가했으며 특히, 공간상에서 인접한 많은 윈도우 점들에 대한 인덱스 검색은 동일한 인덱스 페이지를 여러 번 디스크로부터 액세스하도록 하기 때문에 비용이 많이 들었다.
또한, 영역 질의에서 사용되는 MBR(이하, '질의-MBR'이라 함) 내에 존재하는 죽은 영역(dead space)으로 인하여 후보 서브시퀀스의 착오 채택이 발생할 수 있었다. 즉, 질의-MBR 내의 죽은 영역으로 인하여 임의의 질의 윈도우 점과 허용치 ε/ p1/2 을 초과되는 거리에 존재하는 R-트리 내의 MBR이 ε/ p1/2 이내의 거리로 간주됨으로써 액세스되지 않던 인덱스 페이지들을 추가로 액세스하는 경우가 발생하였다. 이런 문제를 인덱스 단계의 착오 채택(index-level false alarm)이라 한다. 상기 Dual-Match에서는 모든 질의 윈도우 점들이 주기억장치 내에서 관리된다는 점을 활용하여 상기 문제를 완화시키는데 즉, 인덱스 검색을 통하여 후보로 반환되는 각 데이터 윈도우 점이 실제로 질의 윈도우 점과 ε/ p1/2 이하의 거리 내에 존재하는가를 인덱스 검색 단계에서 직접 확인하는 것이다. 상기 논문에서는 상기 과정을 인덱스 단계 여과(index-level filtering)라 한다. 그러나, 상기 인덱스 단계 여과에서 CPU 오버헤드가 발생한다. 즉, 질의-MBR에 의해 반환되는 각각의 후보 데이터 윈도우 점은 최악의 경우 모든 질의 윈도우 점들과 비교를 수행하는 인덱스 수준 여과를 거쳐야 하는데, 큰 질의-MBR에 의해 반환되는 후보 윈도우 점들의 수는 매우 많으므로, 이러한 CPU 오버헤드 역시 전체 처리 성능을 떨어뜨리는 중요한 원인이 되었다
상기 Dual-Match에서는 상기 두 문제를 해결하기 위한 절충안을 제시하였는데, 다수의 윈도우 점들을 포함하는 다수의 질의-MBR들에 대하여 각각 영역 질의를 수행하는 방법이다. 상기 방법에서는 형성되는 질의-MBR들의 개수만큼 인덱스 검색이 발생된다.
상기 질의-MBR을 생성하는 방법으로는 모든 질의-MBR이 같은 수의 윈도우 점들을 포함하도록 하는 방법과 질의-MBR의 수와 죽은 영역의 크기를 동시에 최소화하는 휴리스틱 방법 등 상기 전자의 논문 [Fal94]에 제시한 방법을 이용할 수도 있다. 상기 방법은 상기한 문제점들을 다소 완화시키는 경향이 있으나, 상기한 문제점들 예를 들어, 같은 인덱스 페이지를 다수 액세스하는 문제, 인덱스 단계의 착오 채택 문제, 인덱스 수준 여과에서의 CPU 오버헤드 문제 등을 모두 가지고 있어 근본적인 해결방법이 될 수 없었다.
따라서, 상기 문제점을 해결하기 위해 안출된 것으로서 본 발명은 질의 윈도우 점을 위한 R-트리를 주기억장치에 새로이 구성하고 디스크 내에 존재하는 데이터 윈도우 점을 위한 R-트리의 노드들을 액세스하여 상기 노드들에 포함된 엔트리에 대해 확장된 범위로 범위 질의를 수행하여 유사한 질의 윈도우 점을 찾아내도록 함으로써 디스크에 액세스하는 횟수를 줄이고 착오 채택의 발생을 방지하는데 그 목적이 있다.
또 다른 목적은, 질의 윈도우들을 위한 인덱스와 데이터베이스 내의 인덱스를 조인함으로써 인덱스 검색 과정을 처리하는 방법을 제공하는데 있다.
나아가, 또 다른 목적은 동일한 노드를 단 한번만 디스크로부터 액세스하는 방법을 제공하는데 있다.
상기 목적을 달성하기 위한 구성수단으로서의 본 발명은, 질의 시퀀스와 유사한 데이터 시퀀스의 서브시퀀스를 검색하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색 방법에 있어서,
질의 윈도우 점들을 위한 제1 R-트리를 주기억장치 내에 생성하는 제1 단계;
디스크 내의 데이터 윈도우 점들을 위한 제2 R-트리의 노드를 액세스하여 상기 노드에 포함된 엔트리가 표현하는 엠비알(MBR)을 범위로 하는 범위 질의를 상기 제1 R-트리에 수행하는 제2 단계;
상기 노드가 리프 노드인지 중간 노드인지를 판단하는 제3 단계;
상기 제3 단계에서 리프 노드이면 상기 범위 질의의 수행 결과로 리턴되는 질의 윈도우 점과 상기 엔트리에 대응하는 데이터 윈도우 점의 쌍을 인덱스 검색 결과로 반환하고 다른 노드를 액세스하는 제4 단계;
상기 제3 단계에서 중간 노드이면 상기 엠비알에 적어도 하나의 질의 윈도우 점이 포함되는지 판단하는 제5 단계; 및
상기 제5 단계에서 적어도 하나의 질의 윈도우 점이 포함된 것으로 판단되면 상기 중간 노드의 하위 노드를 액세스하고 상기 제5 단계에서 질의 윈도우 점이 포함되지 않은 것으로 판단되면 다른 노드를 액세스하는 제6 단계를 포함하여 상기 제2 단계 내지 상기 제6 단계를 반복 실행한다.
본 발명은 질의 윈도우 점을 디스크 내의 데이터 윈도우 점을 위한 R-트리에 던져 상기 질의 윈도우 점과 유사한 데이터 윈도우 점을 검색하는 것이 아니라 그와 반대로 질의 윈도우 점을 위한 새로운 R-트리를 주기억장치에 생성하고 상기 데이터 윈도우 점을 위한 R-트리의 노드를 액세스하여 상기 노드에 포함된 엔트리에 대해 범위 질의를 상기 질의 윈도우 점의 R-트리에 수행한 후 이 결과로부터 윈도우-조인을 통해 인덱스 검색의 결과를 반환하는 방법에 관한 것이다.
본 발명의 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색 방법은 기존의 Dual-Match를 기반으로 한다. 질의 시퀀스로부터 슬라이딩 윈도우를 추출하여 주기억장치 내에 온더플라이(on-the-fly)로 새로운 R-트리를 구성하고 데이터 시퀀스들로부터 디스조인트 윈도우를 추출하여 디스크 내에 구성한 기존의 R-트리의 엔트리와의 거리가 허용치 이내인 상기 새로이 구성된 R-트리의 점들을 검색함으로써 서브시퀀스 매칭의 인덱스 검색과정에서 발생하는 상기 디스크로부터의 액세스 횟수를 최소화하는 서브시퀀스 매칭의 인덱스 검색 방법이다.
따라서, 본 발명은 질의 시퀀스로부터 슬라이딩 윈도우를 추출하여 질의 윈도우 점들로 변환한 후 주기억장치 내에 R-트리를 새로이 구성하고 데이터 윈도우 점들을 위한 디스크 내의 R-트리의 각 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 구성하며 상기 주기억장치의 R-트리에 상기 e-MBR의 범위로 범위 질의를 수행하여 상기 e-MBR의 질의 범위 내에 포함된 질의 윈도우 점과 상기 각 엔트리에 대응되는 점의 쌍을 윈도우 조인을 통해 검색 결과로 반환한다. 이로써 디스크로부터 동일한 노드를 두 번 이상 액세스하지 않으므로 액세스하는 횟수를 최소화 할 수 있다.
상기 윈도우-조인은 본 발명에 따른 서브시퀀스 매칭의 인덱스 검색과정에서 사용되는 방법으로서, 데이터 윈도우 점들의 집합 Dw와 질의 윈도우 점들의 집합 Qw를 대상으로 상호 ε/ p1/2 이하의 거리를 가지는 <데이터 윈도우 점, 질의 윈도우 점>의 쌍들의 집합을 갖는 공간 조인 문제로 정의한다.
일반적으로 두 개의 데이터 집합에 대한 공간 조인을 효과적으로 처리하는 문제는 지리정보시스템(geographic information system: GIS) 및 공간 데이터베이스 분야의 중요한 문제의 하나로 간주되어 왔다. 현재까지 알려진 가장 효과적인 방법의 하나는 대상이 되는 두 집합에 다차원 인덱스가 존재한다는 가정 하에 인덱스 기반 공간 조인을 수행하도록 하는 것이다.
이하, 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 2는 일반적인 R-트리의 구조적 계층을 도시한 것이다. 도 2에 도시된 바와 같이, 상기 R-트리의 구성요소를 노드(node)라 하며 상기 각 노드는 윈도우 점에 대한 엔트리를 포함한다. 상기 엔트리 내에는 하위 노드에 대한 정보를 포함한다. 또한, 최상위 노드를 루트 노드(21)라 하며 상기 루트 노드의 하나 이상의 중간 노드(22)를 포함하고 있다. 최하위 노드를 리프 노드(23)라 한다. 상기 루트 노드(21)에서 각 리프 노드(23)까지의 거리는 동일하며 각 중간 노드(22)는 동일한 개수의 하위 중간 노드(22)를 가진다.
먼저, 본 발명에 따른 윈도우-조인을 실행하기 위해서는 상기한 바와 같이 질의 윈도우 점들을 위한 R-트리를 구성한다. 즉, 데이터 윈도우 점들의 집합 Dw에는 R-트리가 존재하지만 질의 윈도우 점들의 집합 Qw에는 다차원 인덱스가 존재하지 않아 효과적인 공간 조인을 수행이 어렵기 때문에 본 발명에서는 상기 Qw를 위한 다차원 인덱스를 주기억장치 내에 온더플라이(on-the-fly)로 생성한다. 여기서, 상기 Qw를 위한 다차원 인덱스를 디스크가 아닌 주기억장치 내에 생성하는 것은 상기 Qw가 상기 Dw에 비해 그 수가 적고 디스크에 액세스할 필요없이 상기 Dw의 윈도우 점들을 간단하게 읽어들이기 위한 것이다. 또한, 상기 온더플라이는 사용자가 필요에 의해 임시로 생성하여 저장하는 것을 말한다.
다만, 상기 온더플라이 인덱스 생성은 질의 처리를 위한 추가의 비용을 요구한다. 그러나, 상기 Qw가 Dw에 비하여 훨씬 적으며 또한, Qw 내의 윈도우 점들이 이미 주기억장치 내에서 관리되므로 온더플라이 인덱스의 생성 비용은 상대적으로 미미할 뿐만 아니라 이로 인하여 전체 윈도우-조인 처리시 발생하는 디스크 액세스를 줄일 수 있으므로 이러한 온더플라이 인덱스 생성은 정당화 될 수 있다. 본 발명에서는 온더플라이 인덱스로서 주기억장치 내의 R-트리를 사용한다.
도 3은 본 발명에 따른 질의 윈도우 점을 위한 R-트리를 온더플라이 인덱스로 생성하는 도시한 것이다. 도 3에 도시된 바와 같이 질의 인덱스로부터 길이 w인 슬라이딩 윈도우를 추출한다(S301). 상기 각 윈도우에 대하여 DFT를 수행하여 저차원의 윈도우 점으로 변환한다(S302). 상기 변환된 윈도우 점들을 반복적으로 주기억장치 내의 R-트리 내에 삽입한다(S303). 여기서, 상기 삽입방법은 기존에 이미 제시된 R-트리의 삽입방법을 이용한다.
상기와 같이 주기억장치 내에 질의 윈도우 점들의 집합 Qw을 위한 R-트리의 구성이 완료되면 본 발명에서 제시된 새로운 공간 조인 즉, 윈도우-조인을 이용하여 인덱스 검색을 실행한다. 다시 말하면, 상기 Qw를 위한 R-트리가 주기억장치 내에 생성되면 디스크로부터 데이터 윈도우 점들을 위한 R-트리의 노드를 액세스하여 상기 노드 내에 포함된 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR로 구성한다. 이어, 상기 주기억장치 내의 Qw를 위한 R-트리에 상기 확장된 e-MBR을 범위로 하는 범의 질의를 수행한다. 여기서, 주의해야 할 것은, 사용자에 의해 주어지는 상기 질의 윈도우 점과 유사 허용치 내의 거리에 있는 데이터 윈도우 점을 검색하기 위하여 상기 디스크를 액세스 하는 종래의 방법에서는 모든 질의 윈도우 점들에 대하여 각각 디스크를 액세스하여야 하지만 본 발명에서는 그와 반대로 상기 디스크 내의 R-트리의 노드에 포함된 각 엔트리로부터 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 구성하고 상기 확장된 질의 범위인 e-MBR내에 적어도 하나의 질의 윈도우 점이 포함되면 디스크 내에 존재하는 Dw를 위한 R-트리와 상기 주기억장치 내에 존재하는 Qw를 위한 R-트리에 대한 윈도우-조인의 고유한 특징을 활용하여 상기 해당 엔트리와 상기 포함된 질의 윈도우 점의 쌍을 반환함으로써 인덱스 검색의 최적방법을 실행한다.
이와 같은 방법에서 디스크 내의 각 노드를 액세스하여 상기 노드에 포함된 엔트리가 표현하는 MBR을 확장된 MBR의 범위로 범위 질의를 수행하게 되는데 상기 노드가 리프 노드인 경우와 그렇지 않은 경우에는 그 범위 질의 결과의 처리가 달라진다. 즉, 리프 노드를 제외한 루트 노드와 중간 노드들을 엑세스한 경우에 상기 루트 노드와 중간 노드들에 포함된 각 엔트리에서의 확장된 e-MBR의 범위로 범위 질의를 수행한 결과에 따라 하위 노드로 진행할 것인지 즉, 하위 노드를 액세스할 것인지 판단한다. 그러나, 리프 노드인 경우에는 상기와 같은 범위 질의의 결과에 따라 윈도우-조인을 통해 인덱스 검색 결과를 나타내게 된다.
이를 도 4 및 도 5를 참조하여 보다 상세하게 설명한다. 도 4는 본 발명에 따른 리프 노드를 제외한 노드들(루트 노드 및 중간 노드들)에 대한 인덱스 검색 과정을 보이는 플로우차트이다. 먼저, 상기 Dw를 위한 디스크 상의 R-트리 인덱스의 루트 노드를 R이라 하고 상기 Qw를 위한 주기억장치상의 인덱스의 루트 노드를 S라 한다.
도 4의 프로세스는 질의 윈도우 점들의 집합 Qw를 위한 R-트리가 주기억장치 내에 생성된 것을 전제로 한다. 상기 R-트리의 생성방법은 상술한 바와 같이 기존의 알고리즘을 이용하여 실행한다. 상기 Qw의 R-트리가 생성되면 이미 생성된 디스크 내의 데이터 윈도우 점들의 집합 Dw을 위한 R-트리 내의 새로운 노드(여기서, 리프 노드를 제외한 노드임)를 액세스하여(S401) 상기 노드에 포함된 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 구성한다(S402). 이어, 주기억장치 내에 존재하는 상기 Qw를 위한 R-트리에 상기 확장된 e-MBR을 범위로 하는 범위 질의를 수행한다(S403). 상기 범위 질의의 수행 결과 상기 확장된 e-MBR 내에 적어도 하나의 질의 윈도우 점을 포함하는지 판단한다(S404).
상기 단계(S404)에서 적어도 하나의 질의 윈도우 점을 포함하는 것으로 판단되면 상기 노드의 적어도 하나의 하위 노드로 진행하여(S405) 상기 하위 노드를 액세스하고 상기 하위 노드에 대하여 상기 단계(S401)를 반복 실행한다. 그러나, 상기 단계(S404)에서 상기 질의 윈도우 점을 하나라도 포함하지 않은 것으로 판단되면 다른 노드로 진행하여 상기 단계(S401)를 반복 실행한다. 이때, 상기 노드의 하위 노드들은 두 번 다시 액세스하지 않는다. 이는 상기 노드를 비롯하여 상기 노드의 하위 노드들은 상기 질의 윈도우 점을 하나도 포함하지 않은 것으로 판단하여 다시는 액세스 할 필요가 없는 것이다.
이와 같이 리프 노드를 제외한 각 노드들에 대하여 각각 확장된 e-MBR을 범위로 범위 질의를 수행하여 상기 범위 질의의 결과 상기 확장된 e-MBR 내에 질의 윈도우 점이 하나라도 포함되면 하위 노드로 진행하여 계속해서 상기와 같은 범위 질의를 반복하여 수행하고 반대로, 하나도 포함되지 않으면 상기 노드를 비롯하여 상기 노드의 하위 노드들은 액세스하지 않게 되어 전체적으로 액세스하는 횟수를 줄이게 된다.
또한, 동일한 노드에는 단 한번만 액세스한다. 즉, 하나의 노드에 액세스를 한 경우에는 상기 노드의 하위 노드들에 대해서는 연속적으로 모두 범위 질의를 수행하여 범위 질의를 수행함으로써 일단 한번 액세스 된 노드는 두 번 다시 액세스하지 않게 된다. 예를 들어, A 노드 하위 구조에 a1,a2,a3의 세 개의 하위 노드가 있을 경우 A 노드의 상위 노드에서의 범위 질의를 수행한 결과 상기 A 노드 내의 엔트리가 표현하는 확장된 e-MBR 내에 적어도 하나의 질의 윈도우 점이 포함되어 있으면 하위 노드로 진행한다. 이어, a1 노드에 대해서도 상기와 같이 범위 질의를 실행하여 결과에 따라 하위 노드로 가든지 아니면 a2 노드로 진행하여 동일한 방법으로 범위 질의를 수행한다. 여기서도 상기 범위 질의의 결과에 따라 a2의 하위 노드 내지는 a3으로 진행한다. 상기 a3에서도 동일한 방법으로 범위 질의를 실행한다. 이때, a1,a2,a3에서의 범위 질의의 결과에 상관없이 A 노드에 대한 액세스는 두 번 다시 발생하지 않는다. 왜냐하면, 일단 A 노드에 한번 액세스되면 그 하부 구조의 상기 a1,a2,a3노드에서의 범위 질의를 모두 수행하고 그 결과 하위 노드로 진행하든지 아니면 상기 A 노드와 대등한 레벨의 노드로 진행하게 된다. 따라서, 동일한 노드에서는 단 한번의 액세스만 이루어지고 이로써, 디스크로부터 액세스하는 횟수는 감소하게 된다. 각 노드들의 액세스는 상위 노드의 질의 단계에서 확장된 e-MBR을 이용한 영역 질의 결과로 반환되는 질의 윈도우 점들만을 대상으로 비교하기 때문에 CPU의 성능이 향상된다.
한편, 상기와 같이 하위 구조로 계속 진행하여 리프 노드를 액세스하는 경우에는 상기 리프 노트에서는 범위 질의의 결과를 사용자에게 반환하게 된다.
도 5는 본 발명에 따른 리프 노드에 대한 인덱스 검색 과정을 보이는 플로우차트이다. 도 5를 참조하면, 디스크로부터 리프 노드를 액세스하여(S501), 상기 리프 노드에 포함된 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 구성한다(S502). 상기 주기억장치 내에 존재하는 상기 Qw를 위한 R-트리에 상기 확장된 e-MBR을 범위로 하는 범위 질의를 수행한다(S503). 상기 범위 질의 결과로 리턴되는 질의 윈도우 점과 상기 엔트리에 대응하는 점의 쌍을 인덱스 검색의 결과로 반환한다(S504).
상기에서 살펴본 바와 같이, 리프 노드를 제외한 루트 노드 및 중간 노드들을 액세스한 경우에는 범위 질의의 결과에 따라 하위 노드로 진행할 것인지 아니면 상기 중간 노드들과 대등한 레벨의 다른 중간 노드로 진행하여 액세스를 할 것인지를 판단한다. 다시 말하면, 하나의 노드를 액세스한 후 상기 노드 내의 엔트리에 대하여 주기억장치 내의 질의 윈도우 점들을 위한 R-트리에 범위 질의를 수행하고 상기 수행 결과 확장된 e-MBR 내에 질의 윈도우 점이 하나라도 포함되면 하위 노드로 진행하여 액세스하고 상기 질의 윈도우 점이 하나라도 포함되지 않으면 상기 노드를 비롯하여 그 하위 노드들에 대해서는 두 번 다시 액세스하지 않는다. 이를 계속 반복하여 최하위 노드인 리프 노드를 액세스하는 경우에는 상기 리프 노드의 엔트리에 대한 범위 질의를 수행하여 상기 범위 질의의 결과로 리턴되는 질의 윈도우 점과 상기 엔트리에 대응되는 데이터 윈도우 점의 쌍을 윈도우-조인하여 이를 인덱스의 검색 결과로 반환하게 된다.
이와 같이, 본 발명에 따른 인덱스 검색 방법에서는 질의 윈도우 점들을 위한 R-트리를 구성하고 미리 생성된 디스크 내의 데이터 윈도우 점들을 위한 R-트리의 각 노드를 한번씩만 액세스하여 상기 질의 윈도우 점들의 R-트리에 범위 질의를 수행하여 최종적으로 리프 노드를 검색하고 상기 리프 노드 내의 엔트리에 대한 범위 질의의 결과로 리턴되는 질의 윈도우 점을 반환하게 된다. 이때, 범위 질의의 결과로 리턴되는 질의 윈도우 점과 상기 리프 노드 내의 엔트리에 대응하는 데이터 윈도우 점의 쌍을 윈도우-조인이라는 공간 조인을 이용하여 인덱스 검색 결과로 반환된다. 상기 인덱스 검색 결과를 이용하여 후처리를 수행하며 이로써, 서브시퀀스 매칭을 실행하게 된다.
도 6은 본 발명에 따른 디스크 내의 데이터 윈도우 점을 위한 R-트리의 구조에 대한 일실시예를 도시한 것이다. 도 6의 일실시예를 참조하여 상기 디스크 내에 존재하는 상기 R-트리의 노드를 액세스하여 상기한 주기억장치 내의 질의 윈도우 점들을 위한 R-트리에 범위 질의를 수행하는 과정을 설명한다. 하기에서 설명하는 것은 본 발명의 이해를 돕기 위한 일실시예에 불과한 것이며 본 발명을 한정하는 것이 아님을 밝혀둔다.
도 6에는 최상위 노드인 루트 노드(n1), 상기 루트 노드(n1)의 하위 노드인 복수개의 중간 노드들(n2~n10) 및 최하위 노드인 리프 노드(n11~n22)가 도시되어 있다. 상기 각 중간 노드들(n2~n4)은 하위 노드인 복수개의 중간 노드들(n5~n10)을 가진다.
도 6의 디스크 내의 데이터 윈도우에 대한 R-트리의 일실시예를 참조하여 상술한 도 4 및 도 5의 인덱스 검색과정을 보다 상세하게 설명한다.
먼저, 본 발명에서 제시한 윈도우-조인을 처리하기 위해 질의 시퀀스로부터 추출된 질의 윈도우들을 DFT변환하여 질의 윈도우 점들의 집합 Qw를 구성하고 상기 Qw를 위한 R-트리를 주기억장치 내에 인덱스를 구축한다. 상기 R-트리는 바람직하게는 상기 주기억장치 내에 온더플라이로 구성된다. 상기 Qw를 위한 R-트리의 구성이 완료되면 도 6에서 도시한 디스크 내의 Dw를 위한 R-트리의 루트 노드(n1)를 액세스하고 상기 노드(n1)에 포함된 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 구성하여 상기 주기억장치 내에 존재하는 상기 Qw를 위한 R-트리에 상기 e-MBR을 범위로 하는 범위 질의를 수행한다. 상기 범위 질의 결과 상기 e-MBR내에 적어도 하나의 질의 윈도우 점이 포함되면 상기 하위 노드인 중간 노드(n2 내지 n4) 중 하나를 액세스한다. 만약, 상기 범위 질의 결과 상기 e-MBR 내에 질의 윈도우 점이 하나라도 포함되지 않으면 상기 루트 노드(n1)의 하위 노드는 액세스하지 않는다. 왜냐하면, 루트 노드(n1)가 질의 윈도우 점을 포함하지 않으면 하위 노드 중 어느 노드도 상기 질의 윈도우 점을 포함하지 않기 때문이다. 이는 질의 윈도우와 상기 유사 허용치내에 있는 데이터 윈도우 점이 없다는 것을 의미한다.
한편, 상기 e-MBR 내에 적어도 하나의 질의 윈도우 점이 포함되면 중간 노드(n2)를 액세스하여 상기 노드(n2)에 포함된 엔트리에 대해 상기한 방법과 동일하게 범위 질의를 Qw의 R-트리에 수행한다. 상기 범위 질의 결과 e-MBR 내에 질의 윈도우 점이 하나라도 포함되면 상기 중간 노드(n2)의 하위 노드(n5,n6)를 액세스하고, 하나라도 포함되지 않으면 상기 중간 노드(n2)의 모든 하위 노드들은 액세스되지 않고 N2 내의 다른 중간 노드(n3)를 액세스한다. 여기서, 상기 중간 노드(n2)의 모든 하위 노드를 액세스하지 않는 이유는 상기한 루트 노드(n1)의 경우와 동일하므로 설명을 생략한다. 이로써, 인덱스 단계 착오 채택은 발생되지 않으므로 디스크 액세스의 오버헤드가 제거되고 반드시 필요한 부분만 액세스되는 것이다.
상기 중간 노드(n5)를 액세스한 경우에도 상기한 과정들을 반복해서 실행한다. 상기 중간 노드(n5)의 엔트리에 대한 범위 질의를 수행할 결과 e-MBR에 적어도 하나의 질의 윈도우 점이 포함되면 최하위 노드인 리프 노드(n11,n12)를 액세스하고 그렇지 않으면 다른 중간 노드(n6)로 진행한다.
만약, 상기 두 중간 노드(n5,n6)의 모든 엔트리에 대한 범위 질의를 수행한 결과 e-MBR 내에 적어도 하나의 질의 윈도우 점이 포함되지 않으면 N2내의 중간 노드(n3)를 액세스하여 재차 상기 과정들을 수행한다.
이와 같이 N1,N2,N3의 노드들에 대해 상기 과정을 반복해서 실행한다. 즉, N1의 노드들에 대한 범위 질의가 끝나면 N2의 노드들도 그 과정을 반복해서 실행한다.
한편, 중간 노드에서 하위 노드로 계속해서 액세스하여 리프 노드(n11~n22)를 액세스하는 경우를 살펴본다. 예를 들어, 리프 노드(n11)를 액세스한 경우에 상기 중간 노드에서와 동일한 방법으로 범위 질의를 수행한다. 즉, 상기 리프 노드(n11)의 엔트리가 표현하는 MBR을 ε/ p1/2 만큼 확장한 e-MBR을 구성하고 상기 주기억장치 내에 존재하는 Qw를 위한 R-트리에 상기 e-MBR을 범위로 하는 범위 질의를 수행한다. 범위 질의 결과로 리턴되는 질의 윈도우 점과 상기 리프 노드(n11)의 상기 엔트리와 대응하는 데이터 윈도우 점의 쌍을 인덱스 검색의 결과로 반환하게 된다. 상기 인덱스 결과는 상기 질의 윈도우들을 위한 인덱스와 상기 데이터 윈도우들을 위한 인덱스를 공간 조인을 통해 반환되는 것이다. 상기 리프 노드(n11)의 범위 질의가 종료되면 다른 노드를 액세스하여 재차 범위 질의를 수행하여 인덱스 검색 과정을 실행하는 것이다.
상술한 바와 같이, 본 발명에서는 각 후보 윈도우 점은 이를 포함하는 상위 노드에서의 e-MBR을 이용한 범위 질의의 결과로 반환되는 질의 윈도우 점들만을 비교 대상으로 하고 중간 노드에서의 범위 질의 결과에 따라 하위 노드의 액세스를 결정함으로써 불필요한 액세스를 줄이고 착오 채택의 발생을 미연에 방지하게 되며 동일한 노드를 한번 이상 액세스하지 않게 된다.
특히, 본 발명에서는 범위 질의를 주기억장치 내에 새로 구성한 Qw를 위한 R-트리에서 실행함으로써 보다 효율적이며 인덱스 검색을 윈도우-조인이라는 공간 조인을 활용함으로써 보다 효과적으로 조인할 수 있도록 한 것이다.
본 발명에서의 상세한 설명 및 도면의 기재한 일실시예의 내용은 본 발명을 설명하기 위한 것이므로 본 발명의 권리의 범위는 상기한 상세한 설명에 의해 결정되는 것이 아니라 첨부한 청구범위에 결정되어야만 할 것이다.
본 발명에 따르면, 디스크로부터 각 노드는 한번만 액세스되므로 액세스되는 횟수를 줄이고 다차원 인덱스 검색 비용을 줄일 수 있다.
또한, 윈도우-조인 처리시 디스크로부터 액세스되는 데이터 윈도우 점에 대한 인덱스 노드는 질의 윈도우 점에 대한 영역 질의를 통하여 액세스 필요성이 확인된 것이므로 인덱스 단계의 착오 채택이 전혀 발생하기 않으므로 인덱스 단계 착오 채택으로 인한 디스크 액세스의 오버헤드가 제거된다.
나아가, 인덱스 여과 과정에서 발생하는 윈도우 점들간의 비교횟수가 크게 줄어들고 각 후보 윈도우 점은 이를 포함하는 상위 단계 e-MBR을 이용한 영역 질의 결과로 반환되는 질의 윈도우 점들만을 비교대상으로 함으로써 CPU성능이 크게 개선된다.
도 1은 상기한 시퀀스를 윈도우로 분할하는 예시도이다.
도 2는 일반적인 R-트리의 구조적 계층도이다.
도 3은 본 발명에 따른 질의 윈도우 점을 위한 R-트리를 온더플라이 인덱스로 생성과정을 나타내는 플로우차트이다.
도 4는 본 발명에 따른 리프 노드가 아닌 노드에 대한 인덱스 검색 과정을 보이는 플로우차트이다.
도 5는 본 발명에 따른 리프 노드에 대한 인덱스 검색 과정을 보이는 플로우차트이다.
도 6은 본 발명에 다른 디스크 내의 데이터 윈도우에 대한 R-트리의 일실시예를 도시한 것이다.
* 도면의 주요 부분에 대한 부호의 설명 *
11,13 : 시퀀스 12 : 슬라이딩 윈도우
14 : 디스조인트 윈도우 21,n1 : 루트 노드
22,n2~n10 : 중간 노드 23,n11~n22 : 리프 노드

Claims (10)

  1. 질의 시퀀스와 유사한 데이터 시퀀스의 서브시퀀스를 검색하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법에 있어서,
    질의 윈도우 점들을 위한 제1 R-트리를 주기억장치 내에 생성하는 제1 단계;
    디스크 내의 데이터 윈도우 점들을 위한 제2 R-트리의 노드를 액세스하여 상기 노드에 포함된 엔트리가 표현하는 엠비알(MBR)을 범위로 하는 범위 질의를 상기 제1 R-트리에 수행하는 제2 단계;
    상기 노드가 리프 노드인지 중간 노드인지를 판단하는 제3 단계;
    상기 제3 단계에서 리프 노드이면 상기 범위 질의의 수행 결과로 리턴되는 질의 윈도우 점과 상기 엔트리에 대응하는 데이터 윈도우 점의 쌍을 인덱스 검색 결과로 반환하고 다른 노드를 액세스하는 제4 단계;
    상기 제3 단계에서 중간 노드이면 상기 엠비알에 적어도 하나의 질의 윈도우 점이 포함되는지 판단하는 제5 단계;
    상기 제5 단계에서 적어도 하나의 질의 윈도우 점이 포함된 것으로 판단되면 상기 중간 노드의 하위 노드를 액세스하고 상기 제5 단계에서 질의 윈도우 점이 포함되지 않은 것으로 판단되면 다른 노드를 액세스하는 제6 단계를 포함하여 상기 제2 단계 내지 상기 제6 단계를 반복 실행하는 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  2. 삭제
  3. 제 2항에 있어서,
    상기 제1 R-트리는 상기 주기억장치 내에 온더플라이로 구성되는 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  4. 제 1항에 있어서,
    상기 엠비알(MBR)은 상기 엔트리가 표현하는 점을 ε/ p1/2 만큼 확장한 엠비알인 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  5. 제 1항에 있어서, 상기 제1 단계는,
    질의 시퀀스로부터 일정 길이의 슬라이딩 윈도우들을 추출하는 단계;
    상기 슬라이딩 윈도우를 이산 퓨리에 변환(DFT)하여 저차원 점들로 변환하는 단계; 및
    상기 변환된 점들을 R-트리에 반복적으로 삽입하여 R-트리를 생성하는 단계를 포함하는 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  6. 제 1항에 있어서,
    상기 중간 노드는 루트 노드를 포함하는 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  7. 제 1항에 있어서,
    상기 디스크에 포함된 제2 R-트리 내의 동일한 노드는 한번만 액세스하는 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  8. 제 1항에 있어서,
    상위 노드를 액세스하여 상기 상위 노드의 엔트리가 표현하는 상기 엠비알에 적어도 하나의 질의 윈도우 점이 포함되는 경우에만 상기 상위 노드의 하위 노드를 액세스하는 것을 특징으로 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  9. 제 1항에 있어서,
    상기 제6 단계에서의 상기 다른 노드는 상기 중간 노드의 하위 노드를 제외한 노드들 중에서 선택되는 하나의 노드인 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
  10. 제 1항에 있어서,
    상기 제4 단계에서의 상기 인덱스 검색 결과는 상기 질의 윈도우들을 위한 인덱스와 상기 데이터 윈도우들을 위한 인덱스를 공간 조인을 통해 반환되는 것을 특징으로 하는 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스 검색방법.
KR10-2001-0064302A 2001-10-18 2001-10-18 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법 KR100472949B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0064302A KR100472949B1 (ko) 2001-10-18 2001-10-18 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0064302A KR100472949B1 (ko) 2001-10-18 2001-10-18 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법

Publications (2)

Publication Number Publication Date
KR20030032498A KR20030032498A (ko) 2003-04-26
KR100472949B1 true KR100472949B1 (ko) 2005-03-08

Family

ID=29565237

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0064302A KR100472949B1 (ko) 2001-10-18 2001-10-18 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법

Country Status (1)

Country Link
KR (1) KR100472949B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100757058B1 (ko) * 2006-07-31 2007-09-14 (주)닷넷소프트 비트데이터 타입 데이터베이스 관리시스템
KR102267068B1 (ko) 2020-12-29 2021-06-21 주식회사 젠티 자연어 질의에 따라 시계열 데이터베이스로부터 데이터를 추출하는 시스템 및 그 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7080065B1 (en) * 2001-06-22 2006-07-18 Oracle International Corporation Query pruning using interior rectangles in an R-tree index
KR100800461B1 (ko) * 2006-07-19 2008-02-04 제주대학교 산학협력단 미래 위치 검색 인덱스의 구성 방법
KR101393864B1 (ko) * 2012-10-17 2014-05-12 인하대학교 산학협력단 질의 영역과 노드 간의 포함 관계를 이용한 r-트리 계열의 계층형 색인 구조의 범위질의 병렬 가속화 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987468A (en) * 1997-12-12 1999-11-16 Hitachi America Ltd. Structure and method for efficient parallel high-dimensional similarity join
KR20000007169A (ko) * 1998-07-01 2000-02-07 윤덕용 분할된 최소 경계 사각형을 이용한 데이터 베이스 관리 방법
KR20000032772A (ko) * 1998-11-17 2000-06-15 정선종 유사성 검색을 지원하는 공간 인덱스 구성방법
JP2001052024A (ja) * 1999-08-13 2001-02-23 Nippon Telegr & Teleph Corp <Ntt> 類似特徴量の検索方法及び装置及び類似特徴量の検索プログラムを格納した記憶媒体
KR20010064977A (ko) * 1999-12-20 2001-07-11 윤덕용 시계열 데이터베이스에서 윈도우 구성의 이원성을 사용한 서브시퀀스 매칭방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987468A (en) * 1997-12-12 1999-11-16 Hitachi America Ltd. Structure and method for efficient parallel high-dimensional similarity join
KR20000007169A (ko) * 1998-07-01 2000-02-07 윤덕용 분할된 최소 경계 사각형을 이용한 데이터 베이스 관리 방법
KR20000032772A (ko) * 1998-11-17 2000-06-15 정선종 유사성 검색을 지원하는 공간 인덱스 구성방법
JP2001052024A (ja) * 1999-08-13 2001-02-23 Nippon Telegr & Teleph Corp <Ntt> 類似特徴量の検索方法及び装置及び類似特徴量の検索プログラムを格納した記憶媒体
KR20010064977A (ko) * 1999-12-20 2001-07-11 윤덕용 시계열 데이터베이스에서 윈도우 구성의 이원성을 사용한 서브시퀀스 매칭방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100757058B1 (ko) * 2006-07-31 2007-09-14 (주)닷넷소프트 비트데이터 타입 데이터베이스 관리시스템
KR102267068B1 (ko) 2020-12-29 2021-06-21 주식회사 젠티 자연어 질의에 따라 시계열 데이터베이스로부터 데이터를 추출하는 시스템 및 그 방법
KR20220095081A (ko) 2020-12-29 2022-07-06 주식회사 젠티 자연어 질의에 따라 시계열 데이터베이스로부터 데이터를 추출하는 시스템 및 그 방법

Also Published As

Publication number Publication date
KR20030032498A (ko) 2003-04-26

Similar Documents

Publication Publication Date Title
KR100344530B1 (ko) 시계열 데이터베이스에서 윈도우 구성의 이원성을 사용한 서브시퀀스 매칭방법
Zhang et al. Keyword search in spatial databases: Towards searching by document
Traina et al. The omni-family of all-purpose access methods: a simple and effective way to make similarity search more efficient
Park et al. Efficient searches for similar subsequences of different lengths in sequence databases
KR101467589B1 (ko) 데이터 구조를 가지는 하나 이상의 장치 판독가능 매체, 및장치 실행가능 명령어를 구비한 하나 이상의 장치 판독가능 매체
US20100106713A1 (en) Method for performing efficient similarity search
Giancarlo A generalization of the suffix tree to square matrices, with applications
US20100070509A1 (en) System And Method For High-Dimensional Similarity Search
US20100082654A1 (en) Methods And Apparatus Using Range Queries For Multi-dimensional Data In A Database
Yi et al. Incremental maintenance of XML structural indexes
KR100419575B1 (ko) 고차원 색인구조를 위한 벌크 로딩방법
KR100472949B1 (ko) 시계열 데이터베이스에서 서브시퀀스 매칭의 인덱스검색방법
Barsky et al. A new method for indexing genomes using on-disk suffix trees
Álvarez-García et al. Compact and efficient representation of general graph databases
Skopal et al. A new range query algorithm for Universal B-trees
Hon et al. Compressed index for dictionary matching
KR100472948B1 (ko) 시계열 데이터베이스에서 서브 시퀀스 매칭의 후처리최적화 방법
Lee et al. Efficient search in graph databases using cross filtering
Kim et al. Efficient processing of substring match queries with inverted q-gram indexes
Bialynicka-Birula et al. Rank-sensitive data structures
Sang Hyun et al. Discovering and matching elastic rules from sequence databases
Kwon et al. G-Index Model: A generic model of index schemes for top-k spatial-keyword queries
Patel et al. Inverse suffix array queries for 2-dimensional pattern matching in near-compact space
Park et al. A multi-dimensional indexing approach for timestamped event sequence matching
Li et al. Incremental mining of frequent query patterns from XML queries for caching

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: 20090202

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee