KR100795929B1 - 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템 - Google Patents

데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템 Download PDF

Info

Publication number
KR100795929B1
KR100795929B1 KR1020050091320A KR20050091320A KR100795929B1 KR 100795929 B1 KR100795929 B1 KR 100795929B1 KR 1020050091320 A KR1020050091320 A KR 1020050091320A KR 20050091320 A KR20050091320 A KR 20050091320A KR 100795929 B1 KR100795929 B1 KR 100795929B1
Authority
KR
South Korea
Prior art keywords
query
database
identifier
gateway
client
Prior art date
Application number
KR1020050091320A
Other languages
English (en)
Other versions
KR20070036374A (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 KR1020050091320A priority Critical patent/KR100795929B1/ko
Priority to JP2006260941A priority patent/JP4453983B2/ja
Priority to US11/528,103 priority patent/US7836073B2/en
Publication of KR20070036374A publication Critical patent/KR20070036374A/ko
Application granted granted Critical
Publication of KR100795929B1 publication Critical patent/KR100795929B1/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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries

Abstract

본 발명은 데이터베이스에서의 데이터 검색에 이용되는 쿼리를 사전에 작성하여 유지하며, 클라이언트로부터 수신되는 그룹 식별자 및 쿼리 식별자에 대응하여 쿼리를 선택적으로 추출함으로써, 쿼리 작성시 발생하기 쉬운 오류를 최소화하기 위한 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템에 관한 것이다. 본 발명에 따르면, 사전에 쿼리를 작성하여 유지하고 있다가, 클라이언트로부터 수신되는 그룹 식별자 및 쿼리 식별자에 대응하는 쿼리를 선택적으로 추출되도록 함으로써 클라이언트가 직접 쿼리를 작성하는 경우, 발생될 수 있는 쿼리 작성시의 오류를 방지하는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공할 수 있다.
쿼리, 쿼리 전송, 데이터베이스 게이트웨이, 데이터베이스

Description

데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템{METHOD AND SYSTEM FOR TRANSMITTING DEFINED-QUERY TO DATABASE}
도 1은 본 발명에 따른 데이터베이스 게이트웨이와 데이터베이스와의 네트워크 연결을 개략적으로 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 쿼리 전송 시스템을 나타내는 구성도이다.
도 3은 본 발명에 따른 기정의된 쿼리의 식별 및 식별된 기정의된 쿼리를 이용한 데이터 검색의 일례를 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 쿼리 전송 방법을 구체적으로 도시한 작업 흐름도이다.
도 5는 본 발명에 따른 쿼리 전송 방법을 수행하는 데 채용될 수 있는 범용 컴퓨터 장치의 내부 블록도이다.
<도면의 주요 부분에 대한 부호의 설명>
200 : 쿼리 전송 시스템
210 : 데이터베이스 게이트웨이
215 : 메모리
220 : 데이터베이스
본 발명은 소정 데이터베이스에서의 데이터 검색에 이용하는 쿼리를 사전에 작성하여 유지하며, 클라이언트로부터 수신되는 그룹 식별자 및 쿼리 식별자에 대응하여 쿼리를 선택적으로 추출함으로써 쿼리 작성시 발생하기 쉬운 오류를 최소화하기 위한 쿼리 전송 방법 및 쿼리 전송 시스템에 관한 것이다.
일반적으로 게임 등의 서비스를 제공하는 서버는 데이터베이스를 직접 연결하고 있으며, 발생된 쿼리를 상기 직접 연결된 서버로 전송하여 데이터 검색을 수행함으로써 소정의 검색 결과를 생성하고 있다. 다만, 종래의 쿼리 전송 방식에서는 상이한 서버에 접속되고 있는 데이터베이스 사이에서 어떠한 연관성을 확보하고 있지 못하므로, 특정 서버에서 발생된 쿼리는 서버에 직접 접속된 데이터베이스에 한정되어 전송될 수 있고 이에 따라 제한적인 데이터 범위 내에서 검색 결과를 생성할 수 있다.
이에 따라, 데이터베이스에 보유되는 데이터의 수준(보유량)에 따라 각 서버에서의 쿼리에 대한 검색 결과 수준을 결정할 수 있고, 각 데이터베이스에서는 보다 많은 데이터를 보유하기 위해 다양한 데이터를 지속적으로 확보해야 할 필요성이 제기되고 있는 실정이다.
그러나, 대량의 데이터를 모든 데이터베이스에서 공통되게 확보하는 것은, 예컨대 데이터의 확보와 관련한 장치를 과대하게 확충해야 하는 조건이 있으며, 이 로 인해 추가적인 비용의 상승이나 작업자의 노고가 지나치게 확대되는 등의 문제점이 발생될 수 있다.
만약, 서로 상이한 데이터를 보유하는 복수의 데이터베이스를 유기적으로 결합함으로써 상기 복수개의 데이터베이스가 마치 하나의 데이터베이스처럼 동작되도록 하는 쿼리 검색 방식이 있다면, 쿼리에 응답하여 생성되는 검색 결과에 보다 풍부한 데이터를 포함할 수 있어 쿼리를 호출한 클라이언트를 최적하게 만족시킬 수 있을 것이다.
또한, 요청시마다 클라이언트 단에서 수시로 쿼리를 작성하는 종래의 방식에서는, 쿼리 작성의 미숙지 또는 쿼리를 잘못 작성 함으로 인해 검색 결과시 오류를 발생시키는 단점을 내재하고 있는 실정이다.
따라서, 규격화된 쿼리를 사전에 작성하여 보유하고 있다가, 클라이언트의 호출에 따라 선택적으로 특정 쿼리를 검색하여 특정의 데이터베이스로 전송 함으로써 쿼리 작성시 발생하는 오류를 원천적으로 방지하는 쿼리 전송 모델이 절실하게 요구되고 있다. 또한, 상이한 데이터를 보유하는 복수개의 데이터베이스를 유기적으로 결합함으로써 쿼리에 대한 데이터 검색이 상기 복수개의 데이터베이스를 대상으로 수행되도록 함으로써 보다 풍부한 데이터를 포함하는 검색 결과를 생성할 수 있는 쿼리 전송 모델이 요구되고 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 사전에 쿼리를 작성하여 유지하고 있다가, 클라이언트로부터 수신되는 그룹 식별자 및 쿼 리 식별자에 대응하는 쿼리를 선택적으로 추출되도록 함으로써 클라이언트가 직접 쿼리를 작성하는 경우, 발생될 수 있는 쿼리 작성시의 오류를 방지하는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은 쿼리가 실행되는 데이터베이스를 복수개 접속하고, 접속되는 복수개의 데이터베이스를 하나의 데이터베이스에서와 같이 유기적으로 연관하여 데이터 검색에 이용함으로써 기존의 한정된 하나의 데이터베이스에서만 데이터 검색을 실행하였던 것보다 다양하고 풍부한 검색 결과 정보를 생성할 수 있는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은 쿼리 전송 환경이 변화함에 따라 기존에 소스 프로그램을 모두 변경해야 했던 번거로운 업무가 요구되지 않고 간단한 데이터베이스 리스트에 대한 갱신 만으로도 상기 쿼리 전송 환경의 변화를 시스템에게 인지되도록 하는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공하는 것을 목적으로 한다.
상기의 목적을 이루기 위한 본 발명에 따른 데이터베이스로의 쿼리 전송 방법은, 하나 이상의 쿼리를 소정의 그룹 식별자 및 쿼리 식별자에 대응하여 저장하는 데이터베이스 게이트웨이를 유지하는 단계와, 상기 데이터베이스 게이트웨이와 연결된 복수의 데이터베이스에 대한 데이터베이스 리스트를 유지하는 단계와, 특정의 쿼리와 관련된 그룹 식별자 및 쿼리 식별자에 관한 정보를 클라이언트로부터 수신하는 단계와, 상기 수신된 그룹 식별자 및 쿼리 식별자에 대응하는 쿼리를 상기 데이터베이스 게이트웨이에서 식별하는 단계와, 상기 식별된 쿼리를 상기 데이터베 이스 리스트를 참조하여 해당 데이터베이스로 전송하는 단계, 및 상기 데이터베이스에서 전송된 쿼리를 이용하여 데이터 검색을 수행하고, 검색 결과 정보를 생성하여 상기 데이터베이스 게이트웨이로 회신하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 목적을 달성하기 위한 기술적 구현 장치로서, 데이터베이스로의 쿼리 전송 시스템은, 소정의 그룹 식별자 및 쿼리 식별자에 대응하는 하나 이상의 쿼리를 저장하는 데이터베이스 게이트웨이, 및 상기 데이터베이스 게이트웨이에 접속하고, 상기 접속된 데이터베이스 게이트웨이로부터 전송된 쿼리를 이용하여 데이터 검색을 수행하고, 검색 결과 정보를 생성하여 상기 데이터베이스 게이트웨이로 회신하는 데이터베이스를 포함하며, 상기 데이터베이스 게이트웨이는 (1) 자신과 연결된 복수의 데이터베이스에 대한 데이터베이스 리스트를 유지하고, (2) 특정의 쿼리와 관련된 그룹 식별자 및 쿼리 식별자에 관한 정보를 클라이언트로부터 수신하며, (3) 상기 수신된 그룹 식별자 및 쿼리 식별자에 대응하여 식별되는 쿼리를 상기 데이터베이스 리스트를 참조하여 해당 데이터베이스로 전송하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 쿼리 전송 방법 및 쿼리 전송 시스템에 대하여 설명한다.
본 명세서에서 지속적으로 사용되는 "쿼리(query)"는 검색자인 클라이언트가 원하는 결과를 획득할 수 있도록 소정의 조건을 조합하여 작성하는 것으로, 데이터베이스에서의 검색에 이용되는 질의어를 의미할 수 있다. 일반적으로 쿼리는 클라 이언트가 선택하는 필드 영역(검색 대상을 한정하는 역할을 함)에 상응하여 그 검색 결과를 생성할 수 있으며, 예컨대 게이머의 개인 정보를 보유하는 게임 데이터베이스에 대한 검색에서, 클라이언트로부터 쿼리의 필드 영역으로 '레벨 100 이상의 회원 ID'가 선택되는 경우, 게임 데이터베이스는 상기 필드 영역 '레벨 100 이상의 회원 ID'에 대응하는 게이머의 ID 목록을 작성하여 이를 검색 결과로서 상기 쿼리를 생성한 클라이언트에게 제공할 수 있다.
특히, 본 발명에서는 상기 쿼리를 미리 결정하여 유지하고(이하, 미리 결정된 쿼리를 기정의된 쿼리(defined query)라 함), 클라이언트의 선택에 따라 식별되는 기정의된 쿼리를 이용하여 데이터베이스에서의 검색을 수행함으로써 쿼리 작성 시간을 절감할 수 있고, 또한 쿼리 작성시의 오류를 줄여 쿼리 작성의 정확성을 기할 수 있다. 본 발명의 기정의된 쿼리(defined query)는, 하나 이상의 데이터베이스와 접속하며 접속된 데이터베이스에서의 데이터 검색을 통합적으로 관리하는 데이터베이스 게이트웨이와 연관하여 유지될 수 있다.
도 1은 본 발명에 따른 데이터베이스 게이트웨이와 데이터베이스와의 네트워크 연결을 개략적으로 도시한 도면이다.
본 발명의 쿼리 전송 시스템(100)은 사전에 규격화하여 작성된 기정의된 쿼리를 데이터베이스 게이트웨이(110)에 저장하고 있다가, 클라이언트(130)로부터 수신되는 식별자 페어(그룹 식별자 및 쿼리 식별자)에 대응하여 식별되는 기정의된 쿼리를 데이터베이스 게이트웨이(110)에 접속되는 하나 이상의 데이터베이스(120)로 전송하는 역할을 한다.
우선, 데이터베이스 게이트웨이(110)는 미리 작성된 기정의된 쿼리를 복수 개 유지하고 있으며, 기정의된 쿼리 각각으로 그룹 식별자 및 쿼리 식별자를 대응시킴으로써 클라이언트(130)가 상기 그룹 식별자 및 쿼리 식별자를 이용하여 특정의 기정의된 쿼리를 선택적으로 호출할 수 있도록 한다.
이때, 그룹 식별자는 쿼리가 빈도 있게 발생되는 지역 또는 쿼리의 서비스 속성을 고려하여, 예컨대 본 시스템의 운영자에 의해 할당될 수 있으며, 예컨대 신규 데이터를 갱신 처리하는 것과 관련하는 복수의 쿼리에게는 공통된 하나의 그룹 식별자 'A'를 할당할 수 있다. 또한, 쿼리 식별자는 동일한 그룹 식별자를 갖는 기정의된 쿼리 각각을 식별하기 위해 할당된다. 예컨대, 상기 그룹 식별자 'A'를 공통으로 갖는 기정의된 쿼리에 대해서 그 각각에 쿼리 식별자를 1에서부터 순차적으로 할당 함으로써 동일한 그룹 식별자를 갖는 기정의된 쿼리에 대해서 그 각각에 대한 구분이 가능하도록 할 수 있다.
또한, 데이터베이스 게이트웨이(110)는 상기 기정의된 쿼리가 실행(검색)되는 데이터베이스(120)를 복수개 접속하고, 접속되는 복수개의 데이터베이스(120)를 하나의 데이터베이스에서와 같이 유기적으로 연관하여 데이터 검색에 이용함으로써 기존의 한정된 하나의 데이터베이스에서만 데이터 검색을 실행하였던 것보다 다양하고 풍부한 검색 결과 정보를 생성할 수 있다.
하나의 데이터베이스 게이트웨이(110)에 접속되는 복수개의 데이터베이스(120) 사이에서는, 데이터베이스(120)가 보유하는 데이터에 관한 메시지를 지속적으로 상호 교환함으로써 데이터 보유 상태가 각 데이터베이스(120)마다 동일하게 유지되도록 하는 멀티캐스트(multicast) 과정이 실행될 수 있다. 이 경우 상기 데이터베이스 게이트웨이(110)에서 식별된 기정의된 쿼리는, 데이터베이스 게이트웨이(110)에 접속되는 임의의 데이터베이스(120)로 전송되어도 동일한 검색 결과 정보를 생성할 수 있다.
또한, 데이터베이스 게이트웨이(110)는 식별된 쿼리가 실행될 데이터베이스(120)를 지정할 수 있고, 이 경우 상기 쿼리는 상기 지정된 데이터베이스(120)로만 전송되어 데이터 검색을 실행할 수 있다. 더불어, 상기 데이터 검색이나 데이터 유입 등에 따라 변경되는 데이터에 관한 사항은, 일단 상기 지정된 데이터베이스(120)에서만 활용 가능할 수 있다(애니캐스트(anycast) 과정). 다만, 상기 애니캐스트 과정에 의해 특정 데이터베이스(120)에서만 관련되는 데이터에 관한 사항은 상술한 멀티캐스트에 의해서 다른 데이터베이스(120)에서도 적용되도록 할 수 있다.
데이터베이스(120)는 데이터베이스 게이트웨이(110)로부터 수신하는 기정의된 쿼리에 응답하여 소정의 검색 결과 정보를 생성하고, 생성된 상기 검색 결과 정보를 데이터베이스 게이트웨이(110)로 회신하는 역할을 한다. 특히, 본 발명에서의 데이터베이스(120)는 쿼리의 지정학적 발생 위치(지역 속성)나 서비스 속성을 고려하여 접속하는 데이터베이스 게이트웨이(110)를 선택할 수 있으며, 예컨대 게이머의 개인 정보에 대한 쿼리(기정의된 쿼리)를 많이 유지하는 데이터베이스 게이트웨이(110)에는 상기 게이머의 개인 정보에 관한 데이터를 보유하며 관련된 쿼리에 응답하여 검색 결과를 생성할 수 있는 데이터베이스(120)가 선택적으로 접속될 수 있다.
클라이언트(130)는 원하는 쿼리(기정의된 쿼리)를 발생시키기 위해 해당 쿼리와 관련된 그룹 식별자 및 쿼리 식별자를 데이터베이스 게이트웨이(110)로 전송 함으로써, 상기 원하는 쿼리와 유사한 기정의된 쿼리를 데이터베이스 게이트웨이(110)에서 추출할 수 있도록 하는 역할을 한다. 예컨대, 게이머의 개인 정보 요청에 관한 쿼리를 발생하고자 하는 클라이언트(130)는, 해당 개인 정보의 요청과 관련한 기정의된 쿼리를 식별할 수 있는 식별자 페어(예컨대, 그룹 식별자 'A' 및 쿼리 식별자 '1')를 데이터베이스 게이트웨이(110)로 전송할 수 있다. 이에 따라, 데이터베이스 게이트웨이(110)는 그룹 식별자 'A' 및 쿼리 식별자 '1'에 의해 특정되는 게이머 정보와 연관된 기정의된 쿼리를, 보유하는 다수의 기정의된 쿼리에서 식별할 수 있다.
즉, 본 발명의 쿼리 전송 시스템(100)은 클라이언트(130)로부터 수신된 식별자 페어에 대응하는 기정의된 쿼리를 데이터베이스 게이트웨이(110)로부터 식별하고, 식별된 기정의된 쿼리를 데이터베이스 게이트웨이(110)에 접속하는 임의의 데이터베이스(120) 또는 특정의 데이터베이스(120)에 전송 함으로써 기정의된 쿼리를 이용한 데이터 검색이 가능하도록 하는 역할을 한다. 이하, 도 2를 참조하여 본 발명의 쿼리 전송 시스템(200)의 구체적인 구성을 설명한다.
도 2는 본 발명의 일실시예에 따른 쿼리 전송 시스템을 나타내는 구성도이다.
본 발명의 쿼리 전송 시스템(200)은 상술한 데이터베이스 게이트웨이(210) 및 데이터베이스(220)를 포함한다.
우선, 데이터베이스 게이트웨이(210)는 소정의 그룹 식별자 및 쿼리 식별자에 대응하는 하나 이상의 쿼리를 저장하는 역할을 한다. 즉, 데이터베이스 게이트웨이(210)는 예컨대, 본 발명의 운영자에 의해 미리 작성된 쿼리(기정의된 쿼리)를 저장하는 메모리 역할을 하며, 쿼리 각각으로 그룹 식별자 및 쿼리 식별자를 대응시켜 클라이언트(130)가 요구하는 쿼리를 특정의 기정의된 쿼리로서 식별될 수 있도록 한다. 여기서, 상기 기정의된 쿼리는 각 데이터베이스 게이트웨이(210)에 포함되는 메모리(215)에, 상기 그룹 식별자 및 쿼리 식별자와 대응하여 저장될 수 있다.
상술한 바와 같이, 그룹 식별자는 쿼리가 빈도 있게 발생하는 지역 속성, 또는 쿼리의 서비스 속성을 고려하여, 기정의된 쿼리 각각으로 할당될 수 있고, 동일한 그룹 식별자가 할당된 하나 이상의 기정의된 쿼리를 각각 독립적으로 구분하기 위해 쿼리 식별자를 기정의된 쿼리에 개별적으로 할당할 수 있다.
데이터베이스 게이트웨이(210)는 쿼리가 전송될 데이터베이스(220)의 속성을 정의한 DB 속성 식별자를 쿼리 각각에 대응시킴으로써, 상기 쿼리가 그룹 식별자 및 쿼리 식별자 뿐만 아니라 데이터베이스(220)의 속성에 부합되도록 식별할 수 있다. 즉, 데이터베이스 게이트웨이(210)는 접속되는 데이터베이스(220)의 예컨대 제조사(벤더)에 따른 상이한 속성을 인지하고, 상기 인지된 데이터베이스(220)의 속성에서 정상적으로 동작할 수 있는 쿼리를 선택적으로 식별할 수 있다. 여기서, DB 속성 식별자는 쿼리가 최적하게 동작하는 데이터베이스(220)의 속성을 정의하는 것으로, 예컨대 데이터베이스(220)가 오라클(oracle)에 의해 구현되는 경우, 운영자는 상기 쿼리(기정의된 쿼리)를 오라클 환경에서 최적하게 동작할 수 있도록 작성하며, 데이터베이스 게이트웨이(210)는 상기 작성된 쿼리에게 오라클과 관련된 DB 속성 식별자를 대응시켜 유지할 수 있다. 데이터베이스 게이트웨이(210)에 오라클에 의해 구현된 데이터베이스(220)가 접속된 상태에서, 클라이언트(130)로부터 그룹 식별자 및 쿼리 식별자가 수신하는 경우, 데이터베이스 게이트웨이(210)는 상기 오라클과 관련된 DB 속성 식별자에 대응하는 퀴리를 선택적으로 식별할 수 있고 상기 식별된 쿼리를 오라클로 구현된 데이터베이스(220)로 전송할 수 있다.
이에 따라, 본 발명의 쿼리 전송 시스템(200)에 따르면, 접속될 데이터베이스(220)의 속성을 미리 고려하여 쿼리를 작성해두고 데이터베이스 게이트웨이(210)에 접속되는 데이터베이스(220)의 속성에 따라 해당 데이터베이스(220)에서 최적하게 동작할 수 있는 쿼리를 식별할 수 있다. 따라서, 기존에 쿼리를 작성하는 측(예, 클라이언트 측)에서 쿼리를 작성할 때마다, 쿼리가 전송될 데이터베이스의 속성, 예컨대 오라클, mssql, mysql 등의 제조사 환경에 따라 쿼리를 다르게 작성해야 했던 번거로움을 감소시킬 수 있다.
또한, 데이터베이스 게이트웨이(210)는 데이터베이스 게이트웨이(210)에 접속연결되는 데이터베이스(220)에 대한 속성을 데이터베이스 리스트에 기록할 수 있어, 식별된 쿼리가 전송할 데이터베이스(220)를 정확하게 확인할 수 있다. 즉, 본 발명이 쿼리 전송 시스템(200)은 식별된 쿼리와 연관되는 속성 및 데이터베이스(220)의 속성을 고려하여, 쿼리를 전송할 데이터베이스(220)의 어드레스를 데이터 베이스 리스트에서 검색하고, 검색된 어드레스에 의해 특정되는 데이터베이스(220)로 쿼리를 전송할 수 있다.
이에 따라, 데이터베이스 게이트웨이(210)에 접속되는 데이터베이스(220)가 다른 장비로 교체되거나, 또는 두 개 이상의 장비로 분리되거나, 또는 새로운 장비가 추가되는 등의 접속 환경 변경이 있더라도 데이터베이스 리스트를 갱신 처리하는 것만으로도, 상기 식별된 쿼리가 정상적으로 동작할 수 있는 데이터베이스(220)의 어드레스를 확인할 수 있다. 또한, 수행될 데이터베이스의 속성을 미리 고려하여 쿼리를 사전에 작성해두기 때문에, 접속되는 데이터베이스가 변경되더라도 쿼리 식별에 유연하게 대응할 수 있다.
더불어, 데이터베이스 게이트웨이(210)는 각 쿼리가 전송되어 데이터 검색에 이용될 데이터베이스(220)를 지정하는 DB 위치 식별자를, 기정의된 쿼리 각각으로 대응시켜 저장할 수 있다. 이에 따라, 클라이언트(130)로부터 수신되는 식별자 페어(그룹 식별자 및 쿼리 식별자)에 의해 식별된 기정의된 쿼리는, 상기 DB 위치 식별자에 관련한 데이터베이스의 어드레스를 데이터베이스 리스트에서 검색하고, 검색된 어드레스에 의해 특정되는 데이터베이스(220)로 상기 기정의된 쿼리를 전송하며, 해당 데이터베이스(220)에서 데이터 검색이 수행되도록 할 수 있다.
본 실시예에서는 데이터베이스 게이트웨이(210)에 유지되는 쿼리에 대응하여 데이터 검색이 수행될 데이터베이스(120) 또는 데이터베이스(120)의 어드레스를 지정하는 것을 예시하여 설명하고 있지만, 이는 본 발명의 일실시예에 불과하며, 하나의 데이터베이스 게이트웨이(210)에 접속하는 복수개의 데이터베이스(220)에서 상술한 멀티캐스트 과정에 의한 데이터 교환이 이루어는 경우, 임의의 데이터베이스(220)로 기정의된 쿼리를 전송하더라도 동일한 검색 결과 정보를 생성할 수 있다.
데이터베이스(220)는 특정의 데이터베이스 게이트웨이(210)에 접속하고, 접속된 데이터베이스 게이트웨이(210)로부터 전송되는 쿼리를 이용하여 데이터 검색이 수행되도록 하는 역할을 한다. 이때 데이터베이스 게이트웨이(210)로의 데이터베이스 접속은, 특정 데이터베이스 게이트웨이(210)에서 유지하는 쿼리 또는 해당 쿼리에 응답하여 적절한 검색 결과 정보를 생성할 수 있는 데이터베이스(220)의 데이터 보유 현황을 고려하여 이루어질 수 있다. 더불어, 데이터베이스 게이트웨이(210)와 데이터베이스(220) 간은 접속연결과 및 접속해제를 반복할 수 있다. 데이터베이스 게이트웨이(210)로부터 기정의된 쿼리를 전송 받은 데이터베이스(220)는 상기 기정의된 쿼리에 응답하여 보유한 데이터가 검색되도록 함으로써 본 발명의 쿼리 전송 시스템(200)에서 클라이언트(130)에게 전송될 검색 결과 정보를 생성할 수 있도록 한다.
데이터베이스 게이트웨이(210)로의 데이터베이스(220) 접속 이후, 데이터베이스 게이트웨이(210)는 자신과 연결된 복수의 데이터베이스(220)에 대한 데이터베이스 리스트를 작성하여, 예컨대 메모리(215)에 유지할 수 있다. 상기 데이터베이스 리스트는 특정한 데이터베이스 게이트웨이(210)에 접속하는 데이터베이스(220)에 대한 현황 정보의 목록이며, 예컨대 데이터베이스 리스트에는 데이터베이스 게이트웨이(210)에 접속된 데이터베이스(220)의 명칭, 데이터베이스(220)의 어드레스 등에 관해 정보를 기록할 수 있다.
또한, 데이터베이스(220)는 데이터 검색에 대한 검색 결과 정보로서, 전송된 기정의된 쿼리에 대한 파라미타(parameter) 및 컬럼(column)에 관한 정보를 상기 클라이언트(130)에게 전송할 수 있다. 여기서, 파라미타는 상기 기정의된 쿼리의 입력값에 대한 각종 정보를 포함하며, 예컨대 상기 입력값(input value)의 형식(type), 길이(length), 명령색인(order-index) 등을 포함할 수 있다. 또한, 컬럼은 상기 기정의된 쿼리의 출력값(output value)에 관한 정보를 포함할 수 있으며, 상기 출력값의 형식, 길이, 명령색인 등을 포함할 수 있다.
특히, 본 발명에 따른 데이터베이스(220)는 시스템 환경에 따라 데이터베이스 게이트웨이(210)로의 접속연결 또는 접속해제가 수시로 이루어질 수 있으며, 이에 따라 데이터베이스 게이트웨이(210)는 이전에 작성한 데이터베이스 리스트에 대한 갱신 처리를 수행할 수 있다. 즉, 접속하는 데이터베이스(220)의 변경에 따라, 종래에 쿼리와 관련한 모든 소스 프로그램을 변경해야 했던 것과 달리, 본 발명의 쿼리 전송 시스템(200)에서는 데이터베이스 게이트웨이(210)에서 데이터베이스 리스트를 갱신함으로써 간단하게 데이터베이스(220)의 변경 사실을 쿼리 전송 시스템(200)에 알릴 수 있다.
이상에서 살펴본 바와 같이, 본 발명의 쿼리 전송 시스템(200)은 사전에 작성된 쿼리를 식별자 페어에 대응시켜 저장하고, 클라이언트(130)에서 수신된 식별자 페어에 대응하는 쿼리를 데이터베이스 게이트웨이(210)에서 식별함으로써, 종래에 필요시마다 클라이언트(130)에서 쿼리를 작성함으로써 비롯되었던 빈발한 오류, 오기를 방지할 수 있다.
이후, 쿼리 전송 시스템(200)은 식별된 쿼리를 어드레스를 지정한 데이터베이스(220), 또는 데이터베이스 게이트웨이(210)에 접속되는 임의의 데이터베이스(220)로 전송하고, 해당 데이터베이스(220)에서 상기 쿼리를 이용한 데이터 검색을 수행함으로써 쿼리에 응답한 검색 결과 정보를 생성할 수 있다.
도 3은 본 발명에 따른 기정의된 쿼리의 식별 및 식별된 기정의된 쿼리를 이용한 데이터 검색의 일례를 나타내는 도면이다.
특정 쿼리의 생성을 원하는 클라이언트(130)는 쿼리와 관련된 그룹 식별자 및 쿼리 식별자(식별자 페어)를 본 발명의 쿼리 전송 시스템(200)으로 전송한다. 이를 위해, 클라이언트(130)는 쿼리의 내역에 대응하는 식별자 페어를 사전에 인지하고 있어야 하며, 본 발명의 쿼리 전송 시스템(200)은 상기 쿼리에 대응하는 식별자 페어, 즉 그룹 식별자 및 쿼리 식별자에 관한 정보를 클라이언트(130)에게 제공할 수 있다.
데이터베이스 게이트웨이(210)에서는 미리 작성한 쿼리(기정의된 쿼리)를 그룹 식별자 및 쿼리 식별자에 대응하여 저장하며, 예컨대 도 3의 ⅰ)에서와 같이 5개의 쿼리 각각으로 그룹 식별자 'A' 또는 'B'를, 쿼리 식별자 '1' 내지 '3'을 할당할 수 있다. 더불어, 각각의 쿼리에는 DB 속성 식별자 및 DB 위치 식별자가 대응될 수 있으며, 쿼리 전송 시스템(200)은 식별된 쿼리를 최적하게 수행할 수 있는 속성을 갖는 데이터베이스(220)의 어드레스 정보를 얻을 수 있다.
예컨대, 클라이언트(130)로부터 그룹 식별자 'A' 및 쿼리 식별자 '2'를 수신 하는 경우, 쿼리 전송 시스템(200)은 상기 수신된 그룹 식별자 'A' 및 쿼리 식별자 '2'에 대응하여 기정의된 쿼리 '레벨 100 이상인 회원ID'를 식별할 수 있다. 더불어, 쿼리 전송 시스템(200)은 상기 식별된 기정의된 쿼리 '레벨 100 이상인 회원ID'에 대응하는 DB 속성 식별자를 '오라클'로 확인하고, 해당 '오라클'에 의해 구현된 데이터베이스 'DB #2'를, 상기 식별된 기정의된 쿼리 '레벨 100 이상인 회원ID'가 전송될 데이터베이스(220)로 인지할 수 있다.
또한, 상기 식별된 기정의된 쿼리에 대응하는 DB 위치 식별자에 따라, 쿼리 전송 시스템(200)은 상기 기정의된 쿼리 '레벨 100 이상인 회원ID'를 데이터베이스 'DB #2'로 전송할 수 있도록, 데이터베이스 리스트에서 상기 데이터베이스 'DB #2'의 어드레스 정보를 획득할 수 있다. 이에 따라, 쿼리 전송 시스템(200)은 상기 기정의된 쿼리 '레벨 100 이상인 회원ID'를 상기 어드레스에 의해 특정된 데이터베이스 'DB #2'로 전송하고, 데이터베이스 'DB #2'에서의 데이터 검색에 의해 소정의 검색 결과 정보를 생성할 수 있다. 도 3의 ⅰ)에서는 상기 기정의된 쿼리 '레벨 100 이상인 회원ID'를 전송할 데이터베이스 'DB #2'의 어드레스가 IP 주소 175.33.0.2 인 것을 예시하고 있다.
더불어, 데이터베이스 게이트웨이(210)에 접속되는 데이터베이스(220)가 접속연결 또는 접속해제에 따라 쿼리 전송 환경이 변화하는 경우, 이와 관련된 정보를 상기 데이터베이스 리스트에만 기록함으로써 쿼리 전송 환경 변화에 관한 갱신 처리가 간단하게 이루어지도록 할 수 있다. 따라서, 해당 쿼리를 수행하는 실행문(예, Sql문 등)을 보다 효율적으로 변경하는 경우에도, 종래에 쿼리와 관련한 소스 코드를 모두 수정해야 하는 번거로움을 탈피할 수 있는 효과를 얻을 수 있다.
또한, 하나의 데이터베이스 게이트웨이(210)에 접속되는 복수개의 데이터베이스(220) 간에 멀티캐스트 과정이 수행될 수 있으며, 본 발명의 다른 실시예에서 기정의된 쿼리가 수행될 데이터베이스(220)를 특정하는 DB 위치 식별자가 없는 경우, 쿼리 전송 시스템(200)은 임의의 데이터베이스로 상기 식별된 기정의된 쿼리를 전송할 수 있다. 이때, 데이터베이스 게이트웨이(210)에 접속되는 복수개의 데이터베이스(210) 사이에서는 멀티캐스트로 인해 데이터 공유가 이루어져 상기 복수개의 데이터베이스(210)가 보유하는 데이터는 동일할 수 있다.
데이터베이스 'DB #2'에서의 데이터 검색에 따라 쿼리 전송 시스템(200)은, 예컨대 도 3의 ⅱ)와 같은, '회원 ID' 및 '현재 레벨'에 관한 정보를 포함하는 검색 결과 정보를 생성하여, 쿼리를 전송한 데이터베이스 게이트웨이(210) 또는 쿼리를 요청한 클라이언트(130)에게 제공되도록 할 수 있다. 예를 들어, 도 3의 ⅱ)에서는 쿼리 '레벨 100 이상인 회원 ID'에 응답하여, 본 발명의 쿼리 전송 시스템(200)에서 검색 결과로서 회원 ID 'warrior, bowyer, witch' 등의 현재 레벨 정보를 생성하는 것을 예시하고 있다.
이에 따라, 본 발명의 쿼리 전송 시스템(200)에 의해서는 사전에 쿼리를 작성하여 유지하고 있다가, 클라이언트(130)로부터 수신되는 그룹 식별자 및 쿼리 식별자에 대응하는 쿼리를 선택적으로 추출되도록 함으로써 클라이언트(130)가 직접 쿼리를 작성하는 경우, 발생될 수 있는 쿼리 작성시의 오류를 방지할 수 있다. 더불어, 쿼리 전송 환경이 변화함에 따라 기존에 소스 프로그램을 모두 변경해야 했 던 번거로운 업무가 요구되지 않고 간단한 데이터베이스 리스트에 대한 갱신 만으로도 상기 쿼리 전송 환경의 변화를 시스템에게 인지되도록 할 수 있다.
이하, 본 발명의 실시예에 따른 쿼리 전송 시스템(200)의 작업 흐름을 상세히 설명한다.
도 4는 본 발명의 일실시예에 따른 쿼리 전송 방법을 구체적으로 도시한 작업 흐름도이다.
본 발명의 쿼리 전송 방법은 상술한 쿼리 전송 시스템(200)에 의해 수행될 수 있다.
우선, 쿼리 전송 시스템(200)은 하나 이상의 쿼리를 소정의 그룹 식별자 및 쿼리 식별자에 대응하여 저장하는 데이터베이스 게이트웨이(210)를 유지한다(S410). 본 단계(S410)는 클라이언트(130)에 의해 작성될 가능성이 있는 모든 쿼리를 예상한 예컨대, 본 시스템의 운영자에 의해 미리 작성되는 쿼리를 식별자 페어에 대응시켜 데이터베이스 게이트웨이(210)에 저장하는 과정이다.
특히, 본 단계(S410)에서의 쿼리 전송 시스템(200)은 각 쿼리에 대응하는 그룹 식별자 또는 쿼리 식별자를 쿼리의 발생 환경을 고려하여 할당할 수 있다. 즉, 쿼리 전송 시스템(200)은 특정한 쿼리가 빈도 있게 발생하는 지역(지정학적 위치) 또는 쿼리의 서비스 속성을 확인하고, 동일한 지역 또는 동일한 서비스 속성을 갖는 쿼리에, 공통된 하나의 그룹 식별자를 할당할 수 있다. 예컨대, 데이터베이스 게이트웨이(210)에서 수행되는 서비스 속성이 '게이머의 개인 정보 검색'이라 하면, 이러한 서비스 속성과 연관한다고 판단되는 쿼리에게 그룹 식별자 알파벳 'A' 를 할당할 수 있다(도 3의 ⅰ) 참조).
또, 쿼리 전송 시스템(200)은 같은 그룹 식별자를 할당 받는 복수개의 쿼리 중에서 특정한 쿼리를 구분하기 위한 쿼리 식별자를 할당할 수 있다. 상기 쿼리 식별자로는 예컨대, 동일한 그룹 식별자가 할당된 쿼리 각각으로 순차적인 숫자열(1,2,3,…)을 할당할 수 있다(도 3의 ⅰ) 참조).
또한, 쿼리 전송 시스템(200)은 데이터베이스 게이트웨이(210)와 연결된 복수의 데이터베이스(220)에 대한 데이터베이스 리스트를 작성하여 유지한다(S420). 본 단계(S420)는 하나의 데이터베이스 게이트웨이(210)에 현재 접속하고 있는 데이터베이스(220)에 대한 정보를 목록화하여 기록하는 과정으로, 상기 데이터베이스 리스트에는 예컨대 데이터베이스 게이트웨이(210)에 접속하는 데이터베이스(220)의 식별 정보, 상기 데이터베이스(220)의 어드레스 정보 등을 포함할 수 있다.
다음으로, 쿼리 전송 시스템(200)은 특정의 쿼리와 관련된 그룹 식별자 및 쿼리 식별자에 관한 정보를 클라이언트(130)로부터 수신한다(S430). 본 단계(S430)는 특정 쿼리의 발생을 원하는 클라이언트(130)로부터 해당 쿼리와 연관된 그룹 식별자 및 쿼리 식별자를 입력 받는 과정으로, 쿼리 전송 시스템(200)은 특정 쿼리의 발생에 요구되는 그룹 식별자 및 쿼리 식별자에 대한 정보를 미리 클라이언트(130)에게 제공하여 그룹 식별자 및 쿼리 식별자의 정확한 입력이 유도되도록 한다.
또한, 쿼리 전송 시스템(200)은 수신된 그룹 식별자 및 쿼리 식별자에 대응하는 쿼리를 데이터베이스 게이트웨이(210)에서 식별한다(S440). 본 단계(S440)는 클라이언트(130)로부터 수신한 그룹 식별자 및 쿼리 식별자를 모두 만족하는 쿼리를, 데이터베이스 게이트웨이(210)의 메모리(215)에서 검색하여 추출하는 과정이다.
다음으로, 쿼리 전송 시스템(200)은 식별된 쿼리를 데이터베이스 리스트를 참조하여 해당 데이터베이스(220)로 전송한다(S450). 본 단계(S450)는 상기 식별된 쿼리에 대응하는 DB 위치 식별자를 확인하고, 확인된 DB 위치 식별자와 관련된 데이터베이스(220)의 어드레스 정보를 데이터베이스 리스트에서 검색하는 과정이다. 이에 따라, 식별자 페어에 의해 식별된 쿼리는, 상기 쿼리에 응답하여 최적한 검색 결과를 생성할 수 있는 특정의 데이터베이스(220)로 전송될 수 있다.
또한, 쿼리 전송 시스템(200)은 데이터베이스(220)에서 전송된 쿼리를 이용하여 데이터 검색을 수행하고, 검색 결과 정보를 생성하여 데이터베이스 게이트웨이(210)로 회신한다(S460). 본 단계(S460)는 쿼리가 전송한 데이터베이스(220)에서의 데이터 검색에 의해 상기 쿼리에 응답한 검색 결과 정보를 생성하고, 상기 생성된 검색 결과를 데이터베이스 게이트웨이(210)를 경유하여 클라이언트(130)에게 제공되도록 하는 과정이다.
따라서, 본 발명에 따르면, 사전에 작성된 쿼리를 클라이언트(130)의 호출에 따라 선택적으로 추출되도록 함으로써 쿼리의 작성시 발생할 수 있는 오류 및 잘못된 쿼리 이용으로 인해 발생되는 문제를 원천적으로 방지할 수 있다.
계속해서, 쿼리 전송 시스템(200)은 데이터베이스 게이트웨이(210)에 접속하는 데이터베이스(220)와 관련하여 접속변경신호가 발생하는 경우, 작성된 데이터베 이스 리스트에 대한 갱신 처리를 수행한다(S470). 본 단계(S470)는 쿼리 전송 환경에 대한 변경, 예컨대 데이터베이스 게이트웨이(210)에 접속하고 있던 데이터베이스(220)가 접속해제되어 이탈하는 등의 환경 변화가 있는 경우, 데이터베이스 리스트에 대한 갱신만으로 쿼리 전송의 환경 변화를 쿼리 전송 시스템(200)에서 인지할 수 있도록 하는 과정이다.
따라서, 본 발명에 의하면 쿼리 전송 환경의 변경이 있더라도 데이터베이스 리스트 만을 간단하게 갱신 처리하면 됨으로써 종래에 쿼리 전송 환경의 변화에 따라 관련된 소스 프로그램 모두를 수정해야 하는 번거로움을 방지할 수 있다.
본 발명의 실시예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행 될 수 있는 고급 언어 코드를 포함한다.
도 5는 본 발명에 따른 쿼리 전송 방법을 수행하는 데 채용될 수 있는 범용 컴퓨터 장치의 내부 블록도이다.
컴퓨터 장치(500)는 램(RAM: Random Access Memory)(520)과 롬(ROM: Read Only Memory)(530)을 포함하는 주기억장치와 연결되는 하나 이상의 프로세서(510)를 포함한다. 프로세서(510)는 중앙처리장치(CPU)로 불리기도 한다. 본 기술분야에서 널리 알려져 있는 바와 같이, 롬(530)은 데이터(data)와 명령(instruction)을 단방향성으로 CPU에 전송하는 역할을 하며, 램(520)은 통상적으로 데이터와 명령을 양방향성으로 전송하는 데 사용된다. 램(520) 및 롬(530)은 컴퓨터 판독 가능 매체의 어떠한 적절한 형태를 포함할 수 있다. 대용량 기억장치(Mass Storage)(540)는 양방향성으로 프로세서(510)와 연결되어 추가적인 데이터 저장 능력을 제공하며, 상기된 컴퓨터 판독 가능 기록 매체 중 어떠한 것일 수 있다. 대용량 기억장치(540)는 프로그램, 데이터 등을 저장하는데 사용되며, 통상적으로 주기억장치보다 속도가 느린 하드 디스크와 같은 보조기억장치이다. CD 롬(560)과 같은 특정 대용량 기억장치가 사용될 수도 있다. 프로세서(510)는 비디오 모니터, 트랙볼, 마우스, 키보드, 마이크로폰, 터치스크린 형 디스플레이, 카드 판독기, 자기 또는 종이 테이프 판독기, 음성 또는 필기 인식기, 조이스틱, 또는 기타 공지된 컴퓨터 입출력장치와 같은 하나 이상의 입출력 인터페이스(550)와 연결된다. 마지막으로, 프로세서(510)는 네트워크 인터페이스(570)를 통하여 유선 또는 무선 통신 네트워크에 연결될 수 있다. 이러한 네트워크 연결을 통하여 상기된 방법의 절차를 수행 할 수 있다. 상기된 장치 및 도구는 컴퓨터 하드웨어 및 소프트웨어 기술 분야의 당업자에게 잘 알려져 있다.
상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있다.
지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
이상의 설명에서 알 수 있는 바와 같이, 본 발명에 따르면, 사전에 쿼리를 작성하여 유지하고 있다가, 클라이언트로부터 수신되는 그룹 식별자 및 쿼리 식별자에 대응하는 쿼리를 선택적으로 추출되도록 함으로써 클라이언트가 직접 쿼리를 작성하는 경우, 발생될 수 있는 쿼리 작성시의 오류를 방지하는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공할 수 있다.
또한, 본 발명에 따르면, 쿼리가 실행되는 데이터베이스를 복수개 접속하고, 접속되는 복수개의 데이터베이스를 하나의 데이터베이스에서와 같이 유기적으로 연관하여 데이터 검색에 이용함으로써 기존의 한정된 하나의 데이터베이스에서만 데이터 검색을 실행하였던 것보다 다양하고 풍부한 검색 결과 정보를 생성할 수 있는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공할 수 있다.
또한, 본 발명에 따르면, 쿼리 전송 환경이 변화함에 따라 기존에 소스 프로 그램을 모두 변경해야 했던 번거로운 업무가 요구되지 않고 간단한 데이터베이스 리스트에 대한 갱신 만으로도 상기 쿼리 전송 환경의 변화를 시스템에게 인지되도록 하는 쿼리 전송 방법 및 쿼리 전송 시스템을 제공할 수 있다.

Claims (12)

  1. 데이터베이스로의 쿼리 전송 방법에 있어서,
    쿼리 각각에 대응하는 식별자 페어 및 상기 쿼리가 동작될 수 있는 데이터베이스의 속성을 정의하는 DB 속성 식별자를 저장하는 데이터베이스 게이트웨이를 유지하는 단계;
    상기 데이터베이스 게이트웨이와 연결되는 데이터베이스의 속성 및 어드레스에 대한 데이터베이스 리스트를 유지하는 단계;
    클라이언트로부터 그룹 식별자 및 쿼리 식별자에 관한 정보를 수신하는 단계;
    상기 수신된 그룹 식별자 및 쿼리 식별자를 일치시키는 식별자 폐어를 상기 데이터베이스 게이트웨이에서 확인하고, 상기 확인된 식별자 페어에 대응하는 쿼리를 상기 데이터베이스 게이트웨이에서 식별하는 단계;
    상기 식별된 쿼리에 대응하는 DB 속성 식별자를 상기 데이터베이스 게이트웨이로부터 인지하는 단계;
    상기 인지된 DB 속성 식별자와 매칭되는 속성을 갖는 데이터베이스의 어드레스를 상기 데이터베이스 리스트에서 획득하는 단계;
    상기 획득된 어드레스의 데이터베이스로 상기 식별된 쿼리를 전송하는 단계; 및
    상기 데이터베이스에서 전송된 쿼리를 이용한 데이터 검색에 의해 생성되는 검색 결과 정보를, 상기 데이터베이스 게이트웨이를 통해 상기 클라이언트로 전송하는 단계
    를 포함하는 것을 특징으로 하는 쿼리 전송 방법.
  2. 제1항에 있어서,
    데이터베이스 게이트웨이를 유지하는 상기 단계는,
    상기 쿼리가 발생하는 지역, 또는 상기 쿼리의 서비스 속성을 확인하는 단계; 및
    동일한 지역, 또는 동일한 서비스 속성을 갖는 쿼리에 대해, 상기 식별자 페어 내 그룹 식별자가 동일하게 할당되도록 하는 단계
    를 포함하는 것을 특징으로 하는 쿼리 전송 방법.
  3. 제2항에 있어서,
    데이터베이스 게이트웨이를 유지하는 상기 단계는,
    동일 그룹 식별자를 할당한 복수 개의 쿼리 각각에 대해, 상기 식별자 페어 내 쿼리 식별자가 서로 상이하게 할당되도록 하는 단계
    를 더 포함하는 것을 특징으로 하는 쿼리 전송 방법.
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 데이터베이스 게이트웨이는 상기 쿼리가 실행될 데이터베이스에 관한 DB 위치 식별자를 상기 쿼리 각각으로 대응시키며,
    식별된 쿼리를 전송하는 상기 단계는,
    상기 식별된 쿼리에 대응하는 DB 위치 식별자를 상기 데이터베이스 게이트웨이로부터 인지하는 단계; 및
    상기 인지된 DB 위치 식별자에 상응하는 데이터베이스를 상기 데이터베이스 리스트에서 확인하고, 상기 확인된 데이터베이스의 어드레스를 이용하여 상기 쿼리를 전송하는 단계
    를 포함하는 것을 특징으로 하는 쿼리 전송 방법.
  7. 제1항에 있어서,
    검색 결과 정보를, 상기 데이터베이스 게이트웨이를 통해 상기 클라이언트로 전송하는 상기 단계는,
    상기 쿼리 입력값의 형식, 길이, 명령색인 중 적어도 하나를 포함하는 파라미타, 및 상기 쿼리 출력값의 형식, 길이, 명령색인 중 적어도 하나를 포함하는 컬럼을 상기 검색 결과 정보로서 생성하여 상기 클라이언트로 전송하는 단계
    를 포함하는 것을 특징으로 하는 쿼리 전송 방법.
  8. 제1항에 있어서,
    임의의 시점에서, 상기 데이터베이스 게이트웨이로의 데이터베이스 접속연결이 이루어지는 경우, 또는 상기 데이터베이스 게이트웨이에서의 데이터베이스 접속해제가 이루어지는 경우, 상기 데이터베이스 리스트에 대해서 갱신 처리를 수행하는 단계
    를 더 포함하는 것을 특징으로 하는 쿼리 전송 방법.
  9. 제1항 내지 제3항, 및 제6항 내지 제8항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  10. 삭제
  11. 삭제
  12. 삭제
KR1020050091320A 2005-09-29 2005-09-29 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템 KR100795929B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020050091320A KR100795929B1 (ko) 2005-09-29 2005-09-29 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템
JP2006260941A JP4453983B2 (ja) 2005-09-29 2006-09-26 データベースへのクエリ送信方法およびクエリ送信システム
US11/528,103 US7836073B2 (en) 2005-09-29 2006-09-27 Method and system for transmitting pre-formulated query to database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050091320A KR100795929B1 (ko) 2005-09-29 2005-09-29 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020070059131A Division KR20070067062A (ko) 2007-06-15 2007-06-15 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템

Publications (2)

Publication Number Publication Date
KR20070036374A KR20070036374A (ko) 2007-04-03
KR100795929B1 true KR100795929B1 (ko) 2008-01-21

Family

ID=37895351

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050091320A KR100795929B1 (ko) 2005-09-29 2005-09-29 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템

Country Status (3)

Country Link
US (1) US7836073B2 (ko)
JP (1) JP4453983B2 (ko)
KR (1) KR100795929B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102499488B1 (ko) * 2022-04-13 2023-02-14 주식회사 비투엔 마이크로 서비스 아키텍처 기반의 쿼리 오케스트레이션 처리 장치 및 방법

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104012A1 (en) * 2006-11-01 2008-05-01 Microsoft Corporation Associating branding information with data
US20080104617A1 (en) * 2006-11-01 2008-05-01 Microsoft Corporation Extensible user interface
US20080103818A1 (en) * 2006-11-01 2008-05-01 Microsoft Corporation Health-related data audit
US20080103794A1 (en) * 2006-11-01 2008-05-01 Microsoft Corporation Virtual scenario generator
US8533746B2 (en) * 2006-11-01 2013-09-10 Microsoft Corporation Health integration platform API
US20090083240A1 (en) * 2007-09-24 2009-03-26 Microsoft Corporation Authorization agnostic based mechanism
US7958105B2 (en) * 2008-03-07 2011-06-07 International Business Machines Corporation System and method for filtering database results using dynamic composite queries
JP5320637B2 (ja) * 2008-03-31 2013-10-23 株式会社Jsol データ検索システム、システム、プログラム、およびデータ検索方法
KR100921894B1 (ko) * 2008-04-17 2009-10-13 엔에이치엔(주) 쿼리 분류정보를 이용한 문서 분류 방법 및 시스템
US8375032B2 (en) * 2009-06-25 2013-02-12 University Of Tennessee Research Foundation Method and apparatus for predicting object properties and events using similarity-based information retrieval and modeling
US8396870B2 (en) 2009-06-25 2013-03-12 University Of Tennessee Research Foundation Method and apparatus for predicting object properties and events using similarity-based information retrieval and modeling
JP5351746B2 (ja) * 2009-12-22 2013-11-27 ヤフー株式会社 データ処理装置及び方法
US8429153B2 (en) * 2010-06-25 2013-04-23 The United States Of America As Represented By The Secretary Of The Army Method and apparatus for classifying known specimens and media using spectral properties and identifying unknown specimens and media
ES2835738T3 (es) * 2010-10-21 2021-06-23 Qualcomm Inc Búsqueda en múltiples fuentes de datos mediante el uso de un dispositivo informático móvil
JP2012128767A (ja) * 2010-12-17 2012-07-05 Techno Tsurii:Kk 文書管理ゲートウェイ装置
JP5445619B2 (ja) * 2011-04-28 2014-03-19 キヤノンマーケティングジャパン株式会社 情報処理装置システム、情報処理システムの制御方法、プログラム、および記録媒体
CN102857483B (zh) 2011-06-30 2016-06-29 国际商业机器公司 预取数据的方法、设备和装置
US9674706B2 (en) * 2011-11-11 2017-06-06 Intel Deutschland Gmbh Database coordinator processor and method for providing certification information
JP6077739B2 (ja) * 2011-11-15 2017-02-08 任天堂株式会社 情報処理装置、情報処理システム、情報処理方法およびプログラム
US10679309B2 (en) 2011-12-30 2020-06-09 Elwha Llc Evidence-based healthcare information management protocols
US10340034B2 (en) 2011-12-30 2019-07-02 Elwha Llc Evidence-based healthcare information management protocols
US10475142B2 (en) 2011-12-30 2019-11-12 Elwha Llc Evidence-based healthcare information management protocols
US10559380B2 (en) 2011-12-30 2020-02-11 Elwha Llc Evidence-based healthcare information management protocols
US10528913B2 (en) 2011-12-30 2020-01-07 Elwha Llc Evidence-based healthcare information management protocols
US20130173296A1 (en) 2011-12-30 2013-07-04 Elwha LLC, a limited liability company of the State of Delaware Evidence-based healthcare information management protocols
US10552581B2 (en) 2011-12-30 2020-02-04 Elwha Llc Evidence-based healthcare information management protocols
US10585896B2 (en) * 2013-03-12 2020-03-10 Red Hat, Inc. Managing data in relational database management system
US11100171B1 (en) * 2016-12-30 2021-08-24 X Development Llc Personalized decision engine

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000047631A (ko) * 1998-12-01 2000-07-25 포만 제프리 엘 데이터베이스 액세스방법, 데이터베이스 클라이언트애플리케이션 및 기계판독가능매체 웹서버
KR20020033223A (ko) * 2000-10-30 2002-05-06 구자홍 데이터베이스 관리 시스템간 구조화 질의어의 통합처리 방법
KR20050077048A (ko) * 2004-01-26 2005-08-01 이생희 이기종의 데이타베이스 관리시스템 통합방법 및 그 방법을실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는기록매체

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987454A (en) * 1997-06-09 1999-11-16 Hobbs; Allen Method and apparatus for selectively augmenting retrieved text, numbers, maps, charts, still pictures and/or graphics, moving pictures and/or graphics and audio information from a network resource
US6233584B1 (en) * 1997-09-09 2001-05-15 International Business Machines Corporation Technique for providing a universal query for multiple different databases
US6086477A (en) * 1998-03-31 2000-07-11 Walker Digital, Llc Methods and apparatus wherein a lottery entry is entered into lottery drawings until the lottery entry is identified as a winner
AU5233099A (en) 1998-07-24 2000-02-14 Jarg Corporation Search system and method based on multiple ontologies
US6557111B1 (en) * 1999-11-29 2003-04-29 Xerox Corporation Multicast-enhanced update propagation in a weakly-consistant, replicated data storage system
US6789073B1 (en) * 2000-02-22 2004-09-07 Harvey Lunenfeld Client-server multitasking
JP2001243240A (ja) 2000-02-29 2001-09-07 Ascii Corp 情報検索システム及び電子商取引システム
US20020129010A1 (en) * 2000-12-14 2002-09-12 Pascale Fung System and method for processing user input from a variety of sources
US20030033295A1 (en) * 2001-07-11 2003-02-13 Adler Marc Stephen Method for analyzing and recording innovations
US6697819B2 (en) * 2001-07-30 2004-02-24 International Business Machines Corporation Reusable database access component
US20030028632A1 (en) * 2001-08-02 2003-02-06 Davis Thomas G. System and method of multicasting data messages
US7677970B2 (en) * 2004-12-08 2010-03-16 Microsoft Corporation System and method for social matching of game players on-line

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000047631A (ko) * 1998-12-01 2000-07-25 포만 제프리 엘 데이터베이스 액세스방법, 데이터베이스 클라이언트애플리케이션 및 기계판독가능매체 웹서버
KR20020033223A (ko) * 2000-10-30 2002-05-06 구자홍 데이터베이스 관리 시스템간 구조화 질의어의 통합처리 방법
KR20050077048A (ko) * 2004-01-26 2005-08-01 이생희 이기종의 데이타베이스 관리시스템 통합방법 및 그 방법을실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는기록매체

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102499488B1 (ko) * 2022-04-13 2023-02-14 주식회사 비투엔 마이크로 서비스 아키텍처 기반의 쿼리 오케스트레이션 처리 장치 및 방법

Also Published As

Publication number Publication date
JP2007095059A (ja) 2007-04-12
US7836073B2 (en) 2010-11-16
KR20070036374A (ko) 2007-04-03
US20070073664A1 (en) 2007-03-29
JP4453983B2 (ja) 2010-04-21

Similar Documents

Publication Publication Date Title
KR100795929B1 (ko) 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템
CN107247808B (zh) 一种分布式NewSQL数据库系统及图片数据查询方法
US10275177B2 (en) Data layout schemas for seamless data migration
US8458209B2 (en) Virtual world query response system
US7200806B2 (en) System and method for generating pre-populated forms
US7752165B2 (en) Persistent query system for automatic on-demand data subscriptions from mobile devices
US7558922B2 (en) Apparatus and method for quick retrieval of search data by pre-feteching actual data corresponding to search candidate into cache memory
US7313572B2 (en) Attribute partitioning for user extensibility
KR101083563B1 (ko) 데이터베이스 관리 방법 및 시스템
CN100580675C (zh) 访问不同种类的配置管理数据库储存库的方法和系统
CN101183379A (zh) 用于检索数据的方法和系统
CN102314506B (zh) 基于动态索引的分布式缓冲区管理方法
CN101308505A (zh) 提供对远程资源数据的访问的方法和数据处理系统
JP2006293675A (ja) キャッシュ装置、属性データ管理システム、データベース装置、制御方法、およびプログラム
US8209440B2 (en) Device-configuration-information optimum arrangement method and device-configuration-information optimum arrangement system
JP2000020678A (ja) 仮想地理空間オブジェクト生成システム及び記録媒体
CN102236835A (zh) 用于企业内容管理系统的整合框架
CN100449545C (zh) 访问扇区数据的方法和系统
US20180260463A1 (en) Computer system and method of assigning processing
US7707211B2 (en) Information management system and method
CN112835638A (zh) 一种基于嵌入式应用程序的配置信息管理方法及装置
CN110263060B (zh) 一种erp电子附件管理方法及计算机设备
KR20070067062A (ko) 데이터베이스로의 쿼리 전송 방법 및 쿼리 전송 시스템
CN101894126B (zh) 用于在数据库中存储卷属性的方法和系统
US7685107B2 (en) Apparatus, system, and method for scanning a partitioned data set

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
A107 Divisional application of patent
AMND Amendment
E902 Notification of reason for refusal
B701 Decision to grant
GRNT Written decision to grant
G170 Re-publication after modification of scope of protection [patent]
FPAY Annual fee payment

Payment date: 20130111

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20131224

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151223

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20161227

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 13