KR101565528B1 - 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법 - Google Patents

델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법 Download PDF

Info

Publication number
KR101565528B1
KR101565528B1 KR1020140058700A KR20140058700A KR101565528B1 KR 101565528 B1 KR101565528 B1 KR 101565528B1 KR 1020140058700 A KR1020140058700 A KR 1020140058700A KR 20140058700 A KR20140058700 A KR 20140058700A KR 101565528 B1 KR101565528 B1 KR 101565528B1
Authority
KR
South Korea
Prior art keywords
delta
data
index information
indexer
data source
Prior art date
Application number
KR1020140058700A
Other languages
English (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 (주)케이사인
Priority to KR1020140058700A priority Critical patent/KR101565528B1/ko
Application granted granted Critical
Publication of KR101565528B1 publication Critical patent/KR101565528B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures

Abstract

본 발명의 일 목적을 달성하기 위하여 본 발명의 실시예들에 따른 델타 인덱싱 시스템은 데이터 소스 제공부, 인덱서(indexer) 및 서처(searcher)를 포함한다. 데이터 소스 제공부는 데이터 소스를 제공한다. 인덱서는 데이터 소스를 제 1 내지 제n 델타 데이터 소스들로 구분하고, 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 제공한다. 서처는 델타 인덱스 정보들을 통합하여 통합 인덱스 정보를 생성하고, 검색 입력에 상응하는 검색 결과를 제공한다. 본 발명의 실시예들에 따른 델타 인덱싱 시스템에서 인덱서와 서처는 서로 독립적으로 배치될 수 있다. 이 경우, 인덱서가 동작하는 동안 서처는 검색 입력에 상응하는 검색 결과를 제공할 수 있다. 또한 델타 인덱서부들은 서로 독립적으로 동작하여 복수의 타 데이터 소스들을 고속으로 분산 처리할 수 있고, 서처에 포함되는 서처부들은 서로 독립적으로 동작하여 복수의 델타 인덱스 정보들을 고속으로 분산 처리할 수 있다. 본 발명에 따른 델타 인덱싱 시스템을 사용하면 델타 인덱싱 시스템에 포함되는 인덱서가 데이터 소스 제공부로부터 데이터 소스를 전달받아 인덱싱 동작을 수행하는 경우에도 서처가 독립적으로 검색 동작을 수행할 수 있고 델타 인덱서부들 및 서처부들이 독립적으로 동작하여 전체 시스템의 성능을 향상시킬 수 있다.

Description

델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법{DELTA INDEXING SYSTEM AND METHOD OF OPERATING DELTA INDEXING SYSTEM}
본 발명은 빅 데이터 처리에 관한 것으로서, 보다 상세하게는 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법에 관한 것이다.
빅 데이터는 데이터의 생성 양ㆍ주기ㆍ형식 등이 기존 데이터에 비해 너무 크기 때문에, 종래의 방법으로는 수집ㆍ저장ㆍ검색ㆍ분석이 어려운 방대한 데이터를 말한다. 빅데이터는 각종 센서와 인터넷의 발달로 데이터가 늘어나면서 나타났다. 컴퓨터 및 처리기술이 발달함에 따라 디지털 환경에서 생성되는 빅데이터를 기반으로 데이터를 분석할 경우 질병이나 사회현상의 변화에 관한 새로운 시각이나 법칙을 발견할 가능성이 커지고 있다.
단일 머신에서 빅 데이터의 인덱싱 및 서치를 수행하는 경우, 데이터 소스의 증가에 따른 리소스 사용량의 증가등으로 인하여 시스템의 성능 저하 및 스토리지 증설등의 문제가 발생할 수 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은 데이터 소스를 복수의 델타 데이터 소스들로 분할하여 인덱스 정보들을 생성하고, 인덱스 정보를 분산 처리하여 성능을 높일 수 있는 델타 인덱싱 시스템을 제공하는 것이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은 데이터 소스를 복수의 델타 데이터 소스들로 분할하여 인덱스 정보들을 생성하고, 인덱스 정보를 분산 처리하여 성능을 높일 수 있는 델타 인덱싱 시스템의 동작 방법을 제공하는 것이다.
본 발명의 일 목적을 달성하기 위하여 본 발명의 실시예들에 따른 델타 인덱싱 시스템은 데이터 소스 제공부, 인덱서(indexer) 및 서처(searcher)를 포함한다. 상기 데이터 소스 제공부는 데이터 소스를 제공한다. 상기 인덱서는 상기 데이터 소스를 제 1 내지 제n 델타 데이터 소스들로 구분하고, 상기 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 제공한다. 상기 서처는 상기 델타 인덱스 정보들을 통합하여 통합 인덱스 정보를 생성하고, 검색 입력에 상응하는 검색 결과를 제공한다.
예시적인 실시예에 있어서, 상기 델타 인덱싱 시스템 상에서 상기 인덱서와 상기 서처는 서로 독립적으로 배치되고, 상기 인덱서가 동작하는 동안 상기 서처는 상기 검색 입력에 상응하는 상기 검색 결과를 제공할 수 있다.
예시적인 실시예에 있어서, 상기 인덱서는 데이터 수집기, 파일 롤링 디렉토리 및 델타 인덱서를 포함할 수 있다. 상기 데이터 수집기는 상기 데이터 소스를 수신할 수 있다. 상기 파일 롤링 디렉토리는 상기 데이터 수집기로부터 전달되는 상기 데이터 소스를 상기 제1 내지 제n 델타 데이터 소스들로 구분할 수 있다. 상기 델타 인덱서는 상기 제1 내지 제n 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 생성할 수 있다.
예시적인 실시예에 있어서, 상기 제1 내지 제n 델타 데이터 소스들은 데이터 용량을 기준으로 구분될 수 있다.
예시적인 실시예에 있어서, 상기 제1 내지 제n 델타 데이터 소스들은 상기 데이터 소스에 포함되는 라인 수를 기준으로 구분될 수 있다.
예시적인 실시예에 있어서, 상기 데이터 수집기는 복수의 데이터 수집부들을 포함할 수 있다. 상기 복수의 데이터 수집부들의 각각은 상기 데이터 소스에 포함되는 제1 내지 제k (k는 1보다 큰 자연수) 데이터 소스들의 각각을 수신할 수 있다.
예시적인 실시예에 있어서, 상기 파일 롤링 디렉토리는 복수의 저장부들을 포함할 수 있다. 상기 복수의 저장부들의 각각은 상기 제1 내지 제k 데이터 소스들의 각각을 상기 제1 내지 제n 델타 데이터 소스들로 구분할 수 있다.
예시적인 실시예에 있어서, 상기 델타 인덱서는 복수의 델타 인덱서부들을 포함할 수 있다. 상기 복수의 델타 인덱서부들의 각각은 독립적으로 상기 복수의 저장부들의 각각으로부터 제공되는 상기 델타 데이터 소스에 기초하여 델타 인덱스 정보를 생성할 수 있다.
예시적인 실시예에 있어서, 상기 서처는 복수의 서처부들을 포함할 수 있다. 상기 서처부들의 각각은 상기 제1 내지 제k 데이터 소스들의 각각에 대한 상기 통합 인덱스 정보를 생성할 수 있다.
예시적인 실시예에 있어서, 상기 인덱서는 상기 델타 인덱스 정보에 포함되는 데이터를 압축하여 상기 서처에 제공할 수 있다.
본 발명의 일 목적을 달성하기 위하여 본 발명의 실시예들에 따른 델타 인덱싱 시스템의 동작 방법은 데이터 소스를 수신하는 단계, 상기 데이터 소스를 상기 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들로 구분하는 단계, 상기 제1 내지 제n 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 생성하는 단계, 상기 델타 인덱스 정보들을 서처에 전달하는 단계 및 상기 서처가 상기 델타 인덱스 정보들을 통합하여 통합 인덱스 정보를 생성하는 단계를 포함한다.
예시적인 실시예에 있어서, 상기 델타 인덱스 정보들이 압축되어 상기 서처에 전달되는 경우, 상기 서처는 상기 델타 인덱스 정보들에 대한 압축 해제 동작을 수행할 수 있다.
본 발명의 실시예들에 따른 델타 인덱싱 시스템은 데이터 소스를 복수의 델타 데이터 소스들로 분할하여 인덱스 정보들을 생성하고, 인덱스 정보를 분산 처리하여 성능을 높일 수 있다.
도 1은 본 발명의 실시예들에 따른 델타 인덱싱 시스템을 나타내는 블록도이다.
도 2는 도 1의 델타 인덱싱 시스템에 포함되는 인덱서를 나타내는 블록도이다.
도 3은 도 2의 인덱서에 포함되는 파일 롤링 디렉토리의 일 동작 예를 나타내는 도면이다.
도 4는 도 2의 인덱서에 포함되는 파일 롤링 디렉토리의 다른 동작 예를 나타내는 도면이다.
도 5는 도 2의 인덱서에 포함되는 데이터 수집기의 일 예를 나타내는 블록도이다.
도 6은 도 2의 인덱서에 포함되는 파일 롤링 디렉토리의 일 예를 나타내는 도면이다.
도 7은 도 2의 인덱서에 포함되는 델타 인덱서의 일 예를 나타내는 블록도이다.
도 8은 도 1의 델타 인덱싱 시스템에 포함되는 서처의 일 예를 나타내는 블록도이다.
도 9는 본 발명의 일 실시예에 따른 델타 인덱싱 시스템을 나타내는 블록도이다.
도 10은 본 발명의 실시예들에 따른 델타 인덱싱 시스템의 동작 방법을 나타내는 순서도이다.
도 11은 본 발명의 일 실시예에 따른 델타 인덱싱 시스템의 동작 방법을 나타내는 순서도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되지 않는다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 델타 인덱싱 시스템을 나타내는 블록도이고, 도 2는 도 1의 델타 인덱싱 시스템에 포함되는 인덱서를 나타내는 블록도이다.
도 1 및 도 2를 참조하면, 델타 인덱싱 시스템(10)은 데이터 소스 제공부(100), 인덱서(indexer)(300) 및 서처(searcher)(500)를 포함한다.
데이터 소스 제공부(100)는 데이터 소스(DS)를 제공한다. 예를 들어 데이터 소스 제공부(100)는 컴퓨터(computer), 서버(sever), 방화벽(fire wall) 및 네트워크(network)일 수 있다. 컴퓨터, 서버, 방화벽 및 네트워크에서 제공되는 데이터 소스(DS)는 인덱서(300)에 제공될 수 있다. 컴퓨터, 서버, 방화벽 및 네트워크에서 제공되는 데이터 소스(DS)의 형태는 로그 파일(log files), 데이터 베이스(databases), 메시지(message) 및 스크립트(scripts)일 수 있다.
인덱서(300)는 데이터 수집기(310), 파일 롤링 디렉토리(330) 및 델타 인덱서(350)를 포함할 수 있다. 데이터 수집기(310)는 데이터 소스(DS)를 수신할 수 있다. 파일 롤링 디렉토리(330)는 데이터 수집기(310)로부터 전달되는 데이터 소스(DS)를 제1 내지 제n 델타 데이터 소스들(DDS)로 구분할 수 있다. 델타 인덱서(350)는 제1 내지 제n 델타 데이터 소스들(DDS) 각각에 포함되는 델타 인덱스 정보들(DII)을 생성할 수 있다.
파일 롤링 디렉토리(330)는 데이터 소스(DS)를 제 1 내지 제n 델타 데이터 소스들(DDS)로 구분할 수 있다. 예를 들어 컴퓨터에서 제공되는 데이터 소스(DS)는 컴퓨터 데이터 소스(DS1)일 수 있다. 파일 롤링 디렉토리(330)는 컴퓨터 데이터 소스(DS1)를 제1 내지 제n 컴퓨터 델타 데이터 소스들(DDS)로 구분할 수 있다. 서버에서 제공되는 데이터 소스(DS)는 서버 데이터 소스(DS2)일 수 있다. 파일 롤링 디렉토리(330)는 서버 데이터 소스(DS2)를 제1 내지 제n 서버 델타 데이터 소스들(DDS)로 구분할 수 있다. 방화벽 데이터 소스(DS3) 및 네트워크 데이터 소스(DS4)는 동일한 방식으로 제1 내지 제n 방화벽 델타 데이터 소스들(DDS) 및 제1 내지 제n 네트워크 델타 데이터 소스들(DDS)로 구분될 수 있다.
델타 인덱서(350)는 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들(DDS) 각각에 포함되는 델타 인덱스 정보들(DII)을 제공한다. 예를 들어 델타 인덱서(350)는 제1 내지 제n 컴퓨터 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 제공할 수 있다. 델타 인덱서(350)는 제1 내지 제n 서버 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 제공할 수 있다. 델타 인덱서(350)는 제1 내지 제n 방화벽 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 제공할 수 있다. 델타 인덱서(350)는 제1 내지 제n 네트워크 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 제공할 수 있다.
서처(500)는 델타 인덱스 정보들(DII)을 통합하여 통합 인덱스 정보를 생성할 수 있다. 예를 들어, 서처(500)는 컴퓨터 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 통합하여 하나의 통합 인덱스 정보를 생성할 수 있다. 서처(500)는 서버 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 통합하여 하나의 통합 인덱스 정보를 생성할 수 있다. 서처(500)는 방화벽 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII) 및 네트워크 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 통합하여 하나의 통합 인덱스 정보를 생성할 수 있다.
본 발명에 따른 델타 인덱싱 시스템(10)은 데이터 소스(DS)를 제1 내지 제n 델타 데이터 소스들(DDS)로 분할하여 제1 내지 제n 델타 데이터 소스들(DDS) 각각에 대한 델타 인덱스 정보들(DII)을 제공함으로써 데이터 소스 전체에 대한 모든 인덱스 정보를 생성하지 않은 상태에서도 서처(500)는 검색 입력(SI)에 대한 검색 결과(SR)를 제공할 수 있다.
서처(500)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 제공한다. 예를 들어 검색 입력(SI)이 컴퓨터에 포함되는 정보에 관한 검색인 경우, 서처(500)는 컴퓨터 델타 데이터 소스들(DDS)에 상응하는 델타 인덱스 정보들(DII)을 통합하여 형성되는 통합 인덱스 정보에 기초하여 검색 결과(SR)를 제공할 수 있다.
본 발명의 실시예들에 따른 델타 인덱싱 시스템(10)에서 인덱서(300)와 서처(500)는 서로 독립적으로 배치될 수 있다. 이 경우, 인덱서(300)가 동작하는 동안 서처(500)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 제공할 수 있다. 본 발명에 따른 델타 인덱싱 시스템(10)을 사용하면 델타 인덱싱 시스템(10)에 포함되는 인덱서(300)가 데이터 소스 제공부(100)로부터 데이터 소스(DS)를 전달받아 인덱싱 동작을 수행하는 경우에도 서처(500)가 독립적으로 검색 동작을 수행할 수 있어 전체 시스템의 성능을 향상시킬 수 있다.
도 3은 도 2의 인덱서에 포함되는 파일 롤링 디렉토리의 일 동작 예를 나타내는 도면이다.
도 3을 참조하면, 파일 롤링 디렉토리(330)는 데이터 소스를 제1 내지 제n 델타 데이터들로 구분할 수 있다.
예시적인 실시예에 있어서, 제1 내지 제n 델타 데이터 소스들(DDS)은 데이터 용량을 기준으로 구분될 수 있다. 예를 들어 데이터 소스(DS)의 용량은 100M byte일 수 있다. 데이터 소스(DS)의 용량이 100M byte인 경우, 파일 롤링 디렉토리(330)는 100M byte의 데이터 소스(DS)를 10M byte의 델타 데이터 소스들(DDS)로 구분할 수 있다. 델타 데이터 소스들(DDS)은 제1 내지 제10 델타 데이터 소스들(DDS1 내지 DDS10)을 포함할 수 있다. 제1 내지 제10 델타 데이터 소스들(DDS1 내지 DDS10)은 데이터 용량 10M byte를 기준으로 구분될 수 있다.
도 4는 도 2의 인덱서에 포함되는 파일 롤링 디렉토리의 다른 동작 예를 나타내는 도면이다.
도 4을 참조하면, 파일 롤링 디렉토리(330)는 데이터 소스(DS)를 제1 내지 제n 델타 데이터들로 구분할 수 있다.
예시적인 실시예에 있어서, 제1 내지 제n 델타 데이터 소스들은 데이터 소스(DS)에 포함되는 라인 수를 기준으로 구분될 수 있다. 예를 들어 데이터 소스(DS)의 라인은 10000라인일 수 있다. 데이터 소스(DS)의 라인이 10000인 경우, 파일 롤링 디렉토리(330)는 10000라인의 데이터 소스(DS)를 1000 라인의 델타 데이터 소스들로 구분할 수 있다. 델타 데이터 소스들(DDS)은 제1 내지 제10 델타 데이터 소스들(DDS1 내지 DDS10)을 포함할 수 있다. 제1 내지 제n 델타 데이터 소스들은 데이터 소스(DS)에 포함되는 1000라인을 기준으로 구분될 수 있다.
본 발명의 실시예들에 따른 델타 인덱싱 시스템(10)에서 인덱서(300)와 서처(500)는 서로 독립적으로 배치될 수 있다. 이 경우, 인덱서(300)가 동작하는 동안 서처(500)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 제공할 수 있다. 본 발명에 따른 델타 인덱싱 시스템(10)을 사용하면 델타 인덱싱 시스템(10)에 포함되는 인덱서(300)가 데이터 소스 제공부(100)로부터 데이터 소스(DS)를 전달받아 인덱싱 동작을 수행하는 경우에도 서처(500)가 독립적으로 검색 동작을 수행할 수 있어 전체 시스템의 성능을 향상시킬 수 있다.
도 5는 도 2의 인덱서에 포함되는 데이터 수집기의 일 예를 나타내는 블록도이다.
도 5를 참조하면, 데이터 수집기(310)는 복수의 데이터 수집부들(311 내지 314)을 포함할 수 있다. 예를 들어, 데이터 수집기(310)는 제1 데이터 수집부(311), 제2 데이터 수집부(312), 제3 데이터 수집부(313) 및 제4 데이터 수집부(314)를 포함할 수 있다.
복수의 데이터 수집부들(311 내지 314)의 각각은 데이터 소스(DS)에 포함되는 제1 내지 제k (k는 1보다 큰 자연수) 데이터 소스들(DS1 내지 DS4)의 각각을 수신할 수 있다. 예를 들어, 제1 데이터 소스(DS1)는 컴퓨터로부터 제공되는 컴퓨터 데이터 소스(DS1)일 수 있다. 제2 데이터 소스(DS2)는 서버로부터 제공되는 서버 데이터 소스(DS2)일 수 있다. 제3 데이터 소스(DS3)는 방화벽으로부터 제공되는 방화벽 데이터 소스(DS3)일 수 있다. 제4 데이터 소스(DS4)는 네트워크로부터 제공되는 네트워크 데이터 소스(DS4)일 수 있다. 제1 데이터 수집부(311)는 컴퓨터 데이터 소스(DS1)를 수신할 수 있다. 제2 데이터 수집부(312)는 서버 데이터 소스(DS2)를 수신할 수 있다. 제3 데이터 수집부(313)는 방화벽 데이터 소스(DS3)를 수신할 수 있다. 제4 데이터 수집부(314)는 네트워크 데이터 소스(DS4)를 수신할 수 있다.
도 6은 도 2의 인덱서에 포함되는 파일 롤링 디렉토리의 일 예를 나타내는 도면이다.
도 6을 참조하면, 파일 롤링 디렉토리(330)는 복수의 저장부들(331 내지 334)을 포함할 수 있다. 예를 들어, 제1 저장부(331)는 제1 데이터 수집부(311)로부터 전달되는 컴퓨터 데이터 소스(DS1)를 저장할 수 있다. 제2 저장부(332)는 제2 데이터 수집부(312)로부터 전달되는 서버 데이터 소스(DS2)를 저장할 수 있다. 제3 저장부(333)는 제3 데이터 수집부(313)로부터 전달되는 방화벽 데이터 소스(DS3)를 저장할 수 있다. 제4 저장부(334)는 제4 데이터 수집부(314)로부터 전달되는 네트워크 데이터 소스(DS4)를 저장할 수 있다.
복수의 저장부들(331 내지 334)의 각각은 제1 내지 제k 데이터 소스들(DS1 내지 DS4)의 각각을 제1 내지 제n 델타 데이터 소스들로 구분할 수 있다. 예를 들어, 제1 저장부(331)는 컴퓨터 데이터 소스(DS1)를 데이터 용량 또는 라인 수를 기준으로 제1 내지 제10 컴퓨터 델타 데이터 소스들(DDS1_1 내지 DDS1_10)로 구분할 수 있다. 제2 저장부(332)는 서버 데이터 소스(DS2)를 데이터 용량 또는 라인 수를 기준으로 제1 내지 제10 서버 델타 데이터 소스들(DDS2_1 내지 DDS2_10)로 구분할 수 있다. 제3 저장부(333)는 방화벽 데이터 소스(DS3)를 데이터 용량 또는 라인 수를 기준으로 제1 내지 제10 방화벽 델타 데이터 소스들(DDS3_1 내지 DDS3_10)로 구분할 수 있다. 제4 저장부(334)는 네트워크 데이터 소스(DS4)를 데이터 용량 또는 라인 수를 기준으로 제1 내지 제10 네트워크 델타 데이터 소스들(DDS4_1 내지 DDS4_10)로 구분할 수 있다.
본 발명에 따른 델타 인덱싱 시스템(10)은 데이터 소스(DS)를 제1 내지 제n 델타 데이터 소스들로 분할하여 제1 내지 제n 델타 데이터 소스들 각각에 대한 델타 인덱스 정보들(DII)을 제공함으로써 데이터 소스(DS) 전체에 대한 모든 인덱스 정보를 생성하지 않은 상태에서도 서처(500)는 검색 입력(SI)에 대한 검색 결과(SR)를 제공할 수 있다.
도 7은 도 2의 인덱서에 포함되는 델타 인덱서의 일 예를 나타내는 블록도이다.
도 7을 참조하면, 델타 인덱서(350)는 복수의 델타 인덱서부들(351 내지 354)을 포함할 수 있다. 예를 들어, 제1 델타 인덱서부(351)는 제1 저장부(331)로부터 전달되는 컴퓨터 델타 데이터 소스(DDS1)를 수신할 수 있다. 제2 델타 인덱서부(352)는 제2 저장부(332)로부터 전달되는 서버 델타 데이터 소스(DDS2)를 수신할 수 있다. 제3 델타 인덱서부(353)는 제3 저장부(333)로부터 전달되는 방화벽 델타 데이터 소스(DDS3)를 수신할 수 있다. 제4 델타 인덱서부(354)는 제4 저장부(334)로부터 전달되는 네트워크 델타 데이터 소스(DDS4)를 수신할 수 있다.
복수의 델타 인덱서부들(351 내지 354)의 각각은 독립적으로 복수의 저장부들(331 내지 334)의 각각으로부터 제공되는 델타 데이터 소스(DDS)에 기초하여 델타 인덱스 정보(DII)를 생성할 수 있다. 예를 들어, 제1 델타 인덱서부(351)는 컴퓨터 델타 데이터 소스(DDS1)에 상응하는 컴퓨터 델타 인덱스 정보(DII1)를 생성할 수 있다. 제2 델타 인덱서부(352)는 서버 델타 데이터 소스(DDS2)에 상응하는 서버 델타 인덱스 정보(DII2)를 생성할 수 있다. 제3 델타 인덱서부(353)는 방화벽 델타 데이터 소스(DDS3)에 상응하는 방화벽 델타 인덱스 정보(DII3)를 생성할 수 있다. 제4 델타 인덱서부(354)는 네트워크 델타 데이터 소스(DDS4)에 상응하는 네트워크 델타 인덱스 정보(DII4)를 생성할 수 있다. 각각의 델타 인덱서부(351 내지 354)는 서로 독립적으로 동작하여 복수의 델타 데이터 소스들(DDS1 내지 DDS4)을 고속으로 분산 처리할 수 있다.
본 발명의 실시예들에 따른 델타 인덱싱 시스템(10)에서 인덱서(300)와 서처(500)는 서로 독립적으로 배치될 수 있다. 이 경우, 인덱서(300)가 동작하는 동안 서처(500)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 제공할 수 있다. 또한 델타 인덱서부들(351 내지 354)은 서로 독립적으로 동작하여 복수의 델타 데이터 소스들(DDS1 내지 DDS4)을 고속으로 분산 처리할 수 있다. 본 발명에 따른 델타 인덱싱 시스템(10)을 사용하면 델타 인덱싱 시스템(10)에 포함되는 인덱서(300)가 데이터 소스 제공부(100)로부터 데이터 소스(DS)를 전달받아 인덱싱 동작을 수행하는 경우에도 서처(500)가 독립적으로 검색 동작을 수행할 수 있고 델타 인덱서부들(351 내지 354)이 델타 데이터 소스들(DDS1 내지 DDS4)을 분산 처리하여 전체 시스템의 성능을 향상시킬 수 있다.
도 8은 도 1의 델타 인덱싱 시스템에 포함되는 서처의 일 예를 나타내는 블록도이다.
도 8을 참조하면, 서처(500)는 복수의 서처부들(510, 530, 550, 570)을 포함할 수 있다. 예를 들어 제1 서처부(510)는 컴퓨터 델타 인덱스 정보들(DII1)을 수신할 수 있고, 제2 서처부(530)는 서버 델타 인덱스 정보들(DII2)을 수신할 수 있고, 제3 서처부(550)는 방화벽 델타 인덱스 정보들(DII3)을 수신할 수 있고, 제4 서처부(570)는 네트워크 델타 인덱스 정보들(DII4)을 수신할 수 있다.
서처부들(510, 530, 550, 570)의 각각은 제1 내지 제k 데이터 소스들(DS1 내지 DS4)의 각각에 대한 통합 인덱스 정보(INTE_II)를 생성할 수 있다. 예를 들어, 제1 서처부(510)는 컴퓨터 델타 인덱스 정보들(DII1)을 통합하여 컴퓨터 통합 인덱스 정보(INTE_II1)를 생성할 수 있다. 제2 서처부(530)는 서버 델타 인덱스 정보들(DII2)을 통합하여 서버 통합 인덱스 정보(INTE_II2)를 생성할 수 있다. 제3 서처부(550)는 방화벽 델타 인덱스 정보들(DII3)을 통합하여 방화벽 통합 인덱스 정보(INTE_II3)를 생성할 수 있다. 제4 서처부(570)는 네트워크 델타 인덱스 정보들(DII4)을 통합하여 네트워크 통합 인덱스 정보(INTE_II4)를 생성할 수 있다. 도 8에서는 각각의 서처부에 하나의 통합 인덱스 정보(INTE_II)를 포함하는 것으로 나타내고 있으나, 하나의 서처부에 복수의 통합 인덱스 정보들(INTE_II)을 포함할 수 있다. 각각의 서처부는 서로 독립적으로 동작하여 복수의 델타 인덱스 정보들을 고속으로 분산 처리할 수 있다.
예시적인 실시예에 있어서, 인덱서(300)는 델타 인덱스 정보(DII)에 포함되는 데이터를 압축하여 서처(500)에 제공할 수 있다.
도 9는 본 발명의 일 실시예에 따른 델타 인덱싱 시스템을 나타내는 블록도이다.
도 9를 참조하면, 델타 인덱싱 시스템(10)은 데이터 소스 제공부(100), 인덱서(indexer)(300), 서처(searcher) (500) 및 서치 서비스 제공부(700)를 포함할 수 있다. 데이터 소스 제공부(100)는 데이터 소스(DS)를 제공할 수 있다. 인덱서(300)는 데이터 소스(DS)를 제 1 내지 제n 델타 데이터 소스들로 구분할 수 있다. 인덱서(300)는 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들(DII)을 제공할 수 있다. 서처(500)는 델타 인덱스 정보들(DII)을 통합하여 통합 인덱스 정보(INTE_II)를 생성할 수 있다. 서처(500)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 제공할 수 있다. 서치 서비스 제공부(700)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 수신할 수 있다.
본 발명에 따른 델타 인덱싱 시스템(10)은 데이터 소스(DS)를 제1 내지 제n 델타 데이터 소스들로 분할하여 제1 내지 제n 델타 데이터 소스들 각각에 대한 델타 인덱스 정보들(DII)을 제공함으로써 데이터 소스(DS) 전체에 대한 모든 인덱스 정보를 생성하지 않은 상태에서도 서처(500)는 검색 입력(SI)에 대한 검색 결과(SR)를 제공할 수 있다.
본 발명의 실시예들에 따른 델타 인덱싱 시스템(10)에서 인덱서(300)와 서처(500)는 서로 독립적으로 배치될 수 있다. 이 경우, 인덱서(300)가 동작하는 동안 서처(500)는 검색 입력(SI)에 상응하는 검색 결과(SR)를 제공할 수 있다. 또한 델타 인덱서부들(351 내지 354)은 서로 독립적으로 동작하여 복수의 델타 데이터 소스들을 고속으로 분산 처리할 수 있고, 서처(500)에 포함되는 서처부들(510, 530, 550, 570)은 서로 독립적으로 동작하여 복수의 델타 인덱스 정보들(DII)을 고속으로 분산 처리할 수 있다. 본 발명에 따른 델타 인덱싱 시스템(10)을 사용하면 델타 인덱싱 시스템(10)에 포함되는 인덱서(300)가 데이터 소스 제공부(100)로부터 데이터 소스(DS)를 전달받아 인덱싱 동작을 수행하는 경우에도 서처(500)가 독립적으로 검색 동작을 수행할 수 있고 델타 인덱서부들(351 내지 354) 및 서처부들(510, 530, 550, 570)이 독립적으로 동작하여 전체 시스템의 성능을 향상시킬 수 있다.
도 10은 본 발명의 실시예들에 따른 델타 인덱싱 시스템의 동작 방법을 나타내는 순서도이다.
도 10을 참조하면, 델타 인덱싱 시스템(10)의 동작 방법에서는 데이터 소스(DS)를 수신한다(S100). 데이터 소스(DS)를 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들로 구분한다(S101). 제1 내지 제n 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들(DII)을 생성한다(S102). 델타 인덱스 정보들(DII)을 서처(500)에 전달한다(S103). 서처(500)가 델타 인덱스 정보들(DII)을 통합하여 통합 인덱스 정보(INTE_II)를 생성한다(S104).
도 11은 본 발명의 일 실시예에 따른 델타 인덱싱 시스템의 동작 방법을 나타내는 순서도이다.
도 11을 참조하면, 델타 인덱싱 시스템(10)의 동작 방법에서는 데이터 소스를 수신한다(S200). 데이터 소스(DS)를 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들로 구분한다(S201). 제1 내지 제n 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들(DII)을 생성한다(S202). 델타 인덱스 정보들(DII)을 압축하여 서처(500)에 전달한다(S203). 서처(500)가 델타 인덱스 정보들(DII)에 대한 압축 해제 동작을 수행하고, 델타 인덱스 정보들(DII)을 통합하여 통합 인덱스 정보(INTE_II)를 생성한다(S204).
예시적인 실시예에 있어서, 델타 인덱스 정보들(DII)이 압축되어 서처(500)에 전달되는 경우, 서처(500)는 델타 인덱스 정보들(DII)에 대한 압축 해제 동작을 수행할 수 있다.
본 발명의 실시예들에 따른 델타 인덱싱 시스템은 데이터 소스를 복수의 델타 데이터 소스들로 분할하여 인덱스 정보들을 생성하고, 인덱스 정보를 분산 처리하여 성능을 높일 수 있어 인덱싱 시스템을 사용하는 검색 시스템에 적용될 수 있다.
상기에서는 본 발명이 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (12)

  1. 데이터 소스를 제공하는 데이터 소스 제공부;
    상기 데이터 소스를 제 1 내지 제n 델타 데이터 소스들로 구분하고, 상기 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 제공하는 인덱서(indexer); 및
    상기 델타 인덱스 정보들을 통합하여 통합 인덱스 정보를 생성하고, 검색 입력에 상응하는 검색 결과를 제공하는 서처(searcher)를 포함하고,
    상기 인덱서는 복수의 저장부들을 포함하고,
    상기 복수의 저장부들의 각각은 상기 데이터 소스에 포함되는 제1 내지 제k (k는 1보다 큰 자연수) 데이터 소스들의 각각을 상기 제1 내지 제n 델타 데이터 소스들로 구분하는 것을 특징으로 하는 델타 인덱싱 시스템.
  2. 제1 항에 있어서,
    상기 델타 인덱싱 시스템 상에서 상기 인덱서와 상기 서처는 서로 독립적으로 배치되고, 상기 인덱서가 동작하는 동안 상기 서처는 상기 검색 입력에 상응하는 상기 검색 결과를 제공하는 것을 특징으로 하는 델타 인덱싱 시스템.
  3. 제2 항에 있어서, 상기 인덱서는,
    상기 데이터 소스를 수신하는 데이터 수집기;
    상기 데이터 수집기로부터 전달되는 상기 데이터 소스를 상기 제1 내지 제n 델타 데이터 소스들로 구분하는 파일 롤링 디렉토리; 및
    상기 제1 내지 제n 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 생성하는 델타 인덱서를 포함하는 것을 특징으로 하는 델타 인덱싱 시스템.
  4. 제3 항에 있어서,
    상기 제1 내지 제n 델타 데이터 소스들은 데이터 용량을 기준으로 구분되는 것을 특징으로 하는 델타 인덱싱 시스템.
  5. 제3항에 있어서,
    상기 제1 내지 제n 델타 데이터 소스들은 상기 데이터 소스에 포함되는 라인 수를 기준으로 구분되는 것을 특징으로 하는 델타 인덱싱 시스템.
  6. 제3 항에 있어서,
    상기 데이터 수집기는 복수의 데이터 수집부들을 포함하고,
    상기 복수의 데이터 수집부들의 각각은 상기 데이터 소스에 포함되는 상기 제1 내지 제k (k는 1보다 큰 자연수) 데이터 소스들의 각각을 수신하는 것을 특징으로 하는 델타 인덱싱 시스템.
  7. 삭제
  8. 제3 항에 있어서,
    상기 델타 인덱서는 복수의 델타 인덱서부들을 포함하고,
    상기 복수의 델타 인덱서부들의 각각은 독립적으로 상기 복수의 저장부들의 각각으로부터 제공되는 상기 델타 데이터 소스에 기초하여 델타 인덱스 정보를 생성하는 것을 특징으로 하는 델타 인덱싱 시스템.
  9. 제8 항에 있어서,
    상기 서처는 복수의 서처부들을 포함하고,
    상기 서처부들의 각각은 상기 제1 내지 제k 데이터 소스들의 각각에 대한 상기 통합 인덱스 정보를 생성하는 것을 특징으로 하는 델타 인덱싱 시스템.
  10. 데이터 소스를 제공하는 데이터 소스 제공부;
    상기 데이터 소스를 제 1 내지 제n 델타 데이터 소스들로 구분하고, 상기 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 제공하는 인덱서(indexer); 및
    상기 델타 인덱스 정보들을 통합하여 통합 인덱스 정보를 생성하고, 검색 입력에 상응하는 검색 결과를 제공하는 서처(searcher)를 포함하고,
    상기 인덱서는 상기 델타 인덱스 정보에 포함되는 데이터를 압축하여 상기 서처에 제공하는 것을 특징으로 하는 델타 인덱싱 시스템.
  11. 데이터 소스를 수신하는 단계;
    상기 데이터 소스를 제1 내지 제n (n은 1보다 큰 자연수) 델타 데이터 소스들로 구분하는 단계;
    상기 제1 내지 제n 델타 데이터 소스들 각각에 포함되는 델타 인덱스 정보들을 생성하는 단계;
    상기 델타 인덱스 정보들을 서처에 전달하는 단계; 및
    상기 서처가 상기 델타 인덱스 정보들을 통합하여 통합 인덱스 정보를 생성하는 단계를 포함하고,
    상기 델타 인덱스 정보들이 압축되어 상기 서처에 전달되는 경우, 상기 서처는 상기 델타 인덱스 정보들에 대한 압축 해제 동작을 수행하는 것을 특징으로 하는 델타 인덱싱 시스템의 동작 방법.
  12. 삭제
KR1020140058700A 2014-05-16 2014-05-16 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법 KR101565528B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140058700A KR101565528B1 (ko) 2014-05-16 2014-05-16 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140058700A KR101565528B1 (ko) 2014-05-16 2014-05-16 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법

Publications (1)

Publication Number Publication Date
KR101565528B1 true KR101565528B1 (ko) 2015-11-03

Family

ID=54599364

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140058700A KR101565528B1 (ko) 2014-05-16 2014-05-16 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법

Country Status (1)

Country Link
KR (1) KR101565528B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101150112B1 (ko) 2004-05-14 2012-06-08 마이크로소프트 코포레이션 데이터베이스 인덱싱 및 검색을 위한 방법 및 시스템
KR101253942B1 (ko) * 2012-06-20 2013-04-16 고익진 리얼타임 인덱서 기반 데이터 수집/검색시스템 및 데이터 수집/검색방법
KR101311409B1 (ko) 2011-08-04 2013-09-25 성균관대학교산학협력단 부분적인 인덱스 rid 정렬을 통한 파티션 스캔 방법 및 장치, 메모리 시스템, 및 데이터 정렬 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101150112B1 (ko) 2004-05-14 2012-06-08 마이크로소프트 코포레이션 데이터베이스 인덱싱 및 검색을 위한 방법 및 시스템
KR101311409B1 (ko) 2011-08-04 2013-09-25 성균관대학교산학협력단 부분적인 인덱스 rid 정렬을 통한 파티션 스캔 방법 및 장치, 메모리 시스템, 및 데이터 정렬 방법
KR101253942B1 (ko) * 2012-06-20 2013-04-16 고익진 리얼타임 인덱서 기반 데이터 수집/검색시스템 및 데이터 수집/검색방법

Similar Documents

Publication Publication Date Title
US9853986B2 (en) Clustering event data by multiple time dimensions
US20150237113A1 (en) Method and system for file transmission
CN113067883B (zh) 数据传输方法、装置、计算机设备及存储介质
US11841864B2 (en) Method, device, and program product for managing index of streaming data storage system
AU2013210018B2 (en) Location independent files
US11416278B2 (en) Presenting hypervisor data for a virtual machine with associated operating system data
CN103067525A (zh) 一种基于特征码的云存储数据备份方法
CN102968591B (zh) 基于行为片段共享的恶意软件特征聚类分析方法及系统
Shannigrahi et al. Named data networking in climate research and hep applications
CN105528454A (zh) 日志处理方法及分布式集群的计算设备
US20130086133A1 (en) Method and apparatus for file revision tracking
CN105045598A (zh) 一种基于Java的web前端性能优化及上线的方法和系统
CN103744882A (zh) 一种基于键值对的目录片段表示方法及装置
KR101565528B1 (ko) 델타 인덱싱 시스템 및 델타 인덱싱 시스템의 동작 방법
Cao et al. LogKV: Exploiting key-value stores for event log processing
CN112445776A (zh) 基于Presto的动态分桶方法、系统、设备及可读存储介质
KR100870144B1 (ko) 웹 페이지 관리를 위한 웹 아카이브 시스템 및 방법
CN113179302A (zh) 日志系统以及日志数据的收集方法和收集装置
KR20100116056A (ko) 디지털 콘텐츠 저작권 보호를 위한 분산 필터링 장치 및 그 방법
Yang et al. Haste: A distributed system for hybrid and adaptive processing on streaming spatial-textual data
KR101865317B1 (ko) 데이터 분산처리 시스템을 위한 빅 데이터의 전처리 장치 및 방법
KR101089294B1 (ko) 구조적 p2p 네트워크를 위한 데이터 매핑 방법 및 장치
US11934655B2 (en) Systems and methods for a log partitioner service
CN108920104B (zh) 一种无中心的视频监控云存取方法
CN114861743A (zh) 用于管理数据模式的方法、设备和程序产品

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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