KR20160049753A - Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor - Google Patents

Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor Download PDF

Info

Publication number
KR20160049753A
KR20160049753A KR1020140147366A KR20140147366A KR20160049753A KR 20160049753 A KR20160049753 A KR 20160049753A KR 1020140147366 A KR1020140147366 A KR 1020140147366A KR 20140147366 A KR20140147366 A KR 20140147366A KR 20160049753 A KR20160049753 A KR 20160049753A
Authority
KR
South Korea
Prior art keywords
schema
data
query
individual table
combination
Prior art date
Application number
KR1020140147366A
Other languages
Korean (ko)
Other versions
KR102216886B1 (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 KR1020140147366A priority Critical patent/KR102216886B1/en
Publication of KR20160049753A publication Critical patent/KR20160049753A/en
Application granted granted Critical
Publication of KR102216886B1 publication Critical patent/KR102216886B1/en

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/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • 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/242Query formulation
    • G06F16/2423Interactive query statement specification based on a database schema

Abstract

In the present invention, a query processing mode is configured to set each table schema relevant to each data group, and use stored data individually corresponding to each of the table schema to process a query. Provided are an apparatus for processing a query by using a dynamic schema and a computer-readable recording medium therefor. According to the present invention, the method comprises: a step of receiving a query; a step of generating a combination table schema by combining schemas corresponding to the query from schemas of a data group to be used for the query by analyzing the query; and a step of processing the query by generating the combination data corresponding to the combination table schema by using data corresponding to the schemas of the data group, to be used for the query. According to an embodiment of the present invention, a schema is dynamically generated to process data.

Description

동적 스키마를 이용한 질의처리 장치 및 그를 위한 컴퓨터로 읽을 수 있는 기록 매체{Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor}TECHNICAL FIELD [0001] The present invention relates to a query processing apparatus using a dynamic schema, and a computer readable recording medium therefor. More particularly,

본 실시예는 동적 스키마를 이용한 질의처리 장치 및 그를 위한 컴퓨터로 읽을 수 있는 기록 매체에 관한 것이다.The present embodiment relates to a query processing apparatus using a dynamic schema and a computer-readable recording medium therefor.

이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The contents described in this section merely provide background information on the present embodiment and do not constitute the prior art.

관계형 데이터베이스는 데이터가 사전에 정의된 다양한 구조를 스키마(Schema)로 정의하고 정규화되어 생성된다. 이로 인해 데이터베이스의 설계에 많은 비용과 시간이 소요되며, 스키마가 한번 결정된 후에는 테이블의 칼럼 추가나 삭제로 인해 데이터베이스 구조가 변경되어 전체 스키마에 변화를 줄 경우에 다시 많은 비용이 들어가게 되고 성능에도 영향을 줄 수 있다.A relational database is created by defining a variety of predefined structures of data as schemas and normalizing them. Designing a database is costly and time-consuming, and after a schema is determined once, the database structure changes due to the addition or deletion of a column in the table, causing a change in the overall schema. You can give.

위와 같은 어려움을 해결하기 위하여 다양한 구조의 데이터를 관계형 데이터베이스 내에서 하나의 테이블로 생성하여 관리하는 것은 테이블 데이터를 저장하기 위한 데이터 공간 할당 및 관리 등 많은 어려움이 따른다.To solve the above difficulties, creating and managing data of various structures as one table in the relational database has many difficulties such as allocation and management of data space for storing table data.

따라서, Hadoop과 같이 대량의 데이터를 배치 형식으로 분산처리 하기에 적합하게 개발된 데이터베이스를 이용한 데이터의 저장 및 질의 처리의 경우에는, 저장되는 데이터에서 어떤 값을 키(Key) 값으로 정의할지 여부 등 데이터에 의미를 부여하는 작업을 데이터 처리 실행 시점에 해주는 것이 일반적이므로 Hadoop과 같은 대량 데이터 처리용 데이터베이스의 경우에는 일반적인 관계형 데이터베이스의 경우와는 다른 방법을 제공하는 것이 필요하다.Accordingly, in the case of data storage and query processing using a database developed for distributing a large amount of data in a batch format like Hadoop, it is necessary to determine a value in the stored data as a key value In general, it is necessary to provide a method for mass data processing such as Hadoop, which is different from a general relational database, since it is common to perform a task of giving meaning to data at the time of data processing.

본 실시예는 동적 스키마를 이용한 질의처리 장치 및 그 방법을 제공하는데 주된 목적이 있다.The present embodiment has a main object to provide an apparatus and method for processing a query using a dynamic schema.

SQL(Structured Query Language)과 유사한 질의어가 사용 가능한 환경을 제공하면서 다양한 데이터 스키마를 동적으로 생성 가능하도록 하는 데에도 그 목적이 있다.The object of the present invention is to make it possible to dynamically generate various data schemas while providing an environment in which queries similar to SQL (Structured Query Language) can be used.

본 실시예의 일 측면에 의하면, 데이터 그룹별로 각각 해당하는 개별 테이블 스키마가 설정되고 상기 개별 테이블 스키마에 각각 대응하여 저장된 데이터를 이용하여 질의를 처리하는 장치에 있어서, 질의를 수신하는 질의 수신부; 상기 질의를 분석하여 상기 질의에 사용될 데이터 그룹의 스키마로부터 상기 질의에 대응되는 스키마를 조합하여 조합 테이블 스키마를 생성하는 조합스키마 생성부; 및 상기 질의에 사용될 데이터 그룹의 스키마에 대응되는 데이터를 이용하여 상기 조합 테이블 스키마에 대응하는 조합 데이터를 생성하여 상기 질의를 처리하는 질의 처리부를 포함하는 것을 특징으로 하는 동적 스키마 질의처리 장치를 제공한다.According to an aspect of the present invention, there is provided an apparatus for processing a query using an individual table schema corresponding to each data group and using data stored corresponding to the individual table schema, the apparatus comprising: a query receiving unit for receiving a query; A combination schema generation unit for analyzing the query and generating a combination table schema by combining a schema corresponding to the query from a schema of a data group to be used in the query; And a query processing unit for generating combination data corresponding to the combination table schema by using data corresponding to the schema of the data group to be used in the query and processing the query .

상기 개별 테이블 스키마에는 각각 키(Key) 속성(Attribute)과 논키(Non-key) 속성이 포함될 수 있으며, 복수의 개별 테이블 스키마의 키의 속성은 서로 동일하도록 설정될 수 있다.The individual table schema may include a key attribute and a non-key attribute, and attributes of keys of a plurality of individual table schemas may be set to be equal to each other.

상기 조합 테이블 스키마는, 상기 복수개의 개별 테이블 스키마에서 공통되는 키 속성을 상기 조합 테이블 스키마의 키로 설정하고 상기 조합 테이블 스키마의 논키 속성은 상기 복수개의 개별 테이블 스키마에서 각각 적어도 하나의 논키 속성을 포함할 수 있다.Wherein the combination table schema sets a key attribute common to the plurality of individual table schemas as a key of the combination table schema and a non-key attribute of the combination table schema includes at least one non-key attribute in each of the plurality of individual table schemas .

상기 질의에 사용될 데이터 그룹의 스키마는 상기 수신된 데이터 그룹 중에서 선택되는 복수의 데이터 그룹에 대응되는 복수의 개별 테이블 스키마일 수 있다. 또한, 상기 질의 처리부는 상기 조합 테이블 스키마에 대응되는 저장 영역을 설정하고, 상기 복수의 개별 테이블 스키마 중에서 제1 개별 테이블 스키마에 대응되는 데이터를 상기 저장 영역에 매핑시킨 후 상기 복수의 개별 테이블 스키마 중에서 상기 제1 개별 테이블 스키마를 제외한 나머지 개별 테이블 스키마에 대응되는 데이터를 순차적으로 상기 저장 영역에 매핑시켜 상기 조합 데이터를 생성할 수 있다.The schema of the data group to be used for the query may be a plurality of individual table schemas corresponding to the plurality of data groups selected from the received data groups. The query processing unit may set a storage area corresponding to the combination table schema, map data corresponding to the first individual table schema among the plurality of individual table schemas to the storage area, The data corresponding to the individual table schema other than the first individual table schema may be sequentially mapped to the storage area to generate the combination data.

상기 질의는, 상기 조합 데이터를 생성하고 상기 조합 데이터를 기반으로 결과 데이터를 생성하는 질의일 수 있다.The query may be a query that generates the combination data and generates result data based on the combination data.

상기 동적 스키마 질의처리 장치는, 복수의 필드로 구성된 데이터를 수신하는 필드 데이터 수신부; 상기 수신된 데이터를 그룹별로 각각 저장하는 데이터 저장부; 처리할 데이터 그룹을 지정하고 해당 데이터 그룹의 복수의 필드 데이터에 대한 스키마 설정 요청을 포함하는 명령을 수신하는 스키마 입력부; 및 상기 명령에 따라서 상기 복수의 필드 데이터를 이용하여 상기 지정된 데이터 그룹에 대한 스키마를 설정하는 스키마 설정부를 더 포함하여 구현될 수 있다.The dynamic schema query processing apparatus includes a field data receiving unit for receiving data composed of a plurality of fields; A data storage unit for storing the received data for each group; A schema input unit for specifying a data group to be processed and receiving an instruction including a schema setting request for a plurality of field data of the data group; And a schema setting unit for setting a schema for the designated data group using the plurality of field data according to the command.

여기서, 상기 명령은, 복수의 데이터 그룹에 대하여 데이터 그룹별로 각각 해당하는 개별 테이블 스키마가 설정되고 상기 개별 테이블 스키마에 각각 대응하여 데이터를 저장하되, 각 데이터 그룹은 서로 동일한 키 속성을 갖도록 스키마 설정을 요청하는 것을 포함할 수 있다.Here, the command may include: setting an individual table schema corresponding to each data group for a plurality of data groups, storing data corresponding to the individual table schema, and setting each of the data groups to have the same key attribute Requesting a request.

본 실시예의 다른 측면에 의하면, 컴퓨터에, 데이터 그룹별로 각각 해당하는 개별 테이블 스키마를 생성하고 상기 개별 테이블 스키마에 각각 대응하여 데이터를 저장하는 과정; 질의를 수신하는 과정; 상기 질의를 분석하여 상기 질의에 사용될 데이터 그룹의 스키마로부터 상기 질의에 대응되는 스키마를 조합하여 조합 테이블 스키마를 생성하는 과정; 및 상기 질의에 사용될 데이터 그룹의 스키마에 대응되는 데이터를 이용하여 상기 조합 테이블 스키마에 대응하는 조합 데이터를 생성하여 상기 질의를 처리하는 과정을 포함하는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.According to another aspect of the present invention, there is provided a computer-readable storage medium storing a computer program for causing a computer to generate a corresponding individual table schema for each data group and storing data corresponding to the individual table schema, respectively; Receiving a query; Analyzing the query and generating a combination table schema by combining the schema corresponding to the query from the schema of the data group to be used in the query; And generating the combined data corresponding to the combination table schema by using data corresponding to the schema of the data group to be used in the query and processing the query. Media.

상기 저장된 데이터는, 복수의 데이터 그룹에 대하여 데이터 그룹별로 각각 해당하는 개별 테이블 스키마가 설정되고 상기 개별 테이블 스키마에 각각 대응하여 데이터를 저장하되, 각 데이터 그룹은 서로 동일한 키 속성을 갖도록 스키마 설정을 요청하는 명령에 의해 생성될 수 있다.Wherein the stored data includes a plurality of data groups each having a separate table schema corresponding to each data group and storing data corresponding to the individual table schema, Lt; / RTI >

이상에서 설명한 바와 같이, 본 실시예에 의하면, 동적으로 스키마를 생성하여 데이터를 처리할 수 있도록 한다.As described above, according to the present embodiment, a schema can be dynamically generated and data can be processed.

또한, 출력을 원하는 데이터의 스키마가 해당 데이터를 생성하는 질의의 처리 시점에 정의(Lazy binding)되는 환경 구축을 가능해진다. 그리고, 동적으로 데이터의 스키마와 같은 메타 정보를 관리하여 다양한 종류의 데이터에 대해서도 한번의 질의로써 정보를 추출함에 있어서 단일 테이블로 형성된 데이터베이스의 경우와 유사한 성능으로 동일한 효과를 나타낼 수 있다.In addition, it is possible to construct an environment in which the schema of the data to be output is defined (Lazy binding) at the time of the processing of generating the corresponding data. The same effect can be obtained with a similar performance to that of a database formed of a single table in managing meta information such as a schema of a data dynamically and extracting information with a single query for various kinds of data.

이러한 동적 바인딩 구조는 웨이퍼의 제조 공정과 같이 하나의 공정 라인에서 제품에 따라 다양한 형태의 데이터가 출력되는 경우 이를 저장하고 활용하는 경우에 매우 유용하다.Such a dynamic binding structure is very useful when various types of data are output depending on products in a single process line, such as a wafer manufacturing process, in order to store and utilize the data.

도 1은 본 발명의 일 실시예에 따른 동적 스키마 질의처리 장치를 블록도로 도시한 도면이다.
도 2는 어느 하나의 시험 결과를 저장하기 위한 스키마 및 저장된 시험결과 데이터를 예시한 도면이다.
도 3은 도 2의 경우와는 다른 시험 결과를 저장하기 위한 스키마 및 저장된 시험결과 데이터를 예시한 도면이다.
도 4는 입력된 질의를 분석하여 조합 테이블 스키마 및 그에 대응하여 저장된 데이터를 예시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 데이터 처리부(120)를 블록도로 도시한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 동적 스키마 질의처리 방법을 도시한 흐름도이다.
1 is a block diagram of a dynamic schema query processing apparatus according to an embodiment of the present invention.
2 is a diagram illustrating a schema for storing test results and stored test result data.
3 is a diagram illustrating a schema for storing test results different from the case of FIG. 2 and stored test result data.
4 is a diagram illustrating a combination table schema and corresponding stored data by analyzing the input query.
5 is a block diagram of a data processing unit 120 according to an embodiment of the present invention.
6 is a flowchart illustrating a dynamic schema query processing method according to another embodiment of the present invention.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 본 발명의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to exemplary drawings. In the following description of the embodiments of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

도 1은 본 발명의 일 실시예에 따른 동적 스키마 질의처리 장치(100)를 블록도로 도시한 도면이다.FIG. 1 is a block diagram of a dynamic schema query processing apparatus 100 according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 동적 스키마 질의처리 장치(100)는 데이터 수신부(110), 데이터 처리부(120), 질의 수신부(130), 조합스키마 생성부(140) 및 질의 처리부(150)를 포함하여 구현될 수 있다. 실시예에 따라서 동적 스키마 질의처리 장치(100)는 그 구성요소 중에서 일부 구성요소는 생략되거나 다른 구성요소를 추가로 포함하여 구현될 수 있다.The dynamic schema query processing apparatus 100 according to an exemplary embodiment of the present invention includes a data receiving unit 110, a data processing unit 120, a query receiving unit 130, a combination schema generating unit 140, and a query processing unit 150 . Depending on the embodiment, the dynamic schema query processing apparatus 100 may be implemented by omitting some of its constituent elements or further including other constituent elements.

데이터 수신부(110)는 저장하고자 하는 데이터를 수신한다.The data receiving unit 110 receives data to be stored.

예컨대, 반도체 웨이퍼(Wafer)를 이용한 칩(Chip) 생산 공정에서 하나의 웨이퍼 라트(Lot)에는 보통 수십개의 웨이퍼가 있으며 하나의 웨이퍼로는 보통 수백 ~ 수천개의 칩을 생산한다. 일반적으로 하나의 칩에 대해서 수백개 이상의 테스트 항목이 있으며, 이 경우 하나의 테스트 항목에 대하여 테스트할 때마다 테스트 결과 데이터가 생성된다.For example, in a chip manufacturing process using semiconductor wafers, there are usually dozens of wafers in one wafer lot, and usually hundreds to thousands of chips are produced as one wafer. Generally, there are several hundred test items for one chip. In this case, test result data is generated for each test item.

데이터 수신부(110)가 이러한 시험 결과 데이터를 입력으로 하여 데이터를 수신하는 경우에, 데이터 처리부(120)는 수신된 데이터 그룹별로 각각 해당하는 개별 테이블 스키마(Schema)를 생성하고 생성된 개별 테이블 스키마에 각각 대응하여 수신된 데이터를 그룹별로 저장한다. 예컨대, 칩에 대한 하나의 테스트 항목에 대한 시험 결과마다 개별 테이블 스키마가 생성되고 그에 대응하여 데이터가 저장된다.When the data receiving unit 110 receives the test result data and receives the data, the data processing unit 120 generates a corresponding individual table schema for each received data group, and transmits the generated individual table schema to the individual table schema And stores the received data corresponding to each group. For example, an individual table schema is generated for each test result for one test item for the chip, and data is stored correspondingly.

도 2는 어느 하나의 시험 결과를 저장하기 위한 스키마 및 저장된 시험결과 데이터를 예시한 도면이고, 도 3은 도 2의 경우와는 다른 시험 결과를 저장하기 위한 스키마 및 저장된 시험결과 데이터를 예시한 도면이다.FIG. 2 illustrates a schema for storing one test result and stored test result data, FIG. 3 illustrates a schema for storing a test result different from the case of FIG. 2, and FIG. to be.

도 2에 예시한 바와 같이, 어느 하나의 시험 결과를 입력받은 경우에 데이터 처리부(120)는 이를 저장하기 위한 Table A의 데이터 스키마로서 웨이퍼 번호 속성(Attribute)과 칩 번호 속성을 하나로 묶어 (Wafer No, Chip No)를 키(Key)로 하고 실험결과에 해당하는 속성인 (시험항목 a, 시험항목 b)가 논키(Non-Key) 속성이 되어 (Wafer No, Chip No, 시험항목 a, 시험항목 b)의 형태로서 하나의 레코드를 형성하는 제1 스키마를 생성한다. 그리고 데이터 처리부(120)는 시험대상의 웨이퍼 라트 내의 모든 웨이퍼에 대하여 각 칩에 대응하는 시험 결과로 이루어진 데이터 그룹을 제1 스키마를 갖는 Table A의 테이블 저장공간에 저장한다.2, when a test result is input, the data processing unit 120 combines the wafer number attribute and the chip number attribute as a data schema of Table A for storing the wafer number attribute (wafer number (Test item a, test item b) becomes a non-key attribute (Wafer No, Chip No, test item a, test item a) b) to generate a first schema that forms one record. Then, the data processing unit 120 stores the data group consisting of the test results corresponding to each chip in all the wafers in the wafer to be tested in the table storage space of Table A having the first schema.

이러한 스키마의 설정은 별도의 입력장치를 이용하여 사용자가 키 속성, 논키 속성의 명칭과 데이터 사이즈 등의 파라미터를 설정함으로써 그 스키마를 설정할 수 있다.The schema can be set by setting parameters such as a key attribute, a name of a non-key attribute, and a data size using a separate input device.

한편, 본 실시예에서의 설명에서 속성, 필드, 컬럼 등의 용어를 혼용하여 사용할 수 있으나, 이는 모두 동일한 개념으로 사용된 것임을 밝혀둔다. 또한, 복수의 속성으로서 하나의 키를 형성하는 경우를 예로 들었으나, 실시예에 따라서는 하나의 속성으로 키를 형성할 수도 있다.On the other hand, in the description of this embodiment, terms such as attribute, field, and column can be used in combination, but all are used in the same concept. In addition, although a case where one key is formed as a plurality of attributes has been described as an example, a key may be formed with one attribute depending on the embodiment.

도 3의 경우, 도 2의 경우와는 다른 시험 결과를 입력받은 경우에 데이터 처리부(120)는 이를 저장하기 위한 Table B의 데이터 스키마로서 웨이퍼 번호 속성(Attribute)과 칩 번호 속성을 하나로 묶어 (Wafer No, Chip No)를 키(Key)로 하고 실험결과에 해당하는 속성인 (시험항목 c, 시험항목 d, 시험항목 e)가 논키(Non-Key) 속성이 되어 (Wafer No, Chip No, 시험항목 c, 시험항목 d, 시험항목 e)의 형태로서 하나의 레코드를 형성하는 제2 스키마를 생성한다. 그리고 데이터 처리부(120)는 웨이퍼 라트 내의 시험대상 모든 웨이퍼에 대하여 각 칩에 대응하는 시험 결과로 이루어진 데이터 그룹을 제2 스키마를 갖는 Table B의 테이블 저장공간에 저장한다.In the case of FIG. 3, when a test result different from that of FIG. 2 is inputted, the data processing unit 120 bundles the wafer number attribute and the chip number attribute as a data schema of Table B for storing the wafer number attribute (Test item c, test item d, and test item e) corresponding to the experimental result become the non-key property (Wafer No, Chip No, Test No) A second schema that forms one record in the form of item c, test item d, test item e) is generated. Then, the data processing unit 120 stores the data group consisting of the test results corresponding to each chip in the table storage space of Table B having the second schema for all the wafers to be tested in the wafer rack.

도 2 및 도 3의 경우는, 복수의 개별 테이블 스키마의 키 속성이 서로 동일하도록 복수의 개별 테이블 스키마가 데이터 처리부(120)에 의해 저장된 경우이며, 이러한 경우에 두 테이블을 서로 공통된 키를 이용하는 질의가 입력된 경우 이 질의의 처리에 사용될 수 있다.In the case of FIGS. 2 and 3, a plurality of individual table schemas are stored by the data processing unit 120 such that the key attributes of a plurality of individual table schemas are identical to each other. In this case, Can be used to process this query.

질의 수신부(130)는 동적 스키마 질의처리 장치(100)의 사용자로부터 소정의 입력장치를 이용하여 입력된 질의를 수신한다. 여기서 입력되는 질의로는 SQL(Structured Query Language)로 작성된 것을 사용할 수 있으나 본 발명이 이에 한정되지 않고 다양한 언어를 사용할 수 있다.The query receiving unit 130 receives a query input from a user of the dynamic schema query processing apparatus 100 using a predetermined input device. The query entered here may be written in SQL (Structured Query Language), but the present invention is not limited thereto and various languages can be used.

조합스키마 생성부(140)는 질의 수신부(130)에 입력된 질의를 분석하여 입력된 질의에 사용될 데이터 그룹의 스키마로부터 해당 질의에 대응되는 스키마를 조합하여 조합 테이블 스키마를 생성한다.The combination schema generation unit 140 analyzes the query input to the query reception unit 130 and generates a combination table schema by combining the schema corresponding to the query from the schema of the data group to be used in the input query.

조합 테이블 스키마는 스키마 조합에 사용되는 복수개의 개별 테이블 스키마에서 공통되는 키를 조합 테이블 스키마의 키로 설정할 수 있으며, 조합 테이블 스키마의 속성은 스키마 조합에 사용되는 복수개의 개별 테이블 스키마에서 각각 적어도 하나의 속성을 포함한다.The combination table schema can set a key that is common to a plurality of individual table schemas used in a combination of a schema to a key of a combination table schema. The attributes of the combination table schema include at least one attribute .

도 4는 입력된 질의를 분석하여 조합 테이블 스키마 및 그에 대응하여 저장된 데이터를 예시한 도면이다.4 is a diagram illustrating a combination table schema and corresponding stored data by analyzing the input query.

입력된 질의의 내용이 "(Wafer No, Chip No)를 키로 사용하여 Table A의 시험항목 a 및 시험항목 b와, Table B의 시험항목 c 및 시험항목 d를 Table AB라는 테이블로 생성하라"는 질의1인 경우를 예로 들어 설명한다.Create a table named table AB with test item a and test item b in Table A, test item c in table B, and test item d using "Wafer No, Chip No" as the key. The query 1 is described as an example.

조합스키마 생성부(140)는 위의 질의1에 포함된 테이블 명칭인 Table A와 Table B에 대하여 각각 스키마를 확인하여 (Wafer No, Chip No)가 키로 설정되어 있는지 확인하고, 키와 Table A의 시험항목 a 및 시험항목 b와, Table B의 시험항목 c 및 시험항목 d를 포함하는 속성의 데이터 형식과 사이즈 등의 파라미터를 설정하여 도 4에 도시한 바와 같은 Table AB에 대한 조합 테이블 스키마를 생성한다.The combination schema generation unit 140 checks the schema for Table A and Table B, which are the table names included in Query 1 above, and confirms that the (Wafer No, Chip No) A combination table schema for Table AB as shown in FIG. 4 is created by setting parameters such as the data type and size of the attribute including the test item a and the test item b, the test item c of Table B, and the test item d do.

질의 처리부(150)는 입력된 질의에 사용될 데이터 그룹의 스키마에 대응되는 데이터를 이용하여 조합스키마 생성부(140)에서 생성된 조합 테이블 스키마에 대응하는 조합 데이터를 생성하여 질의를 처리한다.The query processing unit 150 generates combination data corresponding to the combination table schema generated by the combination schema generation unit 140 using the data corresponding to the schema of the data group to be used in the input query, and processes the query.

질의 처리부(150)는 Table A와 Table B에 대응되는 키 값과 각 키 값에 대응되는 Table A의 시험항목 a 및 시험항목 b의 데이터와, Table B의 시험항목 c 및 시험항목 d의 데이터를 도 4의 조합 테이블 스키마를 갖는 테이블의 해당 저장 영역에 저장한다.The query processing unit 150 obtains the key values corresponding to the tables A and B, the data of the test items a and b of Table A corresponding to the key values, the data of the test items c and d of Table B And stores it in the corresponding storage area of the table having the combination table schema of FIG.

Hadoop과 같은 대량 데이터 처리용 데이터베이스는 순차 접근(Sequential Access)을 기반으로 하므로 Table AB와 같은 조합 테이블을 생성함에 있어서, 조합 테이블 생성시간을 줄이기 위하여 Table AB의 조합 테이블 스키마에 대응되는 저장 영역을 설정한 후 개별 테이블 스키마를 갖는 개별 테이블의 데이터를 순차적으로 저장한다.Since the database for mass data processing such as Hadoop is based on sequential access, in order to reduce the generation time of the combination table in generating a combination table such as Table AB, a storage area corresponding to the combination table schema of Table AB is set And then sequentially stores the data of the individual tables having the individual table schema.

즉, Table AB의 조합 테이블 스키마를 형성하는 데 사용된 복수의 개별 테이블 스키마 중에서 제1 개별 테이블 스키마에 대응되는 데이터(예컨대, Table A의 키, 시험항목 a, 시험항목 b 데이터)를 순차 접근에 의하여 조합 테이블 스키마에 대응되는 Table AB의 저장 영역에 매핑시킨 후 나머지 개별 테이블 스키마에 대응되는 데이터(즉, Table B의 키, 시험항목 c, 시험항목 d 데이터)를 순차적으로 Table AB의 해당 저장 영역에 매핑시켜 조합 테이블 스키마에 대응되는 조합 데이터 테이블을 생성한다.That is, the data corresponding to the first individual table schema (for example, the key of Table A, the test item a, and the test item b data) among the plurality of individual table schemas used to form the combination table schema of Table AB are sequentially accessed And then mapping the data corresponding to the remaining individual table schema (i.e., the key of Table B, the test item c, and the test item d data) to the corresponding storage area of Table AB, And generates a combination data table corresponding to the combination table schema.

만일, 입력된 질의가 Table A, Table B, Table C를 이용하여 새로운 조합 테이블을 생성하는 질의(이하, 질의2라 함)인 경우에는, 질의2를 처리하여 생성된 조합 테이블을 위한 저장 영역을 할당한 후 Table A의 데이터를 조합 테이블의 영역에 순차 접근에 의하여 매핑하여 저장하고 Table B의 데이터를 조합 테이블의 영역에 순차 접근에 의하여 매핑하여 저장하고 Table C의 데이터를 조합 테이블의 영역에 순차 접근에 의하여 매핑하여 저장하여 각 해당 테이블의 데이터를 순차적으로 처리한다.If the input query is a query (hereinafter referred to as query 2) that generates a new combination table using Table A, Table B, and Table C, the storage area for the combination table generated by processing Query 2 After the allocation, the data of Table A is mapped by sequential access to the area of the combination table, the data of Table B is mapped by sequential access to the area of the combination table, and the data of Table C is sequentially stored in the area of the combination table And accesses the data of each corresponding table sequentially.

이와 같이 출력을 원하는 데이터의 스키마가 해당 데이터를 생성하는 질의의 처리 시점에 정의(Lazy binding)되는 환경 구축을 가능해진다. 또한, 동적으로 데이터의 스키마와 같은 메타 정보를 관리하여 다양한 종류의 데이터에 대해서도 한번의 질의로써 정보를 추출함에 있어서 단일 테이블로 형성된 데이터베이스의 경우와 유사한 성능으로 동일한 효과를 나타낼 수 있다.In this way, it is possible to construct an environment in which the schema of the data that is desired to be output is defined (Lazy binding) at the time of the processing of generating the corresponding data. In addition, by managing meta information such as a schema of data dynamically, extracting information with a single query on various kinds of data can exhibit the same effect with similar performance to a database formed of a single table.

이러한 동적 바인딩 구조는 웨이퍼의 제조 공정과 같이 하나의 공정 라인에서 제품에 따라 다양한 형태의 데이터가 출력되는 경우 이를 저장하고 활용하는 경우에 매우 유용하다.Such a dynamic binding structure is very useful when various types of data are output depending on products in a single process line, such as a wafer manufacturing process, in order to store and utilize the data.

도 5는 본 발명의 일 실시예에 따른 데이터 처리부(120)를 블록도로 도시한 도면이다.5 is a block diagram of a data processing unit 120 according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 데이터 처리부(120)는 필드 데이터 수신부(510), 데이터 저장부(520), 질의 입력부(530) 및 스키마 설정부(540)를 포함한다. 실시예에 따라서 본 발명의 다른 실시예에 따른 데이터 처리부(120)는 그 구성요소 중에서 일부 구성요소는 생략되거나 다른 구성요소를 추가로 포함하여 구현될 수 있다.The data processing unit 120 according to an embodiment of the present invention includes a field data receiving unit 510, a data storing unit 520, a query input unit 530, and a schema setting unit 540. The data processing unit 120 according to another exemplary embodiment of the present invention may be implemented by omitting some of the components or further including other components.

필드 데이터 수신부(510)는 복수의 필드로 구성된 데이터를 수신한다. 여기서 복수의 필드로 구성된 데이터는 스키마가 설정되지 않은 단순히 복수의 필드로 구분된 형식의 데이터일 수도 있고, 또는 본 실시예에서 사용하고자 하는 데이터 형식에 따른 스키마를 갖춘 데이터 테이블일 수도 있다.The field data receiving unit 510 receives data composed of a plurality of fields. Here, the data composed of a plurality of fields may be data of a format that is not divided by a plurality of fields without a schema, or may be a data table having a schema according to a data format to be used in the present embodiment.

데이터 저장부(520)는 수신된 데이터를 기설정된 그룹별로 각각 저장한다.The data storage unit 520 stores the received data for each predetermined group.

스키마 입력부(530)는 데이터 저장부(520)에 저장된 데이터 그룹 중에서 처리할 데이터 그룹을 지정하고 해당 데이터 그룹의 복수의 필드 데이터에 대한 스키마 설정 요청을 포함하는 질의 명령을 수신한다.The schema input unit 530 designates a data group to be processed among the data groups stored in the data storage unit 520 and receives a query command including a schema setting request for a plurality of field data of the data group.

스키마 설정부(540)는 스키마 입력부(530)에서 입력된 질의 명령에 따라서 해당 데이터 그룹의 복수의 필드 데이터를 이용하여 지정된 데이터 그룹에 대한 스키마를 설정한다. The schema setting unit 540 sets a schema for a specified data group using a plurality of field data of the corresponding data group according to a query command input from the schema input unit 530. [

만일, 복수의 필드로 구성된 데이터가 필드가 스키마가 설정되지 않은 단순히 필드가 복수개인 형식의 데이터라면 스키마 설정부(540)는 해당 데이터 그룹에 대하여 새로운 스키마를 설정한다.If the data composed of a plurality of fields is data of a form in which the field is not a schema, the schema setting unit 540 sets a new schema for the corresponding data group.

복수의 필드로 구성된 데이터가 필드가 스키마를 갖춘 데이터 테이블인 경우에 스키마 설정부(540)는 속성 이름을 재설정하는 동작을 수행할 수도 있다. 이 경우, 스키마 설정부(540)는 다수의 데이터 그룹에 대하여 서로 동일한 키 속성을 갖도록 키에 대응되는 속성의 명칭을 동일하도록 처리할 수 있다.If the data composed of a plurality of fields is a data table having a schema, the schema setting unit 540 may perform an operation of resetting the attribute name. In this case, the schema setting unit 540 can process the plurality of data groups so that the names of the attributes corresponding to the keys have the same key attribute.

도 6은 본 발명의 다른 실시예에 따른 동적 스키마 질의처리 방법을 도시한 흐름도이다.6 is a flowchart illustrating a dynamic schema query processing method according to another embodiment of the present invention.

본 발명의 다른 실시예에 따른 동적 스키마 질의처리 방법은 데이터 수신과정(S610), 데이터 처리과정(S620), 질의 수신 과정(S630), 조합스키마 생성과정(S640) 및 질의 처리과정(S650)을 포함한다.The dynamic schema query processing method according to another embodiment of the present invention includes a data receiving step S610, a data processing step S620, a query receiving step S630, a combining schema generating step S640, and a query processing step S650 .

데이터 수신과정(S610)에서는 저장하고자 하는 데이터를 사용자 입력장치 또는 외부의 데이터 입력장치로부터 수신한다.In the data receiving process (S610), data to be stored is received from a user input device or an external data input device.

데이터 처리과정(S620)에서는 수신된 데이터 그룹별로 각각 해당하는 개별 테이블 스키마(Schema)를 생성하고 수신된 데이터를 개별 테이블 스키마에 각각 대응하여 그룹별로 저장한다.In the data processing step S620, a corresponding individual table schema is generated for each received data group, and the received data is stored for each group corresponding to the individual table schema.

질의 수신 과정(S630)에서는 동적 스키마 질의처리 장치(100)의 사용자로부터 소정의 입력장치를 이용하여 입력된 질의를 수신한다.In the query receiving process (S630), the user of the dynamic schema query processing apparatus 100 receives the input query using a predetermined input device.

조합스키마 생성과정(S640)에서는, 질의 수신과정(S630)에서 입력된 질의를 분석하여 입력된 질의에 사용될 데이터 그룹의 스키마로부터 해당 질의에 대응되는 스키마를 조합하여 조합 테이블 스키마를 생성한다.In the combining schema generation process (S640), a query entered in the query receiving process (S630) is analyzed and a combination table schema is generated by combining the schema corresponding to the query from the schema of the data group to be used in the input query.

질의 처리과정(S650)에서는 입력된 질의에 사용될 데이터 그룹의 스키마에 대응되는 데이터를 이용하여 조합스키마 생성과정(S640)에서 생성된 조합 테이블 스키마에 대응하는 조합 데이터를 생성하여 질의를 처리한다.In the query processing step S650, the data corresponding to the schema of the data group to be used in the input query is used to generate combination data corresponding to the combination table schema generated in the combining schema creation step S640, and the query is processed.

데이터 수신과정(S610), 데이터 처리과정(S620), 질의 수신 과정(S630), 조합스키마 생성과정(S640) 및 질의 처리과정(S650)은 데이터 수신부(110), 데이터 처리부(120), 질의 수신부(130), 조합스키마 생성부(140) 및 질의 처리부(150)의 동작에 각각 대응되므로 더 이상의 상세한 설명은 생략한다.A data processing step S620, a query receiving step S630, a combining schema generating step S640 and a query processing step S650 are performed by the data receiving unit 110, the data processing unit 120, The combination schema generation unit 140, and the query processing unit 150, respectively.

도 6에서는 과정 S610 내지 과정 S650을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 발명의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 발명의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 6에 기재된 순서를 변경하여 실행하거나 과정 S610 내지 과정 S650 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 6은 시계열적인 순서로 한정되는 것은 아니다.Although it is described in FIG. 6 that steps S610 to S650 are sequentially executed, this is merely illustrative of the technical idea of an embodiment of the present invention. In other words, those skilled in the art will understand that one of the steps S610 to S650 may be performed by changing the order described in FIG. 6 without departing from the essential characteristics of an embodiment of the present invention. 6 is not limited to the time-series order because it can be variously modified and modified by being executed in parallel.

본 발명의 실시예에 따른 동적 스키마 질의처리 장치(100)는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 프로그램을 실행하기 위한 데이터를 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다. 적어도 일 실시예에 따르면, 메모리는 램(Random Access Memory: RAM), 롬(Read Only Memory: ROM), 플래시 메모리, 광 디스크, 자기 디스크, 솔리드 스테이트 디스크(Solid State Disk: SSD) 등의 컴퓨터로 판독 가능한 기록/저장매체일 수 있다. 적어도 일 실시예에 따르면, 마이크로프로세서는 명세서에 기재된 동작과 기능을 하나 이상 선택적으로 수행하도록 프로그램될 수 있다. 적어도 일 실시예에 따르면, 마이크로프로세서는 전체 또는 부분적으로 특정한 구성의 주문형반도체(Application Specific Integrated Circuit: ASIC) 등의 하드웨어로써 구현될 수 있다.The dynamic schema query processing apparatus 100 according to the embodiment of the present invention executes a program, a communication device such as a communication modem for performing communication with various devices or wired / wireless communication networks, a memory for storing data for executing a program, And a microprocessor for calculating and controlling the operation of the apparatus. According to at least one embodiment, the memory may be a computer such as a random access memory (RAM), a read only memory (ROM), a flash memory, an optical disk, a magnetic disk, or a solid state disk Readable recording / storage medium. According to at least one embodiment, a microprocessor can be programmed to selectively perform one or more of the operations and functions described in the specification. In accordance with at least one embodiment, the microprocessor may be implemented in hardware, such as an Application Specific Integrated Circuit (ASIC), in wholly or partially of a particular configuration.

전술한 바와 같이, 도 6에 기재된 동적 스키마 질의처리 방법은 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 본 실시예에 따른 동적 스키마 질의처리 방법을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.As described above, the dynamic schema query processing method described in FIG. 6 can be implemented by a program and recorded in a computer-readable recording medium. A program for implementing the dynamic schema query processing method according to the present embodiment is recorded, and the computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of such computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, etc., and also implemented in the form of a carrier wave (e.g., transmission over the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code is stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present embodiment can be easily inferred by programmers in the technical field to which the present embodiment belongs.

이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present embodiment, and various modifications and changes may be made to those skilled in the art without departing from the essential characteristics of the embodiments. Therefore, the present embodiments are to be construed as illustrative rather than restrictive, and the scope of the technical idea of the present embodiment is not limited by these embodiments. The scope of protection of the present embodiment should be construed according to the following claims, and all technical ideas within the scope of equivalents thereof should be construed as being included in the scope of the present invention.

110: 동적 스키마 질의처리 장치
110: 데이터 수신부
120: 데이터 처리부
130: 질의 수신부
140: 조합스키마 생성부
150: 질의 처리부
510: 필드 데이터 수신부
520: 데이터 저장부
530: 질의 입력부
540: 스키마 설정부
110: Dynamic schema query processing device
110: Data receiving unit
120:
130:
140: Combination schema generation unit
150:
510: field data receiver
520: Data storage unit
530: Query input unit
540: schema setting unit

Claims (11)

데이터 그룹별로 각각 해당하는 개별 테이블 스키마가 설정되고 상기 개별 테이블 스키마에 각각 대응하여 저장된 데이터를 이용하여 질의를 처리하는 장치에 있어서,
질의를 수신하는 질의 수신부;
상기 질의를 분석하여 상기 질의에 사용될 데이터 그룹의 스키마로부터 상기 질의에 대응되는 스키마를 조합하여 조합 테이블 스키마를 생성하는 조합스키마 생성부; 및
상기 질의에 사용될 데이터 그룹의 스키마에 대응되는 데이터를 이용하여 상기 조합 테이블 스키마에 대응하는 조합 데이터를 생성하여 상기 질의를 처리하는 질의 처리부
를 포함하는 것을 특징으로 하는 동적 스키마 질의처리 장치.
An apparatus for processing a query using data stored in association with each individual table schema, wherein a corresponding individual table schema is set for each data group,
A query receiving unit for receiving a query;
A combination schema generation unit for analyzing the query and generating a combination table schema by combining a schema corresponding to the query from a schema of a data group to be used in the query; And
Generating a combination data corresponding to the combination table schema by using data corresponding to the schema of the data group to be used in the query and processing the query;
Wherein the dynamic schema query processing unit comprises:
제1항에 있어서,
상기 개별 테이블 스키마에는 각각 키(Key) 속성(Attribute)과 논키(Non-key) 속성이 포함되는 것을 특징으로 하는 동적 스키마 질의처리 장치.
The method according to claim 1,
Wherein the individual table schema includes a key attribute and a non-key attribute, respectively.
제2항에 있어서,
복수의 개별 테이블 스키마는 키의 속성이 서로 동일하도록 설정되는 것을 특징으로 하는 동적 스키마 질의처리 장치.
3. The method of claim 2,
Wherein the plurality of individual table schemas are set such that the attributes of the keys are equal to each other.
제2항에 있어서, 상기 조합 테이블 스키마는,
상기 복수개의 개별 테이블 스키마에서 공통되는 키 속성을 상기 조합 테이블 스키마의 키로 설정하고 상기 조합 테이블 스키마의 논키 속성은 상기 복수개의 개별 테이블 스키마에서 각각 적어도 하나의 논키 속성을 포함하는 것을 특징으로 하는 동적 스키마 질의처리 장치.
3. The method of claim 2,
Wherein a key attribute common to the plurality of individual table schemas is set as a key of the combination table schema, and a non-key attribute of the combination table schema includes at least one non-key attribute in each of the plurality of individual table schemas. Query processing device.
제1항에 있어서,
상기 질의에 사용될 데이터 그룹의 스키마는 상기 수신된 데이터 그룹 중에서 선택되는 복수의 데이터 그룹에 대응되는 복수의 개별 테이블 스키마인 것을 특징으로 하는 동적 스키마 질의처리 장치.
The method according to claim 1,
Wherein the schema of the data group to be used in the query is a plurality of individual table schemas corresponding to the plurality of data groups selected from the received data groups.
제5항에 있어서, 상기 질의 처리부는,
상기 조합 테이블 스키마에 대응되는 저장 영역을 설정하고, 상기 복수의 개별 테이블 스키마 중에서 제1 개별 테이블 스키마에 대응되는 데이터를 상기 저장 영역에 매핑시킨 후 상기 복수의 개별 테이블 스키마 중에서 상기 제1 개별 테이블 스키마를 제외한 나머지 개별 테이블 스키마에 대응되는 데이터를 순차적으로 상기 저장 영역에 매핑시켜 상기 조합 데이터를 생성하는 것을 특징으로 하는 동적 스키마 질의처리 장치.
6. The information processing apparatus according to claim 5,
A storage area corresponding to the combination table schema, mapping data corresponding to a first individual table schema among the plurality of individual table schemas to the storage area, and mapping the first individual table schema And generates the combined data by mapping the data corresponding to the individual table schema except for the storage area to the storage area sequentially.
제1항에 있어서, 상기 질의는,
상기 조합 데이터를 생성하고 상기 조합 데이터를 기반으로 결과 데이터를 생성하는 질의인 것을 특징으로 하는 동적 스키마 질의처리 장치.
The method of claim 1,
And generating the combined data and generating result data based on the combined data.
제1항에 있어서, 상기 동적 스키마 질의처리 장치는,
복수의 필드로 구성된 데이터를 수신하는 필드 데이터 수신부;
상기 수신된 데이터를 그룹별로 각각 저장하는 데이터 저장부;
처리할 데이터 그룹을 지정하고 해당 데이터 그룹의 복수의 필드 데이터에 대한 스키마 설정 요청을 포함하는 명령을 수신하는 스키마 입력부; 및
상기 명령에 따라서 상기 복수의 필드 데이터를 이용하여 상기 지정된 데이터 그룹에 대한 스키마를 설정하는 스키마 설정부
를 더 포함하는 것을 특징으로 하는 동적 스키마 질의처리 장치.
2. The dynamic schema query processing apparatus according to claim 1,
A field data receiving unit for receiving data composed of a plurality of fields;
A data storage unit for storing the received data for each group;
A schema input unit for specifying a data group to be processed and receiving an instruction including a schema setting request for a plurality of field data of the data group; And
A schema setting unit for setting a schema for the specified data group using the plurality of field data according to the instruction,
Wherein the dynamic schema query processing unit further comprises:
제8항에 있어서, 상기 명령은,
복수의 데이터 그룹에 대하여 데이터 그룹별로 각각 해당하는 개별 테이블 스키마가 설정되고 상기 개별 테이블 스키마에 각각 대응하여 데이터를 저장하되, 각 데이터 그룹은 서로 동일한 키 속성을 갖도록 스키마 설정을 요청하는 것을 포함하는 것을 특징으로 하는 동적 스키마 질의처리 장치.
9. The method of claim 8,
The individual table schema corresponding to each data group is set for each of the plurality of data groups, and data is stored corresponding to the individual table schema, and each of the data groups has a request for schema setting so as to have the same key attribute And a dynamic schema query processing unit.
컴퓨터에,
데이터 그룹별로 각각 해당하는 개별 테이블 스키마를 생성하고 상기 개별 테이블 스키마에 각각 대응하여 데이터를 저장하는 과정;
질의를 수신하는 과정;
상기 질의를 분석하여 상기 질의에 사용될 데이터 그룹의 스키마로부터 상기 질의에 대응되는 스키마를 조합하여 조합 테이블 스키마를 생성하는 과정; 및
상기 질의에 사용될 데이터 그룹의 스키마에 대응되는 상기 저장된 데이터를 이용하여 상기 조합 테이블 스키마에 대응하는 조합 데이터를 생성하여 상기 질의를 처리하는 과정
을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
On the computer,
Generating a corresponding individual table schema for each data group and storing data corresponding to the individual table schema;
Receiving a query;
Analyzing the query and generating a combination table schema by combining the schema corresponding to the query from the schema of the data group to be used in the query; And
Generating combination data corresponding to the combination table schema by using the stored data corresponding to the schema of the data group to be used in the query and processing the query
Readable recording medium having recorded thereon a program for executing the program.
제10항에 있어서, 상기 저장된 데이터는,
복수의 데이터 그룹에 대하여 데이터 그룹별로 각각 해당하는 개별 테이블 스키마가 설정되고 상기 개별 테이블 스키마에 각각 대응하여 데이터를 저장하되, 각 데이터 그룹은 서로 동일한 키 속성을 갖도록 스키마 설정을 요청하는 명령에 의해 생성된 것을 특징으로 하는 컴퓨터로 읽을 수 있는 기록매체.
11. The method of claim 10,
An individual table schema corresponding to each data group is set for each of a plurality of data groups and data is stored corresponding to the individual table schema, and each data group is generated by a command for requesting schema setting to have the same key attribute Readable recording medium.
KR1020140147366A 2014-10-28 2014-10-28 Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor KR102216886B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140147366A KR102216886B1 (en) 2014-10-28 2014-10-28 Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140147366A KR102216886B1 (en) 2014-10-28 2014-10-28 Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor

Publications (2)

Publication Number Publication Date
KR20160049753A true KR20160049753A (en) 2016-05-10
KR102216886B1 KR102216886B1 (en) 2021-02-17

Family

ID=56020894

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140147366A KR102216886B1 (en) 2014-10-28 2014-10-28 Apparatus for Processing Query by Using Dynamic Schema and Computer-Readable Recording Medium with Program therefor

Country Status (1)

Country Link
KR (1) KR102216886B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060071668A (en) * 2004-12-22 2006-06-27 한국전자통신연구원 Method of generating database schema to provide integrated view of dispersed information and integrating system of information
US20060218163A1 (en) * 2005-03-28 2006-09-28 Microsoft Corporation Rapid prototyping database
KR20090066036A (en) * 2007-12-18 2009-06-23 덕성여자대학교 산학협력단 Method for integrating heterogeneous databases using global view generation tool
KR20130110610A (en) * 2012-03-29 2013-10-10 주식회사 엘지씨엔에스 Method of constructing database, server performing the same and storage media storing the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060071668A (en) * 2004-12-22 2006-06-27 한국전자통신연구원 Method of generating database schema to provide integrated view of dispersed information and integrating system of information
US20060218163A1 (en) * 2005-03-28 2006-09-28 Microsoft Corporation Rapid prototyping database
KR20090066036A (en) * 2007-12-18 2009-06-23 덕성여자대학교 산학협력단 Method for integrating heterogeneous databases using global view generation tool
KR20130110610A (en) * 2012-03-29 2013-10-10 주식회사 엘지씨엔에스 Method of constructing database, server performing the same and storage media storing the same

Also Published As

Publication number Publication date
KR102216886B1 (en) 2021-02-17

Similar Documents

Publication Publication Date Title
JP7021228B2 (en) Blockchain-based data storage and query methods and devices
US11550769B2 (en) Data processing method, apparatus, and system
US10509804B2 (en) Method and apparatus for storing sparse graph data as multi-dimensional cluster
CN106980669B (en) A kind of storage of data, acquisition methods and device
US8996503B2 (en) Query plan optimization for prepared SQL statements
US8943059B2 (en) Systems and methods for merging source records in accordance with survivorship rules
CN107798038B (en) Data response method and data response equipment
US20150310047A1 (en) System and Method for Composing a Multidimensional Index Key in Data Blocks
US11288287B2 (en) Methods and apparatus to partition a database
JP5844895B2 (en) Distributed data search system, distributed data search method, and management computer
WO2021179722A1 (en) Sql statement parsing method and system, and computer device and storage medium
CA2957674A1 (en) Testing insecure computing environments using random data sets generated from characterizations of real data sets
WO2019205790A1 (en) Data operating method and device
CN110019111B (en) Data processing method, data processing device, storage medium and processor
CN107870949A (en) Data analysis job dependence relation generation method and system
US20140067853A1 (en) Data search method, information system, and recording medium storing data search program
CN105930354B (en) Storage model conversion method and device
US10691663B2 (en) Database table copy
US9129001B2 (en) Character data compression for reducing storage requirements in a database system
US9465658B1 (en) Task distribution over a heterogeneous environment through task and consumer categories
US20230385308A1 (en) Conversion and migration of key-value store to relational model
US20060230020A1 (en) Improving Efficiency in processing queries directed to static data sets
US10324933B2 (en) Technique for processing query in database management system
US20230153455A1 (en) Query-based database redaction
JP2011113103A (en) Multi-tenant type computer system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant