KR101694285B1 - 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법 - Google Patents

질의 분할을 이용한 데이터 스트림 처리 장치 및 방법 Download PDF

Info

Publication number
KR101694285B1
KR101694285B1 KR1020130015772A KR20130015772A KR101694285B1 KR 101694285 B1 KR101694285 B1 KR 101694285B1 KR 1020130015772 A KR1020130015772 A KR 1020130015772A KR 20130015772 A KR20130015772 A KR 20130015772A KR 101694285 B1 KR101694285 B1 KR 101694285B1
Authority
KR
South Korea
Prior art keywords
query
unit
data stream
subquery
sub
Prior art date
Application number
KR1020130015772A
Other languages
English (en)
Other versions
KR20140102457A (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 KR1020130015772A priority Critical patent/KR101694285B1/ko
Priority to US14/017,476 priority patent/US20140229506A1/en
Publication of KR20140102457A publication Critical patent/KR20140102457A/ko
Application granted granted Critical
Publication of KR101694285B1 publication Critical patent/KR101694285B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24535Query rewriting; Transformation of sub-queries or views
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

분할된 서브 질의들을 복수의 데이터 스트림 처리 장치에서 분할/병렬 처리하도록 한 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법이 제시된다. 제시된 질의 분할을 이용한 데이터 스트림 처리 장치는 사용자로부터 질의를 수신하여 복수의 서브 질의로 분할하고, 분할된 복수의 서브 질의들을 다른 데이터 스트림 처리 장치 또는 서브 질의 처리부로 전송하고, 다른 데이터 스트림 처리 장치 및 서브 질의 처리부에서 처리된 서브 질의의 처리 결과들을 통합하여 질의에 대한 응답을 생성하고, 생성된 응답을 사용자에게 전송한다.

Description

질의 분할을 이용한 데이터 스트림 처리 장치 및 방법{APPARATUS AND METHOD FOR PROCESSING DATA STREAM USING QUERY PARTITIONING}
본 발명은 데이터 스트림 처리 기술에 관한 것으로, 더욱 상세하게는 데이터의 폭발적인 양(Volume)의 증가와 데이터의 생성 속도(Velocity)가 증가하는 빅 데이터 환경에서 사용자의 질의에 대해 빠르고 정확한 결과를 제공하는 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법에 대한 것이다.
일반적으로 구조화된 데이터를 효율적으로 저장 및 관리하고, 빠른 질의를 통해 검색할 수 위해 데이터 베이스 관리 시스템(DBMS, Database Management System)이 사용된다.
도 1에 도시된 바와 같이, 일반적으로 데이터 베이스 관리 시스템은 하나의 중앙서버를 통해 사용자가 요청한 질의를 처리하도록 구성된다. 즉, 중앙서버(11)는 데이터 소스(14)로부터 수집한 정보를 저장소(12)에 사전에 저장해 놓는다. 이를 통해 사용자(13)의 질의 요청에 따라 중앙서버(11)가 질의의 결과를 저장소(12)의 데이터를 통해 추출하여 사용자(13)에게 응답하는 형태이다.
종래의 데이터 베이스 관리 시스템은 정적으로 저장된 데이터에 대한 처리를 기본으로 하여 일반적인 데이터의 처리에 있어서는 빠르고 정확한 응답이 가능하다.
하지만, 최근에는 데이터의 생성 양, 주기, 형식(정형/비정형 데이터) 등이 방대한 빅 데이터(big data)가 출현함에 따라 빅 데이터 환경이 도래하였다. 빅 데이터는 기존 데이터에 비해 너무 크기 때문에 데이터 베이스 관리 시스템만으로는 데이터의 수집, 저장, 검색, 분석을 위한 처리 시간이 증가하고, 정확한 결과를 제공하지 못하는 문제점이 있다. 즉, 종래의 정적 중앙서버 관리 방식의 데이터 베이스 관리 시스템은 지속적으로 변화하는 대량의 데이터에 대한 수많은 질의를 처리시 부하가 증가하게 되어 질의에 대한 빠른 응답이 어려운 문제점이 있다.
또한, 센서 네트워크(sensor network), 제조 공정 실시간 데이터, SNS(social network service) 데이터와 같이 동적으로 매 순간 발생하는 데이터는 정적으로 저장되는 것이 아니고, 네트워크를 통해 끊임없이 흐르는 특징을 보인다.
이러한 빅 데이터 환경의 문제점을 해결하기 위해 데이터 스트림 처리 시스템(DSPS: Data Stream Processing System)이 적용되었다.
일반적으로, 데이터 스트림 처리 시스템은 단일 서버로 구성되어, 네트워크를 통해 끊임없이 흐르는 동적인 데이터를 이용하여 사용자의 질의에 대한 응답을 제공한다. 즉, 도 2에 도시된 바와 같이, 데이터 스트림을 통해 관리되는 데이터 스트림 처리 시스템은 데이터 스트림 소스(23)형태의 데이터가 중앙서버(21)에서 데이터 스트림 처리(data stream processing) 형태(24)의 데이터로 변환하여 관리하고, 중앙서버(21)에서 사용자(22)가 요청한 질의 순간에 보유한 데이터에 대해서 질의 결과를 응답하는 형태이다. 일례로, 한국공개특허 제10-2011-0055166호(명칭: 클러스터 질의를 이용한 데이터 스트림 처리 장치 및 방법에서는 단일 서버에서 복수의 단말들로부터 요청되는 질의에 대한 데이터 스트림 처리를 수행하는 기술을 개시하고 있다.
이러한 종래의 데이터 스트림 처리 시스템에서는 지속적으로 변화하는 대량의 데이터에 대한 처리가 용이하다는 장점이 있으나, 빅 데이터와 같이 폭발적으로 증가하는 대량의 데이터 양(Volume)과 빠른 생성 속도(Velocity)로 인한 단일 서버에서 단일 데이터 스트림 소스로부터의 수많은 질의를 처리하는 데 부하(overhead)가 발생하게 되는 문제점이 있다. 즉, 방대한 데이터 양(Volume)을 효율적으로 처리하기 위해서는 단일서버의 처리가 불가능하고, 데이터의 출현/생성 속도(Velocity)가 빠르게 증가하여 데이터의 빠른 처리가 어려워지는 문제점이 있다.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로, 질의를 복수의 서브 질의들로 분할하고, 복수의 데이터 스트림 처리 장치에서 분할된 서브 질의들을 분할 처리 및 병렬 처리하여 빠르고 정확한 결과를 사용자에게 제공하도록 한 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위하여 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치는, 사용자로부터 데이터 스트림 처리를 위한 질의를 수신하는 질의 수신부; 질의 수신부로부터 전송받은 질의를 복수의 서브 질의로 분할하는 질의 분할부; 분할된 복수의 서브 질의들 중에서 적어도 하나를 다른 데이터 스트림 처리 장치로 전송하는 서브 질의 전송부; 서브 질의 전송부로부터 전송받은 서브 질의를 처리하는 서브 질의 처리부; 다른 데이터 스트림 처리 장치 및 서브 질의 처리부로부터 전송받은 서브 질의 결과들을 통합하여 질의에 대한 응답을 생성하는 질의 통합부; 및 질의 통합부로부터 전송받은 응답을 사용자에게 전송하는 질의 회신부를 포함한다.
질의 수신부는, 다른 데이터 스트림 처리 장치로부터 서브 질의를 수신하여 서브 질의 처리부에게로 전송한다.
질의 분할부는, 질의 패턴을 근거로 수신한 질의를 복수의 서브 질의들로 분할하고, 서브 질의의 속성에 따라 설정된 대상 장치를 포함하는 서브 질의를 서브 질의 전송부에게로 전송한다.
서브 질의 전송부는, 질의 분할부로부터 수신한 서브 질의에 포함된 대상 장치를 근거로 다른 데이터 스트림 장치들 및 서브 질의 처리부 중에 적어도 하나에게로 서브 질의를 전송한다.
서브 질의 전송부는, 분할된 복수의 서브 질의들 중에서 자체 처리 대상인 서브 질의를 서브 질의 처리부에게로 전송한다.
서브 질의 처리부는, 다른 데이터 스트림 처리 장치로부터의 서브 질의를 질의 수신부로부터 수신하고, 수신한 서브 질의를 처리한 처리 결과를 질의 통합부에게로 전송한다.
질의 통합부는, 다른 데이터 스트림 처리 장치로부터 수신한 서브 질의의 처리 결과를 서브 질의 처리부로부터 수신하여 다른 데이터 스트림 처리 장치에게로 전송한다.
질의 회신부로부터 질의의 유형 및 형태를 포함하는 질의 패턴을 전송받아 관리하는 질의 관리부를 더 포함한다.
질의 관리부는 기저장된 질의 패턴을 검출하여 질의 분할부에게로 전송한다.
질의의 유형 및 형태를 포함하는 질의 패턴을 저장하는 질의 패턴 저장부를 더 포함한다.
상기한 목적을 달성하기 위하여 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법은, 질의 수신부에 의해, 사용자로부터 데이터 스트림 처리를 위한 질의를 수신하는 단계; 질의 분할부에 의해 수신한 질의를 복수의 서브 질의로 분할하는 단계; 서브 질의 전송부에 의해, 분할된 복수의 서브 질의들 중에 적어도 하나를 다른 데이터 스트림 처리 장치에게로 전송하는 단계; 서브 질의 처리부에 의해, 서브 질의 전송부로부터 전송받은 서브 질의를 처리하는 단계; 질의 통합부에 의해, 다른 데이터 스트림 처리 장치 및 서브 질의 처리부로부터 전송받은 서브 질의 결과들을 통합하여 질의에 대한 응답을 생성하는 단계; 및 질의 회신부에 의해, 생성된 응답을 사용자에게 전송하는 단계를 포함한다.
질의 수신부에 의해, 다른 데이터 스트림 처리 장치로부터 서브 질의를 수신하는 단계를 더 포함한다.
서브 질의 처리부에 의해, 수신한 다른 스트림 처리 장치로부터의 서브 질의를 처리하는 단계를 더 포함한다.
서브 질의로 분할하는 단계는, 질의 분할부에 의해, 질의를 복수의 서브 질의들로 분할하는 단계; 질의 분할부에 의해, 분할된 서브 질의의 속성에 따라 대상 장치를 설정하는 단계; 및 질의 분할부에 의해, 설정된 대상 장치를 포함하는 서브 질의를 생성하는 단계를 포함한다.
서브 질의로 분할하는 단계는, 질의 관리부에 의해, 기저장된 질의 패턴을 검출하는 단계; 및 질의 분할부에 의해, 검출한 질의 패턴을 근거로 질의를 복수의 서브 질의들로 분할하는 단계를 포함한다.
다른 데이터 스트림 처리 장치에게로 전송하는 단계에서는, 서브 질의 전송부에 의해, 분할된 서브 질의에 포함된 대상 장치를 근거로 다른 데이터 스트림 장치들에게로 서브 질의를 전송한다.
서브 질의 전송부에 의해, 분할된 서브 질의에 포함된 대상 장치를 근거로 서브 질의 처리부에게로 서브 질의를 전송하는 단계를 더 포함한다.
질의 통합부에 의해, 다른 데이터 스트림 처리 장치로부터 수신한 서브 질의의 처리 결과를 다른 데이터 스트림 처리 장치에게로 전송하는 단계를 더 포함한다.
질의 회신부에 의해, 질의의 유형, 형태를 포함하는 질의 패턴을 검출하는 단계를 더 포함한다.
질의 관리부에 의해, 질의 패턴을 검출하는 단계에서 검출된 질의의 유형 및 형태를 포함하는 질의 패턴을 전송받아 질의 패턴 저장부에 저장하는 단계를 더 포함한다.
본 발명에 의하면, 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법은 데이터 스트림의 처리를 위해 다중/분산 처리를 통해 데이터 스트림을 수용하고, 사용자에게 요청된 질의를 서브 질의로 분할하여 다수의 데이터 스트림 처리 장치에서 분할, 병렬 실행함으로써, 데이터의 폭발적인 양의 증가와 데이터의 생성 속도(Velocity)가 증가하는 환경에서 사용자의 질의에 대한 응답 속도를 현저히 줄일 수 있으며, 다량의 데이터에 대한 수용 능력이 향상되어 더욱 정확한 질의 결과를 제공할 수 있는 효과가 있다.
또한, 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법은 다음 질의에 대한 효율적인 패턴을 찾기 위해 처리된 질의의 유형/형태를 포함하는 질의 패턴을 저장하고, 이를 질의 분할시 피드백함으로써, 질의의 패턴에 대한 학습을 통해 효과적인 질의 분할 처리를 수행할 수 있는 효과가 있다.
또한, 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법은 하나의 질의를 복수의 서브 질의로 분할하면서 질의 처리에 대한 병렬성(parallelism)을 보장하여 질의 분할 처리의 처리 속도를 향상시킬 수 있는 효과가 있다.
도 3은 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치를 포함하여 구성되는 데이터 스트림 처리 시스템의 일례를 설명하기 위한 도면.
도 4는 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치를 포함하여 구성되는 데이터 스트림 처리 시스템의 질의 처리를 설명하기 위한 도면.
도 5는 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치의 구성을 설명하기 위한 블록도.
도 6 및 도 7은 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법을 설명하기 위한 흐름도.
도 8은 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법의 일례를 설명하기 위한 흐름도.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부 도면을 참조하여 설명하기로 한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
이하, 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치를 첨부된 도면을 참조하여 상세하게 설명하면 아래와 같다.
도 3은 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치를 포함하여 구성되는 데이터 스트림 처리 시스템의 일례를 설명하기 위한 도면이다.
도 3에 도시된 바와 같이, 데이터 스트림 처리 시스템은 복수의 질의 분할을 이용한 데이터 스트림 처리 장치(이하, 데이터 스트림 처리 장치(100))들로 구성된다.
데이터 스트림 처리 시스템은 복수의 데이터 스트림 처리 장치(100)들이 분산 데이터 스트림 소스(200)를 개별적으로 분할하여 받는 구조로 구성된다.
데이터 스트림 처리 장치(100)는 사용자(300)로부터 요청된 질의를 분할(partitioning)한 서브 질의를 서로 교환한다. 이때, 데이터 스트림 처리 장치(100)들은 각각 서로 다른 속성의 서브 질의를 처리하는 것으로 구성되며, 분할된 서브 질의들 각각의 속성에 맞는 데이터 스트림 처리 장치(100)에게로 전송한다.
데이터 스트림 처리 장치(100)는 수신한 서브 질의에 대한 처리 결과를 해당 서브 질의를 전송한 데이터 스트림 처리 장치(100)에게로 전송한다. 데이터 스트림 처리 장치(100)는 다른 데이터 스트림 처리 장치(100)들로부터 수신한 서브 질의 처리 결과를 통합하여 질의 결과를 생성하고, 이를 사용자(300)에게 전송한다.
이때, 도 3에서는 3대의 데이터 스트림 처리 장치(100)로 구성되는 것으로 도시하였으나, 이에 한정되지 않고 2대 이상으로 구성될 수 있다.
데이터 스트림 처리 장치(100)는 상기한 질의 처리를 수행한 후에, 처리한 질의의 서브 질의, 해당 서브 질의에 대한 결과를 요청한 데이터 스트림 처리 장치(100), 및 해당 서브 질의를 수행한 데이터 스트림 처리 장치(100)를 연계하여 저장한다. 그에 따라, 하나의 질의를 수행한 후 서브 질의가 최소 2대 이상의 데이터 스트림 처리 장치(100)들에 저장되어 서브 질의 요청/응답에 대한 네트워크가 가상으로 구성되어 서브 질의 공유 네트워크(400)를 형성된다. 이때, 처리되는 질의의 수가 증가함에 따라 서브 질의와 서브 질의의 결과가 서브 질의 공유 네트워크상으로 통해 분산된다. 그에 따라, 자주 질의되는 서브 질의가 복수의 데이터 스트림 처리 장치에서 모두 공유됨으로써, 서브 질의의 처리시 캐싱(Caching) 효과로 빠른 처리가 가능해진다.
도 4는 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치를 포함하여 구성되는 데이터 스트림 처리 시스템의 질의 처리를 설명하기 위한 도면이다. 여기서, 서브 질의의 분할에 대한 개수와 이를 포함한 데이터 스트림 처리 장치의 개수는 본 도면에 나온 형태로 제한되지 않으며, 하나의 질의를 서브 질의로 분할하여, 여러 서버에서 분할(partitioning)된 질의를 처리하고, 다시 요청한 서버에 보내져서, 일을 수행하는 형태로 이에 대한 구성은 특정한 부분에 국한되지 않는다.
도 4에 도시된 바와 같이, 데이터 스트림 처리 시스템은 데이터 스트림 처리 장치A(100a), 데이터 스트림 처리 장치B(100b), 데이터 스트림 처리 장치B(100b)를 포함하여 구성되는 것으로 가정한다.
사용자(300)가 데이터 스트림 처리 장치A(100a)에게로 질의 1을 요청하면, 데이터 스트림 처리 장치A(100a)는 수신한 질의 1을 3개의 서브 질의(즉, 질의 1a, 질의 1b, 질의 1c)로 분할한다.
데이터 스트림 처리 장치A(100a)는 분할된 서브 질의들의 속성에 따라 해당 데이터 스트림 처리 장치(100)에게로 전송한다. 즉, 질의 1a는 데이터 스트림 처리 장치A(100a)의 속성에 해당하므로 데이터 스트림 처리 장치A(100a)에서 수행되며, 그 결과로 응답 1a를 도출한다.
질의 1b는 데이터 스트림 처리 장치B(100b)의 속성에 해당하므로 데이터 스트림 처리 장치B(100b)에게로 전송한다. 그에 따라, 데이터 스트림 처리 장치B(100b)는 수신한 질의 1b를 수행하고, 그 결과인 응답 1b를 데이터 스트림 처리 장치A(100a)에게로 전송한다.
질의 1c는 데이터 스트림 처리 장치C(100c)의 속성에 해당하므로 데이터 스트림 처리 장치C(100c)에게로 전송한다. 그에 따라, 데이터 스트림 처리 장치C(100c)는 수신한 질의 1c를 수행하고, 그 결과인 응답 1c를 데이터 스트림 처리 장치A(100a)에게로 전송한다.
데이터 스트림 처리 장치A(100a)는 응답 1a, 응답 1b, 응답 1c를 통합하여 질의 1에 대한 처리 결과인 응답 1을 생성하여 사용자(300)에게 제공한다.
여기서, 사용자에게 요청을 받은 데이터 스트림 처리 장치A(100a)는 질의 1a에 대한 결과를 이전에 요청받은 서브 질의가 동일한 경우, 새롭게 질의 처리를 수행하지 않을 수도 있다.
일례로, 이전에 처리된 질의 1에 대한 결과인 응답 1이 저장되어 있는 경우, 데이터 스트림 처리 장치A(100a)는 저장된 응답 1을 검출하여 사용자(300)에게 제공한다.
다른 일례로, 이전에 처리된 질의 1의 서브 질의인 서브 질의 1a에 대한 결과인 응답 1a만 저장되어 있는 경우, 데이터 스트림 처리 장치A(100a)는 데이터 스트림 처리 장치B(100b) 및 데이터 스트림 처리 장치C(100c)에게로 서브 질의 1a 및 서브 질의 1b에 대한 결과 전송을 요청한다. 그에 따라, 데이터 스트림 처리 장치B(100b) 및 데이터 스트림 처리 장치C(100c)는 기저장된 응답 1b(즉, 서브 질의 1b에 대한 결과) 및 응답 1c(즉, 서브 질의 1c에 대한 결과)를 검출하여 데이터 스트림 처리 장치A(100a)에게로 전송한다. 데이터 스트림 처리 장치A(100a)는 기저장된 응답 1a와, 수신한 응답 1b 및 응답 1c를 통합하여 질의 1에 대한 처리 결과인 응답 1을 생성하여 사용자(300)에게 제공한다.
도 5는 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 장치의 구성을 설명하기 위한 블록도이다.
도 5에 도시된 바와 같이, 데이터 스트림 처리 장치(100)는 질의 수신부(110), 질의 분할부(120), 서브 질의 전송부(130), 서브 질의 처리부(140), 질의 통합부(150), 질의 회신부(160), 질의 관리부(170), 질의 패턴 저장부(180)를 포함하여 구성된다.
질의 수신부(110)는 사용자(300)로부터 질의를 수신한다. 즉, 질의 수신부(110)는 사용자(300)로부터 분산 데이터 스트림 소스(200)를 이용한 처리를 요청하기 위한 질의를 수신한다. 질의 수신부(110)는 수신한 질의를 질의 분할부(120)에게로 전송한다.
질의 수신부(110)는 다른 데이터 스트림 처리 장치(100)로부터 서브 질의를 수신한다. 즉, 질의 수신부(110)는 다른 데이터 스트림 처리 장치(100)로부터 분산 데이터 스트림 소스(200)를 이용한 분할 처리를 위한 서브 질의를 수신한다. 질의 수신부(110)는 수신한 서브 질의를 서브 질의 처리부(140)에게로 전송한다.
질의 분할부(120)는 질의 수신부(110)로부터 질의를 수신하면 질의 수행 획을 수립한다. 질의 분할부(120)는 질의 수행 계획 및 기저장된 질의 패턴을 근거로 수신한 질의를 복수의 서브 질의로 분할한다. 즉, 질의 분할부(120)는 수신한 질의를 속성에 따라 복수의 서브 질의로 분할한다. 이를 위해, 질의 분할부(120)는 질의 관리부(170)에게로 질의 패턴의 전송을 요청한다. 질의 분할부(120)는 질의 관리부(170)로부터 수신한 질의 패턴을 근거로 수신한 질의를 복수의 서브 질의로 분할한다. 이때, 질의 분할부(120)는 서브 질의의 속성에 따라 대상 장치(즉, 데이터 스트림 처리 시스템에 포함된 복수의 데이터 스트림 처리 장치(100) 중에 하나)를 설정한다. 질의 분할부(120)는 설정된 대상 장치를 포함하는 서브 질의를 서브 질의 전송부(130)에게로 전송한다.
서브 질의 전송부(130)는 질의 분할부(120)로부터 수신한 복수의 서브 질의를 해당 데이터 스트림 처리 장치(100)에게로 전송한다. 즉, 서브 질의 전송부(130)는 수신한 서브 질의로부터 대상 장치를 검출한다. 서브 질의 전송부(130)는 수신한 서브 질의를 검출한 대상 장치에게로 전송한다. 이때, 서브 질의 전송부(130)는 대상 장치가 자신(즉, 질의를 수신한 데이터 스트림 처리 장치(100))인 경우 서브 질의 처리부(140)에게로 서브 질의를 전송한다.
서브 질의 처리부(140)는 수신되는 서브 질의를 처리한다. 즉, 서브 질의 처리부(140)는 질의 수신부(110) 또는 서브 질의 전송부(130)로부터 수신한 서브 질의를 수행한다. 이때, 서브 질의 처리부(140)는 분산 데이터 스트림 소스(200)를 이용하여 서브 질의를 수행한다. 서브 질의 처리부(140)는 서브 질의의 처리 결과를 질의 통합부(150)에게로 전송한다.
질의 통합부(150)는 서브 질의 처리부(140)로부터 수신한 서브 질의의 처리 결과와 다른 데이터 스트림 처리 장치(100)로부터 수신한 서브 질의의 처리 결과들을 통합하여 사용자(300)로부터 수신한 질의에 대한 응답을 생성한다. 질의 통합부(150)는 생성한 응답을 질의 회신부(160)에게로 전송한다.
질의 통합부(150)는 서브 질의 처리부(140)로부터 다른 데이터 스트림 처리 장치(100)로부터 수신한 서브 질의에 대한 처리 결과를 해당 데이터 스트림 처리 장치(100)에게로 전송한다. 즉, 질의 통합부(150)는 질의 수신부(110)를 통해 다른 데이터 스트림 처리 장치(100)로부터 수신한 서브 질의에 대한 처리 결과를 해당 데이터 스트림 처리 장치(100)의 질의 통합부(150)에게로 전송한다.
질의 회신부(160)는 질의 통합부(150)로부터 수신한 응답을 사용자(300)에게 전송한다. 즉, 질의 회신부(160)는 사용자(300)로부터의 질의에 대한 처리 결과인 응답을 질의 통합부(150)로부터 수신하여 사용자(300)게에 제공한다. 질의 회신부(160)는 질의의 유형, 형태를 포함하는 질의 패턴을 질의 관리부(170)에게로 전송한다.
질의 관리부(170)는 질의 회신부(160)로부터 수신한 질의 패턴을 질의 패턴 저장부(180)에 저장하여 관리한다. 질의 관리부(170)는 질의 분할부(120)의 요청에 따라 질의 패턴 저장부(180)에 저장된 질의 패턴을 검출하여 질의 분할부(120)에게로 전송한다.
질의 패턴 저장부(180)는 질의 관리부(170)로부터 전송된 질의 패턴을 저장한다. 즉, 질의 패턴 저장부(180)는 질의의 유형, 형태를 포함하는 질의 패턴을 저장한다.
이하, 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법을 첨부된 도면을 참조하여 상세하게 설명하면 아래와 같다. 도 6 및 도 7은 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법을 설명하기 위한 흐름도이다.
질의 수신부(110)는 사용자(300) 또는 다른 데이터 스트림 처리 장치(100)로부터 질의를 수신한다. 즉, 질의 수신부(110)는 사용자(300)로부터 질의를 수신하거나, 다른 데이터 스트림 처리 장치(100)로부터 서브 질의를 수신한다.
수신한 질의가 사용자(300)로부터 입력된 질의이면(S110; 예), 질의 수신부(110)는 수신한 질의를 질의 분할부(120)에게로 전송한다. 이때, 질의 수신부(110)는 다른 데이터 스트림 처리 장치(100)로부터 서브 질의를 수신한 경우 서브 질의 처리부(140)에게로 수신한 서브 질의를 전송한다.
질의 분할부(120)는 질의 수행 계획을 수립하고(S120), 기수립한 질의 수행 계획 및 질의 패턴 저장부(180)에 저장된 질의 패턴들을 근거로 수신한 질의를 복수의 서브 질의로 분할한다(S130). 이를 첨부된 도 7을 참조하여 더욱 상세하게 설명하면 아래와 같다.
질의 분할부(120)는 질의 관리부(170)에게로 질의 패턴의 전송을 요청한다(S132). 그에 따라, 질의 관리부(170)는 질의 패턴 저장부(180)에 저장된 질의 패턴들을 검출하여 질의 분할부(120)에게로 전송한다.
질의 분할부(120)는 질의 관리부(170)로부터 수신한 질의 패턴 및 질의 수행 계획을 근거로 질의를 복수의 서브 질의로 분할한다(S134).
질의 분할부(120)는 기분할된 서브 질의들 각각의 속성에 따라 대상 장치를 설정한다(S136). 질의 분할부(120)는 설정된 대상 장치를 포함하는 서브 질의를 서브 질의 전송부(130)에게로 전송한다.
서브 질의 전송부(130)는 질의 분할부(120)로부터 수신한 서브 질의들을 전송한다(S140). 즉, 서브 질의 전송부(130)는 수신한 서브 질의로부터 대상 장치를 검출한다. 서브 질의 전송부(130)는 수신한 서브 질의를 검출한 대상 장치에게로 전송한다. 이때, 서브 질의 전송부(130)는 대상 장치가 자신(즉, 질의를 수신한 데이터 스트림 처리 장치(100))인 경우 서브 질의 처리부(140)에게로 서브 질의를 전송한다.
서브 질의 처리부(140)는 다른 데이터 스트림 처리 장치(100) 또는 서브 질의 전송부(130)로부터 수신한 서브 질의를 실행한다(S150). 이때, 서브 질의 처리부(140)는 분산 데이터 스트림 소스(200)를 이용하여 서브 질의를 수행한다. 서브 질의 처리부(140)는 서브 질의의 처리 결과를 질의 통합부(150)에게로 전송한다.
질의 통합부(150)는 기전송된 서브 질의들에 대한 처리 결과를 다른 데이터 스트림 처리 장치(100)들로부터 수신한다(S160). 즉, 질의 통합부(150)는 서브 질의 전송부(130)에 의해 전송된 서브 질의들에 대한 처리 결과를 해당 데이터 스트림 처리 장치(100)로부터 수신한다.
질의 통합부(150)는 서브 질의 처리부(140)의 서브 질의 처리 결과 및 기수신한 서브 질의들의 처리 결과를 통합한다(S170). 즉, 질의 통합부(150)는 서브 질의 처리부(140)로부터 수신한 서브 질의의 처리 결과와 다른 데이터 스트림 처리 장치(100)로부터 수신한 서브 질의의 처리 결과들을 통합하여 사용자(300)로부터 수신한 질의에 대한 응답을 생성한다. 질의 통합부(150)는 생성한 응답을 질의 회신부(160)에게로 전송한다. 이때, 질의 통합부(150)는 서브 질의 처리부(140)로부터 다른 데이터 스트림 처리 장치(100)로부터 수신한 서브 질의에 대한 처리 결과를 해당 데이터 스트림 처리 장치(100)에게로 전송한다. 즉, 질의 통합부(150)는 질의 수신부(110)를 통해 다른 데이터 스트림 처리 장치(100)로부터 수신한 서브 질의에 대한 처리 결과를 해당 데이터 스트림 처리 장치(100)의 질의 통합부(150)에게로 전송한다.
질의 회신부(160)는 질의 통합부(150)에서 통합된 질의 결과를 사용자(300)에게 전송한다(S180). 즉, 질의 회신부(160)는 사용자(300)로부터의 질의에 대한 처리 결과인 응답을 질의 통합부(150)로부터 수신하여 사용자(300)에게로 제공한다. 이때, 질의 회신부(160)는 질의의 유형, 형태를 포함하는 질의 패턴을 질의 관리부(170)에게로 전송한다. 그에 따라, 질의 관리부(170)는 질의 회신부(160)로부터 수신한 질의 패턴을 질의 패턴 저장부(180)에 저장하여 관리한다.
이하, 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법의 일례를 첨부된 도면을 참조하여 상세하게 설명하면 아래와 같다. 도 8은 본 발명의 실시예에 따른 질의 분할을 이용한 데이터 스트림 처리 방법의 일례를 설명하기 위한 흐름도이다. 이하에서는, 데이터 스트림 처리 시스템이 데이터 스트림 처리 장치A(100a)와 데이터 스트림 처리 장치B(100b) 2대로 구성된 것으로 가정한다.
사용자1(300a)로부터 질의 1이 데이터 스트림 처리 장치A(100a)에게로 전송되면(S210), 데이터 스트림 처리 장치A(100a)는 질의 수행 계획을 수립하고(S220), 질의 1을 서브 질의로 분할한다(S230). 이때, 데이터 스트림 처리 장치A(100a)는 질의 1을 2개의 서브 질의(즉, 서브 질의 1a 및 서브 질의 1b)로 분할한다.
데이터 스트림 처리 장치A(100a)는 분할한 서브 질의 중에서 데이터 스트림 처리 장치B(100b)에서 처리해야 하는 서브 질의 1b를 데이터 스트림 처리 장치B(100b)에게로 전송한다(S240).
데이터 스트림 처리 장치A(100a)는 자신이 처리할 서브 질의 1a를 실행하고(S250), 데이터 스트림 처리 장치B(100b)는 수신한 서브 질의 1b를 실행한다(S260).
데이터 스트림 처리 장치B(100b)는 서브 질의 1b의 실행 결과를 데이터 스트림 처리 장치A(100a)에게로 전송한다(S270).
데이터 스트림 처리 장치A(100a)는 데이터 스트림 처리 장치B(100b)로부터 수신한 서브 질의 1B의 실행 결과와 자신이 처리한 서브 질의 1a의 실행 결과를 통합한다(S280). 데이터 스트림 처리 장치A(100a)는 서브 질의 1a 및 서브 질의 1b를 통합하여 생성한 질의 1의 결과인 응답 1을 사용자1(300a)에게로 전송한다(S290).
이때, 사용자2(300b)로부터 질의 2가 데이터 스트림 처리 장치B(100b)에게로 전송되면(S310), 데이터 스트림 처리 장치B(100b)는 질의 수행 계획을 수립하고(S320), 질의 2를 서브 질의로 분할한다(S330). 이때, 데이터 스트림 처리 장치B(100b)는 질의 2를 2개의 서브 질의(즉, 서브 질의 2a 및 서브 질의 2b)로 분할한다.
데이터 스트림 처리 장치B(100b)는 분할한 서브 질의 중에서 데이터 스트림 처리 장치A(100a)에서 처리해야하는 서브 질의 2a를 데이터 스트림 처리 장치A(100a)에게로 전송한다(S340).
데이터 스트림 처리 장치B(100b)는 자신이 처리할 서브 질의 2b를 실행하고(S350), 데이터 스트림 처리 장치A(100a)는 수신한 서브 질의 2a를 실행한다(S360).
데이터 스트림 처리 장치A(100a)는 서브 질의 2a의 실행 결과를 데이터 스트림 처리 장치B(100b)에게로 전송한다(S370).
데이터 스트림 처리 장치B(100b)는 데이터 스트림 처리 장치A(100a)로부터 수신한 서브 질의 2a의 실행 결과와 자신이 처리한 서브 질의 2b의 실행 결과를 통합한다(S380). 데이터 스트림 처리 장치B(100b)는 서브 질의 2a 및 서브 질의 2b를 통합하여 생성한 질의 2의 결과인 응답 2를 사용자2(300b)에게로 전송한다(S390).
상술한 바와 같이, 질의 분할을 이용한 데이터 스트림 처리 장치(100) 및 방법은 데이터 스트림의 처리를 위해 다중/분산 처리를 통해 데이터 스트림을 수용하고, 사용자(300)에게 요청된 질의를 서브 질의로 분할하여 다수의 데이터 스트림 처리 장치(100)에서 분할. 병렬 실행함으로써, 데이터의 폭발적인 양의 증가와 데이터의 생성 속도(Velocity)가 증가하는 환경에서 사용자(300)의 질의에 대한 응답 속도를 현저히 줄일 수 있으며, 다량의 데이터에 대한 수용 능력이 향상되어 더욱 정확한 질의 결과를 제공할 수 있는 효과가 있다.
또한, 질의 분할을 이용한 데이터 스트림 처리 장치(100) 및 방법은 다음 질의에 대한 효율적인 패턴을 찾기 위해 처리된 질의의 유형/형태를 포함하는 질의 패턴을 저장하고, 이를 질의 분할시 피드백함으로써, 질의의 패턴에 대한 학습을 통해 효과적인 질의 분할 처리를 수행할 수 있는 효과가 있다.
또한, 질의 분할을 이용한 데이터 스트림 처리 장치(100) 및 방법은 하나의 질의를 복수의 서브 질의로 분할하면서 질의 처리에 대한 병렬성(parallelism)을 보장하여 질의 분할 처리의 처리 속도를 향상시킬 수 있는 효과가 있다.
이상에서 본 발명에 따른 바람직한 실시예에 대해 설명하였으나, 다양한 형태로 변형이 가능하며, 본 기술분야에서 통상의 지식을 가진자라면 본 발명의 특허청구범위를 벗어남이 없이 다양한 변형예 및 수정예를 실시할 수 있을 것으로 이해된다.
100: 데이터 스트림 처리 장치 110: 질의 수신부
120: 질의 분할부 130: 서브 질의 전송부
140: 서브 질의 처리부 150: 질의 통합부
160: 질의 회신부 170: 질의 관리부
180: 질의 패턴 저장부 200: 분산 데이터 스트림 소스
300: 사용자

Claims (20)

  1. 사용자로부터 데이터 스트림 처리를 위한 질의를 수신하는 질의 수신부;
    상기 질의 수신부로부터 전송받은 질의를 복수의 서브 질의들로 분할하는 질의 분할부;
    상기 분할된 복수의 서브 질의들 중에서 적어도 하나를 다른 데이터 스트림 처리 장치로 전송하는 서브 질의 전송부;
    상기 서브 질의 전송부로부터 전송받은 서브 질의를 처리하는 서브 질의 처리부;
    상기 다른 데이터 스트림 처리 장치 및 상기 서브 질의 처리부로부터 전송받은 서브 질의 결과들을 통합하여 상기 질의에 대한 응답을 생성하는 질의 통합부;
    상기 질의 통합부로부터 전송받은 응답을 상기 사용자에게 전송하는 질의 회신부; 및
    상기 질의 회신부로부터 질의의 유형 및 형태를 포함하는 질의 패턴을 전송받아 관리하는 질의 관리부를 포함하고,
    상기 질의 분할부는
    상기 질의 관리부가 기저장된 질의 패턴을 검출하여 전송하면, 상기 기저장된 질의 패턴을 근거로 상기 질의를 복수의 서브 질의들로 분할하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  2. 청구항 1에 있어서,
    상기 질의 수신부는,
    다른 데이터 스트림 처리 장치로부터 서브 질의를 수신하여 상기 서브 질의 처리부에게로 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  3. 청구항 1에 있어서,
    상기 질의 분할부는,
    서브 질의의 속성에 따라 설정된 대상 장치를 포함하는 서브 질의를 상기 서브 질의 전송부에게로 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  4. 청구항 1에 있어서,
    상기 서브 질의 전송부는,
    상기 질의 분할부로부터 수신한 서브 질의에 포함된 대상 장치를 근거로 다른 데이터 스트림 장치들 및 상기 서브 질의 처리부 중에 적어도 하나에게로 상기 서브 질의를 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  5. 청구항 1에 있어서,
    상기 서브 질의 전송부는,
    상기 분할된 복수의 서브 질의들 중에서 자체 처리 대상인 서브 질의를 상기 서브 질의 처리부에게로 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  6. 청구항 1에 있어서,
    상기 서브 질의 처리부는,
    다른 데이터 스트림 처리 장치로부터의 서브 질의를 상기 질의 수신부로부터 수신하고, 상기 수신한 서브 질의를 처리한 처리 결과를 상기 질의 통합부에게로 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  7. 청구항 1에 있어서,
    상기 질의 통합부는,
    다른 데이터 스트림 처리 장치로부터 수신한 서브 질의의 처리 결과를 상기 서브 질의 처리부로부터 수신하여 상기 다른 데이터 스트림 처리 장치에게로 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  8. 삭제
  9. 삭제
  10. 청구항 1에 있어서,
    질의의 유형 및 형태를 포함하는 질의 패턴을 저장하는 질의 패턴 저장부를 더 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 장치.
  11. 질의 수신부에 의해, 사용자로부터 데이터 스트림 처리를 위한 질의를 수신하는 단계;
    질의 분할부에 의해 상기 수신한 질의를 복수의 서브 질의들로 분할하는 단계;
    서브 질의 전송부에 의해, 상기 분할된 복수의 서브 질의들 중에 적어도 하나를 다른 데이터 스트림 처리 장치에게로 전송하는 단계;
    서브 질의 처리부에 의해, 상기 서브 질의 전송부로부터 전송받은 서브 질의를 처리하는 단계;
    질의 통합부에 의해, 상기 다른 데이터 스트림 처리 장치 및 상기 서브 질의 처리부로부터 전송받은 서브 질의 결과들을 통합하여 상기 질의에 대한 응답을 생성하는 단계;
    질의 회신부에 의해, 상기 생성된 응답을 상기 사용자에게 전송하는 단계; 및
    상기 질의 회신부에 의해, 질의의 유형 및 형태를 포함하는 질의 패턴을 검출하는 단계를 포함하고,
    상기 서브 질의들로 분할하는 단계는
    질의 관리부에 의해, 기저장된 질의 패턴을 검출하는 단계; 및
    상기 질의 분할부에 의해, 상기 검출한 질의 패턴을 근거로 상기 질의를 복수의 서브 질의들로 분할하는 단계를 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  12. 청구항 11에 있어서,
    상기 질의 수신부에 의해, 다른 데이터 스트림 처리 장치로부터 서브 질의를 수신하는 단계를 더 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  13. 청구항 12에 있어서,
    상기 서브 질의 처리부에 의해, 수신한 다른 스트림 처리 장치로부터의 서브 질의를 처리하는 단계를 더 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  14. 청구항 11에 있어서,
    상기 서브 질의로 분할하는 단계는,
    상기 질의 분할부에 의해, 상기 분할된 서브 질의의 속성에 따라 대상 장치를 설정하는 단계; 및
    상기 질의 분할부에 의해, 상기 설정된 대상 장치를 포함하는 서브 질의를 생성하는 단계를 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  15. 삭제
  16. 청구항 11에 있어서,
    상기 다른 데이터 스트림 처리 장치에게로 전송하는 단계에서는,
    상기 서브 질의 전송부에 의해, 상기 분할된 서브 질의에 포함된 대상 장치를 근거로 다른 데이터 스트림 장치들에게로 상기 서브 질의를 전송하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  17. 청구항 11에 있어서,
    상기 서브 질의 전송부에 의해, 상기 분할된 서브 질의에 포함된 대상 장치를 근거로 상기 서브 질의 처리부에게로 서브 질의를 전송하는 단계를 더 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  18. 청구항 11에 있어서,
    상기 질의 통합부에 의해, 다른 데이터 스트림 처리 장치로부터 수신한 서브 질의의 처리 결과를 상기 다른 데이터 스트림 처리 장치에게로 전송하는 단계를 더 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
  19. 삭제
  20. 청구항 11에 있어서,
    상기 질의 관리부에 의해, 상기 질의 패턴을 검출하는 단계에서 검출된 질의의 유형 및 형태를 포함하는 질의 패턴을 전송받아 질의 패턴 저장부에 저장하는 단계를 더 포함하는 것을 특징으로 하는 질의 분할을 이용한 데이터 스트림 처리 방법.
KR1020130015772A 2013-02-14 2013-02-14 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법 KR101694285B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130015772A KR101694285B1 (ko) 2013-02-14 2013-02-14 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법
US14/017,476 US20140229506A1 (en) 2013-02-14 2013-09-04 Data stream processing apparatus and method using query partitioning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130015772A KR101694285B1 (ko) 2013-02-14 2013-02-14 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20140102457A KR20140102457A (ko) 2014-08-22
KR101694285B1 true KR101694285B1 (ko) 2017-01-23

Family

ID=51298231

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130015772A KR101694285B1 (ko) 2013-02-14 2013-02-14 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법

Country Status (2)

Country Link
US (1) US20140229506A1 (ko)
KR (1) KR101694285B1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101603429B1 (ko) 2014-09-03 2016-03-14 (주)솔투로 빅데이터의 멀티프로세스 분배를 통한 멀티 출력 장치 및 그 방법
KR101597045B1 (ko) 2014-09-03 2016-02-23 (주)솔투로 빅데이터의 멀티프로세스 분배를 통한 순차 출력 장치 및 그 방법
US10838983B2 (en) 2015-01-25 2020-11-17 Richard Banister Method of integrating remote databases by parallel update requests over a communications network
US10440089B2 (en) 2015-04-06 2019-10-08 Richard Banister Method to replicate complex data structures using multiple queries
WO2016183556A1 (en) 2015-05-14 2016-11-17 Walleye Software, LLC Dynamic code loading
US10838827B2 (en) 2015-09-16 2020-11-17 Richard Banister System and method for time parameter based database restoration
US10540237B2 (en) 2015-09-16 2020-01-21 Sesame Software, Inc. System and method for procedure for point-in-time recovery of cloud or database data and records in whole or in part
US10657123B2 (en) 2015-09-16 2020-05-19 Sesame Software Method and system for reducing time-out incidence by scoping date time stamp value ranges of succeeding record update requests in view of previous responses
US10990586B2 (en) 2015-09-16 2021-04-27 Richard Banister System and method for revising record keys to coordinate record key changes within at least two databases
US10614063B2 (en) 2015-10-01 2020-04-07 Microsoft Technology Licensing, Llc. Streaming records from parallel batched database access
US10866943B1 (en) 2017-08-24 2020-12-15 Deephaven Data Labs Llc Keyed row selection
FR3077663B1 (fr) * 2018-02-02 2020-02-28 Alstom Transport Technologies Procede d'elaboration d'un programme informatique et dispositif d'elaboration correspondant
US11194769B2 (en) 2020-04-27 2021-12-07 Richard Banister System and method for re-synchronizing a portion of or an entire source database and a target database
KR20220106406A (ko) * 2021-01-22 2022-07-29 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030097357A1 (en) 2000-05-18 2003-05-22 Ferrari Adam J. System and method for manipulating content in a hierarchical data-driven search and navigation system
US20060026013A1 (en) 2004-07-29 2006-02-02 Yahoo! Inc. Search systems and methods using in-line contextual queries

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000038101A (ko) * 1998-12-03 2000-07-05 정선종 멀티 데이터베이스 시스템에서의 글로벌 질의 처리 장치 및 그방법
KR101608495B1 (ko) * 2009-12-11 2016-04-01 삼성전자주식회사 데이터 스트림 처리 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030097357A1 (en) 2000-05-18 2003-05-22 Ferrari Adam J. System and method for manipulating content in a hierarchical data-driven search and navigation system
US20060026013A1 (en) 2004-07-29 2006-02-02 Yahoo! Inc. Search systems and methods using in-line contextual queries

Also Published As

Publication number Publication date
KR20140102457A (ko) 2014-08-22
US20140229506A1 (en) 2014-08-14

Similar Documents

Publication Publication Date Title
KR101694285B1 (ko) 질의 분할을 이용한 데이터 스트림 처리 장치 및 방법
US11436224B2 (en) Parallel processing database system with a shared metadata store
US9152669B2 (en) System and method for distributed SQL join processing in shared-nothing relational database clusters using stationary tables
AU2014212780B2 (en) Data stream splitting for low-latency data access
US9576026B2 (en) System and method for distributed SQL join processing in shared-nothing relational database clusters using self directed data streams
EP4270211A3 (en) High-throughput distributed transaction management for globally consistent sharded oltp system and method of implementing
TW201627882A (zh) 先決式資料庫系統及其資料搬移方法
CN104903894A (zh) 用于分布式数据库查询引擎的系统和方法
CN109241093A (zh) 一种数据查询的方法、相关装置及数据库系统
CN107783985B (zh) 一种分布式数据库查询方法、装置及管理系统
JP2013178677A (ja) 分散処理システム、ディスパッチャおよび分散処理管理装置
CN103823846A (zh) 一种基于图论的大数据存储及查询方法
US20180307716A1 (en) Data Access Method, Apparatus, and System
CN111400301B (zh) 一种数据查询方法、装置及设备
CN107491463A (zh) 数据查询的优化方法和系统
JPWO2015145762A1 (ja) データベース管理システム、計算機、データベース管理方法
CN105574010B (zh) 数据查询方法及装置
JPWO2016092604A1 (ja) データ処理システムおよびデータアクセス方法
US11789957B2 (en) System, method, and apparatus for querying a database
KR20160081231A (ko) 이미지 기반 검색을 위한 맵리듀스 기반의 이미지 특징 추출 방법 및 시스템
CN113568931A (zh) 一种数据访问请求的路由解析系统及方法
CN106533756B (zh) 一种通信特征抽取、流量产生方法及装置
Fang et al. Scalable and adaptive joins for trajectory data in distributed stream system
CN104965891A (zh) 基于分布式流计算实现跨多关系数据库排序的方法及系统
CN111125151A (zh) Mpp架构下聚集函数的执行方法和数据库系统

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