KR101918662B1 - Method and apparatus for the fast analysis of large-scale scientific data files - Google Patents

Method and apparatus for the fast analysis of large-scale scientific data files Download PDF

Info

Publication number
KR101918662B1
KR101918662B1 KR1020160129171A KR20160129171A KR101918662B1 KR 101918662 B1 KR101918662 B1 KR 101918662B1 KR 1020160129171 A KR1020160129171 A KR 1020160129171A KR 20160129171 A KR20160129171 A KR 20160129171A KR 101918662 B1 KR101918662 B1 KR 101918662B1
Authority
KR
South Korea
Prior art keywords
data files
scientific data
data
scientific
database
Prior art date
Application number
KR1020160129171A
Other languages
Korean (ko)
Other versions
KR20170076541A (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 KR1020160129171A priority Critical patent/KR101918662B1/en
Publication of KR20170076541A publication Critical patent/KR20170076541A/en
Application granted granted Critical
Publication of KR101918662B1 publication Critical patent/KR101918662B1/en

Links

Images

Classifications

    • G06F17/30592
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • 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/24532Query optimisation of parallel queries
    • 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
    • G06F17/30445
    • G06F17/30545

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 대용량 과학 데이터 즉시 분석 방법 및 장치에 관한 것이다. 본 발명은 다차원 배열로 모델링되는 과학 실험 데이터에 대한 데이터 적재 과정없이 바로 질의 처리가 가능한 방법에 관한 것이다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 파일 병합부, 상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 로컬 맵 (Local Map) 처리부, 상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 글로벌 맵 (Global Map) 처리부 및 상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 질의 처리부를 포함한다. The present invention relates to large scale scientific data instant analysis methods and apparatus. The present invention relates to a method capable of directly processing a query without data loading on scientific experiment data modeled as a multidimensional array. The mass scientific data instant analysis apparatus according to an embodiment of the present invention includes a file merge unit for merging scientific data files according to the number of nodes where an instance of a database is located, and the merged scientific data files are arranged in an array structure in the database A global map processing unit for rearranging the arranged scientific data files according to an original data loading manner of the database, and a query processing unit for performing a query processing on the relocated scientific data files do.

Description

대용량 과학 데이터 즉시 분석 방법 및 장치 {METHOD AND APPARATUS FOR THE FAST ANALYSIS OF LARGE-SCALE SCIENTIFIC DATA FILES}METHOD AND APPARATUS FOR THE FAST ANALYSIS OF LARGE-SCALE SCIENTIFIC DATA FILES FIELD OF THE INVENTION [0001]

본 발명은 대용량 과학 데이터 파일의 즉시 분석을 위한 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for instant analysis of large capacity scientific data files.

기존에 과학 실험 데이터는 해당 실험에 관한 정보를 제공하는 메타데이터 등과 함께 하나의 파일로 아카이빙되어 배포되고 있었고, 데이터 분석을 위해서는 해당 파일을 읽어 DB에 적재하여야 하나, 적재 과정에서 매우 오랜 시간이 소요되었다. 이에 따라, 실제 파일 취득 시점부터 DB를 이용한 질의 처리 완료까지 걸리는 전체 시간은 매우 길다는 문제점이 존재하였다. 나아가, 과학 데이터에 대한 분석 질의는 빈번하지 않으므로 적재 후 빈번하게 질의될 것을 가정하여 고안된 기존 DB는 적합하지 않았다. Previously, scientific experiment data was archived and distributed as one file along with metadata providing information about the experiment. For data analysis, the file should be read and loaded into the DB, but it takes a very long time to load . Accordingly, there is a problem that the total time from the actual file acquisition time to the completion of the query processing using the DB is very long. Furthermore, analysis queries on scientific data are not frequent, so existing DBs designed to assume frequent queries after loading are not suitable.

또한, 과학 데이터는 실세계의 다양한 현상들에 대한 관찰 또는 관측 결과를 담고 있으며, 다차원 배열 구조 (multi-dimensional array)를 갖는 경우가 빈번하다. 예를 들어, 인공위성 촬영 영상 정보는, 특정 위치에서 특정 시간에 촬영한 이미지 값을 기록한 정보이다. 즉 (위도, 경도, 시간)이라는 3차원 상의 한 셀(cell)에 대한 영상 정보를 RGB 값으로 담는 방식으로 영상 정보를 구성한다. 이러한 다차원 배열 구조는 2차원 테이블 형식으로 데이터를 저장하는 기존의 관계형 DBMS로는 효율적인 저장과 검색을 지원하기가 곤란하다. 이에 따라 다차원 배열을 효과적으로 저장하기 위한 다차원 배열 DBMS가 출현하였다. 한편, 과학데이터는 유지와 배포의 편의성을 위해 하나의 파일 포맷에 실험 데이터와 메타데이터를 모두 담는 방식으로 작성된다. In addition, scientific data contains observations or observations of various phenomena in the real world, and often has a multi-dimensional array. For example, the satellite photographed image information is information in which an image value photographed at a specific position at a specific time is recorded. That is, the image information for a cell on a three-dimensional (latitude, longitude, and time) basis is composed of RGB values. Such a multidimensional array structure is difficult to support efficient storage and retrieval with existing relational DBMSs that store data in a two-dimensional table format. As a result, a multi-dimensional array DBMS for efficiently storing multi-dimensional arrays has appeared. Scientific data, on the other hand, is created in a way that contains both experimental data and metadata in a single file format for ease of maintenance and distribution.

이러한 과학 데이터 파일의 다차원 배열 DBMS로의 적재는 많은 시간이 소요된다. 이에 따라, 실제 과학데이터 파일을 입수한 이후에 분석 질의 처리까지 걸리는 총 시간은 데이터 적재 소요시간으로 인해 많은 시간이 소요된다. 과학데이터는 그 특성상 생성된 데이터를 빈번하게 질의 처리하지 않는다. 이에 따라, 빈번히 질의 처리하지 않는 데이터를 DB로 적재하는 과정에 소요되는 시간 및 이에 대한 리소스의 낭비가 상당하다. Loading these scientific data files into a multidimensional array DBMS takes a lot of time. As a result, the total time taken to process analytical queries after obtaining the actual scientific data file takes a long time due to the data loading time. Scientific data does not frequently query the generated data due to its nature. Accordingly, a lot of time and resources are wasted in the process of loading data that is not frequently processed in the DB.

한편, 과학 데이터 파일 포맷으로 작성 및/또는 배포되는 과학 데이터는 파일 1개는 수백 GB에 이를 정도로 그 크기가 매우 크다. 이렇게 큰 파일을 하나의 시스템 상에서 파일 단위 API를 가지고 처리하는 경우, 단일 노드 상에서의 입력값/출력값 (I/O) 및 컴퓨팅 제한으로 인해 그 처리 성능이 확장 가능(scalable) 하지 않다. On the other hand, scientific data created and / or distributed in the scientific data file format is so large that one file costs hundreds of gigabytes. When processing such large files on a single system with per-file APIs, the processing performance is not scalable due to input / output (I / O) and computing constraints on a single node.

본 발명이 이루고자 하는 과제는, 대용량 과학 데이터 파일을 즉시 분석하는 방법을 제공하는 것이다. SUMMARY OF THE INVENTION The present invention provides a method for instantly analyzing large-scale scientific data files.

본 발명이 이루고자 하는 과제는, 대용량 과학 데이터 파일들에 대하여 데이터 적재 과정 없이 파일 상에서 직접 분석하고 질의를 처리할 수 있는 방법을 제공하는 것이다. It is an object of the present invention to provide a method of directly analyzing and processing a query on a large scale scientific data file without data loading process.

본 발명이 이루고자 하는 과제는, 대용량 다차원 과학 데이터 파일들에 대하여 데이터 적재 과정 없이 파일 상에서 직접 분석하고 질의를 분산 및/또는 병렬 처리할 수 있는 방법을 제공하는 것이다. Disclosure of Invention Technical Problem [8] The present invention provides a method for directly analyzing large-capacity multi-dimensional scientific data files on a file without performing data loading and distributing and / or parallelly processing queries.

본 발명이 이루고자 하는 과제는, 다차원 배열로 구성되는 대용량 과학 데이터 파일을 분산 환경에서 효율적으로 병렬 질의 처리하는 방법을 제공하는 것이다. SUMMARY OF THE INVENTION The present invention provides a method for efficient parallel query processing of a large scale scientific data file composed of a multi-dimensional array in a distributed environment.

본 발명이 이루고자 하는 과제는, 데이터 적재 과정을 생략하고 다차원 배열 데이터에 대한 질의어를 파일 상에서 직접 분산 병렬 처리할 수 있는 방법을 제공하는 것이다. SUMMARY OF THE INVENTION It is an object of the present invention to provide a method of omitting a data loading process and directly performing a distributed parallel processing of a query word on multidimensional array data on a file.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 방법은 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 단계, 상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 단계, 상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 단계 및/또는 상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 단계를 포함할 수 있다. According to an aspect of the present invention, there is provided a method for instantly analyzing large-scale scientific data, comprising merging scientific data files according to the number of nodes in which instances of a database are located, arranging the merged science data files in an array structure in the database, And relocating the placed scientific data files according to the original data loading method of the database and / or querying the relocated scientific data files.

바람직하게는, 상기 병합하는 단계는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고, 여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않을 수 있다. Advantageously, the merging step merges a plurality of scientific data files having the same structure by the number of nodes to merge them into larger sized scientific data files, wherein one of the merged science data files The size may not exceed the available memory size of the node.

바람직하게는, 상기 배치하는 단계는 모든 데이터가 아닌 질의의 직접 대상이 되는 과학 데이터만을 처리할 수 있도록 상기 병합된 과학 데이터 파일들을 필터링하는 단계, 상기 필터링된 과학 데이터 파일들을 리딩 처리하는 단계 및/또는 상기 리딩 처리된 과학 데이터 파일들을 상기 노드 단위로 메모리 상에 다차원 배열을 생성하는 단계를 포함할 수 있다. Advantageously, the step of arranging comprises the steps of filtering the merged scientific data files so as to process only the scientific data that is the direct object of the query, not all data, processing the filtered scientific data files, and / Or generating a multidimensional array on the memory in units of nodes on the read-processed scientific data files.

바람직하게는, 상기 다차원 배열을 생성하는 단계는 상기 리딩 처리된 과학 데이터 파일들의 청크 식별 정보 (chunk identification information) 및 상기 청크 내의 위치 정보를 이용하여 상기 리딩 처리된 과학 데이터 파일들을 상기 데이터베이스 내의 특정 청크로 배치할 수 있다. Advantageously, the step of generating the multidimensional array comprises: using the chunk identification information of the read-processed scientific data files and the location information in the chunks, As shown in FIG.

바람직하게는, 상기 재배치하는 단계는 상기 노드 각각이 가진 메모리 내 배치된 과학 데이터 파일들의 청크 (chunk) 중에서 상기 데이터베이스의 원래 데이터 적재 방식에 따라 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 다른 노드로 전달하는 단계, 상기 전달된 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 수신하는 단계 및/또는 상기 수신된 과학 데이터 파일들의 청크들을 이미 배치된 과학 데이터 파일들의 청크와 병합하는 단계를 포함할 수 있다. Advantageously, the step of relocating comprises: allocating chunks of scientific data files to be located at different nodes according to the original data loading scheme of the database among the chunks of the science data files located in the memory of each of the nodes, , ≪ / RTI > receiving chunks of scientific data files to be located at the other nodes that have passed and / or merging chunks of the received scientific data files with chunks of already placed science data files .

바람직하게는, 상기 대용량 과학 데이터 즉시 분석 방법은 상기 데이터베이스의 원래 데이터 적재 방식에 따라 상기 질의 처리된 과학 데이터 파일들을 저장하는 단계를 포함할 수 있다. Advantageously, the mass scientific data instant analysis method may include storing the queried scientific data files according to the original data loading scheme of the database.

본 발명의 다른 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치)는 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 파일 병합부, 상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 로컬 맵 (Local Map) 처리부, 상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 글로벌 맵 (Global Map) 처리부 및/또는 상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 질의 처리부를 포함할 수 있다.  A large scale scientific data instant analysis apparatus according to another embodiment of the present invention includes a file merge unit for merging scientific data files according to the number of nodes where an instance of a database is located, A global map processing unit for rearranging the arranged scientific data files according to an original data loading method of the database, and a global map processing unit for performing a query processing on the relocated scientific data files And a query processing unit.

바람직하게는, 상기 파일 병합부는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고, 여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않을 수 있다.  Preferably, the file merging unit merges a plurality of scientific data files having the same structure by the number of nodes, and merges the same into scientific data files of a larger size, wherein the size of one of the merged science data files May not exceed the available memory size of the node.

바람직하게는, 상기 로컬 맵 처리부는 모든 데이터가 아닌 질의의 직접 대상이 되는 과학 데이터만을 처리할 수 있도록 상기 병합된 과학 데이터 파일들을 필터링하는 필터링 처리부, 상기 필터링된 과학 데이터 파일들을 리딩 처리하는 리딩 처리부 및/또는 상기 리딩 처리된 과학 데이터 파일들을 상기 노드 단위로 메모리 상에 다차원 배열을 생성하는 빌딩 처리부를 포함할 수 있다.  Preferably, the local map processing unit includes a filtering processing unit for filtering the merged scientific data files so as to process only the scientific data that is a direct object of the inquiry, not all of the data, a reading processing unit for reading the filtered scientific data files, And a building processor for generating a multidimensional array on the memory in units of the nodes on the basis of the read-processed scientific data files.

바람직하게는, 상기 빌딩 처리부는 상기 리딩 처리된 과학 데이터 파일들의 청크 식별 정보 (chunk identification information) 및 상기 청크 내의 위치 정보를 이용하여 상기 리딩 처리된 과학 데이터 파일들을 상기 데이터베이스 내의 특정 청크로 배치할 수 있다.  Advantageously, the building processor may place the read-processed scientific data files into specific chunks in the database using chunk identification information of the read-processed scientific data files and location information within the chunks. have.

바람직하게는, 글로벌 맵 처리부는 상기 노드 각각이 가진 메모리 내 배치된 과학 데이터 파일들의 청크 (chunk) 중에서 상기 데이터베이스의 원래 데이터 적재 방식에 따라 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 다른 노드로 전달하는 스케터 (scatter) 처리부, 상기 전달된 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 수신하는 게더 (gather) 처리부 및/또는 상기 수신된 과학 데이터 파일들의 청크들을 이미 배치된 과학 데이터 파일들의 청크와 병합하는 병합 (merge) 처리부를 포함할 수 있다. Preferably, the global map processing unit allocates chunks of scientific data files to be located at different nodes to other nodes according to the original data loading method of the database among the chunks of the science data files disposed in the memory of each of the nodes A gather processing unit for receiving chunks of scientific data files to be located at the other nodes and / or a chunk of the received scientific data files, And a merge processing unit for merging with the chunk.

바람직하게는, 상기 대용량 과학 데이터 즉시 분석 장치는 상기 데이터베이스의 원래 데이터 적재 방식에 따라 상기 질의 처리된 과학 데이터 파일들을 저장하는 저장부를 포함할 수 있다.  Advantageously, the mass scientific data instant analysis device may comprise a storage for storing the queried scientific data files according to the original data loading scheme of the database.

본 발명에 따르면, 대용량 과학 데이터 파일을 즉시 분석하는 방법을 제공할 수 있는 효과가 있다. According to the present invention, it is possible to provide a method for instantly analyzing large-capacity scientific data files.

본 발명에 따르면, 대용량 과학 데이터 파일들에 대하여 데이터 적재 과정 없이 파일 상에서 직접 분석하고 질의를 처리할 수 있는 방법을 제공할 수 있는 효과가 있다. According to the present invention, it is possible to provide a method of directly analyzing and processing a query on a large scale scientific data file without data loading process.

본 발명에 따르면, 대용량 다차원 과학 데이터 파일들에 대하여 데이터 적재 과정 없이 파일 상에서 직접 분석하고 질의를 분산 및/또는 병렬 처리할 수 있는 방법을 제공할 수 있는 효과가 있다. According to the present invention, it is possible to provide a method of directly analyzing large-capacity multi-dimensional scientific data files on a file without performing a data loading process, and distributing and / or parallelly processing queries.

본 발명에 따르면, 다차원 배열로 구성되는 대용량 과학 데이터 파일을 분산 환경에서 효율적으로 병렬 질의 처리하는 방법을 제공할 수 있는 효과가 있다.According to the present invention, it is possible to provide a method of effectively performing parallel query processing in a large-scale scientific data file composed of a multi-dimensional array in a distributed environment.

본 발명에 따르면, 데이터 적재 과정을 생략하고 다차원 배열 데이터에 대한 질의어를 파일 상에서 직접 분산 병렬 처리할 수 있는 방법을 제공할 수 있는 효과가 있다. According to the present invention, it is possible to provide a method of omitting a data loading process and directly performing a distributed parallel processing of a query word on multidimensional array data on a file.

본 발명에 대해 더욱 이해하기 위해 포함되며 본 출원에 포함되고 그 일부를 구성하는 첨부된 도면은 본 발명의 원리를 설명하는 상세한 설명과 함께 본 발명의 실시예를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 방법을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 데이터 적재 과정을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 다차원 배열 DBMS에서 질의 처리 계획을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치의 데이터 처리 과정을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 In-situ 스캔 연산부의 구성을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 Local Map 처리부의 처리 과정을 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 Global Map 처리부의 처리 과정을 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 방법을 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치의 구성을 나타낸 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
1 is a diagram illustrating a method for instantly analyzing mass scientific data according to an embodiment of the present invention.
2 is a diagram illustrating a data loading process according to an embodiment of the present invention.
3 is a diagram illustrating a query processing plan in a multi-dimensional array DBMS according to an embodiment of the present invention.
FIG. 4 is a diagram illustrating a data processing process of the large scale scientific data instant analysis apparatus according to an embodiment of the present invention.
5 is a block diagram illustrating an in-situ scan operation unit according to an exemplary embodiment of the present invention.
6 is a flowchart illustrating a process of a local map processing unit according to an embodiment of the present invention.
7 is a flowchart illustrating a process of a Global Map processing unit according to an embodiment of the present invention.
FIG. 8 is a diagram illustrating a method for instantly analyzing mass scientific data according to an embodiment of the present invention.
FIG. 9 is a diagram showing a configuration of a large capacity scientific data instant analysis apparatus according to an embodiment of the present invention.

이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 실시예를 상세하게 설명하지만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다.  Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings and accompanying drawings, but the present invention is not limited to or limited by the embodiments.

본 명세서에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 함을 밝혀두고자 한다. As used herein, terms used in the present invention are selected from general terms that are widely used in the present invention while taking into account the functions of the present invention, but these may vary depending on the intention or custom of a person skilled in the art or the emergence of new technologies. In addition, in certain cases, there may be a term arbitrarily selected by the applicant, in which case the meaning thereof will be described in the description of the corresponding invention. Therefore, it is intended that the terminology used herein should be interpreted based on the meaning of the term rather than on the name of the term, and on the entire contents of the specification.

도 1은 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 방법을 나타낸 도면이다. 1 is a diagram illustrating a method for instantly analyzing mass scientific data according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 대용량 과학 데이터 파일들에 대한 데이터 적재 과정 없이 파일 상에서 직접 분석 및/또는 질의를 처리할 수 있다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 과학 데이터 파일의 내부 자료 구조와 DB에 적재 시 상황을 가정한 내부 구조 간 대응을 통한 질의를 처리할 수 있다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 다차원 배열 데이터에 대한 분산 환경에서 즉시 질의를 처리할 수 있다. The large scale scientific data instant analysis apparatus according to an embodiment of the present invention can directly analyze and / or query on a file without loading data on large scientific data files. The large capacity scientific data instant analysis apparatus according to an embodiment of the present invention can process a query through correspondence between an internal data structure of a scientific data file and an internal structure assuming a situation when loading the database. The mass scientific data instant analysis apparatus according to an embodiment of the present invention can process the query immediately in a distributed environment for multidimensional array data.

기존에, 과학 데이터는 해당 실험에 관한 정보를 제공하는 메타데이터 등과 함께 하나의 파일로 아카이빙되어 배포되고 있었고, 데이터 분석을 위해서는 해당 파일을 읽어 DB에 적재하여야 하나, 적재 과정에서 매우 오랜 시간이 소요되었다. 이에 따라, 실제 파일 취득 시점부터 DB를 이용한 질의 처리 완료까지 걸리는 전체 시간은 매우 길다는 문제점이 존재하였다. 나아가, 과학 데이터에 대한 분석 질의는 빈번하지 않으므로 적재 후 빈번하게 질의될 것을 가정하여 고안된 기존 DB는 적합하지 않았다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 상기 문제점을 해결할 수 있다. Previously, scientific data was archived and distributed as one file along with metadata providing information about the experiment. To analyze the data, the corresponding file should be read and loaded into the DB, but it takes a very long time to load . Accordingly, there is a problem that the total time from the actual file acquisition time to the completion of the query processing using the DB is very long. Furthermore, analysis queries on scientific data are not frequent, so existing DBs designed to assume frequent queries after loading are not suitable. The large capacity scientific data instant analysis apparatus according to an embodiment of the present invention can solve the above problems.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 대용량 과학 데이터 파일들에 대하여 데이터 적재 과정 없이 파일 상에서 직접 분석하고 질의를 처리할 수 있다. The large scale scientific data instant analysis apparatus according to an embodiment of the present invention can directly analyze and query large scale scientific data files on a file without loading data.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 다차원 배열로 모델링되는 과학 데이터를 DBMS로의 데이터 적재 과정 없이 파일 상에서 바로 다차원 배열에 대한 질의를 처리할 수 있다. 이를 위하여, 첫째, 대용량 과학 데이터 즉시 분석 장치는 과학 데이터 파일의 내부 자료 구조와 해당 파일을 DB에 적재하는 경우 DB에서의 내부 자료 구조를 일치시킬 수 있다. 둘째, 분산 환경에서의 DB 내부 자료 구조의 분할 배치에 따라 파일들을 분산 배치할 수 있다. 셋째, 질의 처리를 위한 파일 스캔 과정에서의 필터링을 통하여 인풋/아웃풋 성능을 향상시킬 수 있다. 넷째, 과학 데이터 파일에 대한 직접적인 질의 처리가 가능하기 위한 질의 처리 흐름 및 구조를 제공할 수 있다. The large scale scientific data instant analysis apparatus according to an embodiment of the present invention can process a query of a multidimensional array directly on a file without loading the data into a DBMS. First, the large scale scientific data instant analysis device can match the internal data structure of the scientific data file and the internal data structure in the DB when the corresponding file is loaded in the DB. Second, it is possible to distribute the files according to the partition arrangement of the DB internal data structure in the distributed environment. Third, input / output performance can be improved by filtering in the file scan process for query processing. Fourth, we can provide a query processing flow and structure to enable direct query processing on scientific data files.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 대용량 다차원 과학 데이터 파일들에 대하여 데이터 적재 과정 없이 파일 상에서 직접 분석하고 질의를 분산 및/또는 병렬 처리할 수 있다. The large capacity scientific data instant analysis apparatus according to an embodiment of the present invention can directly analyze large scale multidimensional scientific data files on a file without performing data loading and distribute and / or parallelize queries.

특히, 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 대용량 다차원 과학 데이터 파일의 내부 자료 구조와 이를 DB에 적재 시 상황을 가정한 DB 내부 자료 구조 간 대응을 제공함으로써 DB로의 데이터 적재 과정 없이 파일을 이용하여 곧바로 다차원 데이터에 대한 분산 질의 처리가 가능하도록 할 수 있다. 나아가, 이후에는 대응된 DB 내부 자료 구조를 바로 DB에 저장함으로써 이후의 반복적인 질의에 대해서도 효과적으로 대응할 수 있다.In particular, the large capacity scientific data instant analysis apparatus according to an embodiment of the present invention provides a correspondence between an internal data structure of a large-capacity multi-dimensional scientific data file and a DB internal data structure assuming a situation when loading the data file into a DB, The distributed query processing for multidimensional data can be performed immediately without using the file. Furthermore, the DB internal data structure is stored in the DB immediately afterwards, so that it is possible to effectively cope with subsequent iterative queries.

도 2는 본 발명의 일 실시예에 따른 데이터 적재 과정을 나타낸 도면이다. 2 is a diagram illustrating a data loading process according to an embodiment of the present invention.

본 발명의 일 실시예에 따르면, 과학 데이터는 실세계의 다양한 현상들에 대한 관찰 또는 관측 결과를 담고 있으며, 다차원 배열 구조 (multi-dimensional array)를 갖는 경우가 빈번하다. 예를 들어, 인공위성 촬영 영상 정보는, 특정 위치에서 특정 시간에 촬영한 이미지 값을 기록한 정보이다. 즉 (위도, 경도, 시간)이라는 3차원 상의 한 셀(cell)에 대한 영상 정보를 RGB 값으로 담는 방식으로 영상 정보를 구성한다. 이러한 다차원 배열 구조는 2차원 테이블 형식으로 데이터를 저장하는 기존의 관계형 DBMS로는 효율적인 저장과 검색을 지원하기가 곤란하다. 이에 따라 다차원 배열을 효과적으로 저장하기 위한 다차원 배열 DBMS가 출현하였다. 대표적인 예로는 SciDB가 존재한다. 대규모의 다차원 배열을 효과적으로 지원하기 위해 다차원 배열 DBMS에서는 배열을 여러 개의 청크 (chunk)들로 분할하고, 이들을 클러스터 내 각 노드들로 분산 관리함으로써 입력값 (인풋) 및 출력값 (아웃풋)의 병렬화를 통해 성능을 향상시킨다. 한편, 과학데이터는 유지와 배포의 편의성을 위해 하나의 파일 포맷에 실험 데이터와 메타데이터를 모두 담는 방식으로 작성된다. 대표적인 과학데이터 파일 포맷으로는 HDF5, NetCDF 등이 존재한다.  According to one embodiment of the present invention, scientific data contains observations or observation results of various phenomena of the real world, and often has a multi-dimensional array. For example, the satellite photographed image information is information in which an image value photographed at a specific position at a specific time is recorded. That is, the image information for a cell on a three-dimensional (latitude, longitude, and time) basis is composed of RGB values. Such a multidimensional array structure is difficult to support efficient storage and retrieval with existing relational DBMSs that store data in a two-dimensional table format. As a result, a multi-dimensional array DBMS for efficiently storing multi-dimensional arrays has appeared. A typical example is SciDB. In order to effectively support large-scale multidimensional arrays, a multidimensional array DBMS divides the array into chunks and distributes them to each node in the cluster to parallelize the input (input) and output (output) Improves performance. Scientific data, on the other hand, is created in a way that contains both experimental data and metadata in a single file format for ease of maintenance and distribution. Representative scientific data file formats include HDF5 and NetCDF.

이 도면을 참조하면, 과학데이터 파일을 다차원 배열 DBMS에 적재(loading)하기 위해서는 데이터 적재 과정을 거치게 된다. 데이터 적재 과정에서는 데이터를 읽고 다차원 배열 형태로 재구성하기 위해 여러 단계를 거치게 된다. 이 단계에는 다차원 배열의 1차원으로의 중간파일 작성, 1차원 데이터의 분할 (Distribution step), 분할된 1차원 데이터의 읽기 (Loading step), 1차원 데이터를 원래의 다차원으로 DB 내에서 재구성 (Redimension step) 등의 과정을 포함한다. Referring to this drawing, a data loading process is performed in order to load a scientific data file into a multi-dimensional array DBMS. In the data loading process, the data is read and the data is reconstructed in a multidimensional array. In this step, an intermediate file to a one-dimensional array of a multidimensional array, a distribution step of one-dimensional data, a loading step of divided one-dimensional data, a reconstruction of a one- step).

본 발명의 일 실시예에 따르면, 이러한 과학 데이터 파일의 다차원 배열 DBMS로의 적재는 위와 같은 여러 과정으로 인해 적재 완료 시까지 많은 시간이 소요된다. 이에 따라, 실제 과학데이터 파일을 입수한 이후에 분석 질의 처리까지 걸리는 총 시간은 데이터 적재 소요시간으로 인해 많은 시간이 소요된다. 과학데이터는 그 특성상 생성된 데이터를 빈번하게 질의 처리하지 않는다. 이에 따라, 빈번히 질의 처리하지 않는 데이터를 DB로 적재하는 과정에 소요되는 시간 및 이에 대한 리소스의 낭비가 상당하다. According to an embodiment of the present invention, loading of such a scientific data file into a multi-dimensional array DBMS takes a lot of time until completion of loading due to various processes as described above. As a result, the total time taken to process analytical queries after obtaining the actual scientific data file takes a long time due to the data loading time. Scientific data does not frequently query the generated data due to its nature. Accordingly, a lot of time and resources are wasted in the process of loading data that is not frequently processed in the DB.

본 발명의 일 실시예에 따르면, HDF, NetCDF와 같은 과학 데이터 파일 포맷은 과학 데이터에 대한 파일 단위 관리 및 배포를 지원한다. 하지만, 과학 데이터 파일 포맷은 파일 포맷 정의와 API 만을 제공할 뿐 DBMS 에서 제공하는 SQL 질의 언어와 같은 표준화된 질의 언어와 고급 처리 기능을 제공하지는 못한다. According to an embodiment of the present invention, a scientific data file format such as HDF, netCDF supports file unit management and distribution of scientific data. However, the scientific data file format does not provide a standardized query language and advanced processing functions such as the SQL query language provided by DBMS, but only file format definition and API.

본 발명의 일 실시예에 따르면, 과학 데이터 파일 포맷으로 작성 및/또는 배포되는 과학 데이터는 파일 1개는 수백 GB에 이를 정도로 그 크기가 매우 크다. 이렇게 큰 파일을 하나의 시스템 상에서 파일 단위 API를 가지고 처리하는 경우, 단일 노드 상에서의 입력값/출력값 (I/O) 및 컴퓨팅 제한으로 인해 그 처리 성능이 확장 가능(scalable) 하지 않다.According to one embodiment of the present invention, the scientific data created and / or distributed in the scientific data file format is so large that one file is several hundred gigabytes. When processing such large files on a single system with per-file APIs, the processing performance is not scalable due to input / output (I / O) and computing constraints on a single node.

도 3은 본 발명의 일 실시예에 따른 다차원 배열 DBMS에서 질의 처리 계획을 나타낸 도면이다. 3 is a diagram illustrating a query processing plan in a multi-dimensional array DBMS according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 External file 기술은 데이터 적재 과정 없이 관계형 SQL 질의 언어로 원시 파일(RAW)에 직접 질의할 수 있는 방법을 제공할 수 있다. 이 기술의 대표적 예로서, Oracle의 external table이 이에 해당할 수 있다. External table 방식은 DB 외부에 있는 CSV (comma-separated values) 형식 등의 데이터가 마치 DB에 있는 것처럼 보이게 하여 DB에서 파일 데이터를 사용할 수 있도록 하는 방법이다. The external file technique according to an embodiment of the present invention can provide a method of directly querying a RAW file in a relational SQL query language without a data loading process. A representative example of this technique is Oracle's external table. The external table method is a method of making data in a comma-separated values (CSV) format outside the DB appear to be in the DB so that the file data can be used in the DB.

하지만, external file 기술은 DML 이나 index, 통계 정보 등과 같은 고급화된 DB 기능들은 제공하지 못하고 원시 파일에 대하여 간단한 질의만을 수행할 수 있다. 나아가, 단일 노드 상에서 관계형 데이터 모델로 모델링되는 DB 테이블과 CSV 등의 파일간의 대응을 제공한다는 점에서 분산 병렬 환경에서 다차원 데이터 모델로 모델링되는 과학 데이터 파일의 고속 질의 처리에 관한 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치와는 차이가 있다. However, the external file technology does not provide advanced DB functions such as DML, index, statistical information, etc., and can perform a simple query on the source file. In addition, an embodiment of the present invention relating to high-speed query processing of a scientific data file modeled as a multidimensional data model in a distributed parallel environment in that it provides a correspondence between a DB table modeled as a relational data model on a single node and a file such as CSV This is different from the large-scale scientific data instantaneous analysis device according to

본 발명의 다른 일 실시예에 따른 In-Situ 질의 처리 기술은 원시 파일(raw file)을 대상으로 데이터베이스로의 적재 과정 없이 바로 질의 처리를 수행한다는 점에서 external file과 그 개념이 동일하다. 대신, in-situ 질의 처리 기술은 보다 나은 성능 향상을 위해 첫째, 파싱 비용을 줄이기 위한 인덱싱 둘째, Filtering Push Down을 통한 읽기 연산의 건너뛰기 셋째, 다중 쓰레드 (multiple thread)를 이용한 데이터의 병렬 처리 및 DB로의 점진적인 적재 등의 기술을 추가로 지원할 수 있다. In-Situ 질의 처리 기술의 대표적 예로서, NoDB, SCANRAW 등이 존재한다. 하지만, In-Situ 질의 처리 기술은 단일 노드 상에서 2D 테이블 형식의 관계형 데이터를 대상으로 한다는 점에서, 분산 병렬 환경에서 다차원 데이터 모델로 모델링되는 과학 데이터 파일의 고속 질의 처리에 관한 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치와는 차이가 있다. The in-situ query processing technique according to another embodiment of the present invention is the same as the external file in that the query processing is performed without loading the database to a raw file. Instead, in-situ query processing techniques are used to improve performance: first, indexing to reduce parsing costs; second, skip read operations through filtering pushdown; third, parallel processing of data using multiple threads; And incremental loading into the DB. As a representative example of the in-situ query processing technique, there are NoDB, SCANRAW, and the like. However, since the In-Situ query processing technology targets relational data of a 2D table format on a single node, it is an embodiment of the present invention relating to a high-speed query processing of a scientific data file modeled as a multidimensional data model in a distributed parallel environment This is different from the large-scale scientific data instantaneous analysis device according to

본 발명의 일 실시예에 따른 SDS/Q는 과학 데이터 포맷 중 하나인 HDF5 데이터에 적합하게 in-situ 분석을 적용시킨 분산 병렬 시스템이다. 이 시스템은 대용량 메모리가 탑재된 병렬 파일 시스템을 가진 슈퍼 컴퓨터 환경에서 구현 되었다. SDS/Q는 대용량 HDF5 파일을 병렬 파일 시스템에 위치시키고 파일 내 데이터에 대한 비트맵 인덱스를 활용, 인 메모리 데이터 처리를 수행하는 방식으로 성능 향상을 꾀하였다. 이 시스템은 분산 병렬 구조로 과학실험 데이터 파일에 대한 즉시 질의 처리를 지원한다는 점에서 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치와 유사한 점이 있지만, 다차원 배열에 대한 모델링과 질의 언어를 제공하지 않는다는 점에서 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치와 차이가 있다.  SDS / Q according to an embodiment of the present invention is a distributed parallel system in which in-situ analysis is applied to HDF5 data, which is one of scientific data formats. The system was implemented in a supercomputer environment with a parallel file system with large memory. SDS / Q improves performance by placing large-capacity HDF5 files in a parallel file system and using in-memory indexes for in-file data to perform in-memory data processing. This system is similar to the large capacity scientific data instant analysis apparatus according to an embodiment of the present invention in that it supports immediate query processing on scientific experiment data files in a distributed parallel structure, but provides a modeling and query language for multidimensional arrays It differs from the large capacity scientific data instant analysis apparatus according to the embodiment of the present invention.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 다차원 배열로 모델링되는 대용량 과학 데이터 파일에 대하여 DB로의 적재 과정 없이 파일만을 이용하여 즉시 질의 처리가 가능하도록 함을 목적으로 한다. 특히, 다차원 배열 모델로 모델링되어 하나의 파일로서 아카이빙되는 과학 데이터에 대하여 표준화된 다차원 배열 질의 언어를 제공하고, 해당 언어로 작성된 분석 질의의 분산 병렬 처리를 지원함으로써 DB로의 데이터 적재 과정 없이도 파일 단위의 표준화된 고속 분석 질의 처리가 가능하도록 함을 목적으로 한다. The large scale scientific data instant analysis apparatus according to an embodiment of the present invention aims at enabling immediate query processing using large scale scientific data files modeled in a multidimensional array without using a DB loading process. In particular, it provides a standardized multidimensional array query language for scientific data that is modeled as a multi-dimensional array model and archived as one file, and supports distributed parallel processing of analysis queries written in the corresponding language, And to enable standardized high-speed analysis query processing.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 다차원 배열로 구성되는 대용량 과학 데이터 파일을 분산 환경에서 효율적으로 병렬 질의 처리하는 방법을 제공할 수 있다. 또한, 데이터 적재 과정을 생략하고 다차원 배열 데이터에 대한 질의어를 파일 상에서 직접 분산 병렬 처리할 수 있다. The large scale scientific data instant analysis apparatus according to an embodiment of the present invention can provide a method of efficiently processing a parallel scientific query in a distributed environment with large capacity scientific data files constituted by a multidimensional array. In addition, the data loading process can be omitted, and the query words for the multidimensional array data can be directly subjected to distributed parallel processing on the file.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치에 따르면, 기존의 모든 다차원 배열 질의 연산들을 데이터 적재 과정 없이 그대로 적용할 수 있으며, 기존 다차원 배열 DBMS의 내부 구조로 대응된 파일 내 데이터들이 대응 후 바로 DB로 저장 및/또는 관리될 수 있다. According to the large capacity scientific data instant analysis apparatus according to an embodiment of the present invention, all the existing multi-dimensional array query operations can be applied without data loading process, and the data in the corresponding file is corresponded to the internal structure of the existing multi- And then stored and / or managed as a DB.

실제 과학 데이터 파일들을 대상으로 실험한 결과, 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 기존 분산 다차원 DBMS의 데이터 적재 후 질의 처리 (load-to-query)하는 방식에 비해, 최대 75배 이상의 성능 향상을 확인하였으며, 과학 데이터 파일의 크기가 더 커질수록 이 성능 향상의 정도는 커질 수 있다는 것을 확인하였다. As a result of experimenting with actual scientific data files, the large-capacity scientific data instant analysis apparatus according to an embodiment of the present invention has a maximum of 75 (n = 75) compared with a load-to- We have confirmed that the performance improvement is more than double, and that the larger the size of the scientific data file, the larger the improvement in performance.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 다차원 배열 모델을 저장하는 분산 DBMS인 SciDB를 기준으로 데이터 적재와 질의 처리 부분을 변경하는 방식으로 구성된다. 이는 기존 다차원 배열 모델을 저장 단위로 하는 다른 DBMS나 정보 시스템에도 통용될 수 있는 설계 방식이다.  The large scale scientific data instant analysis apparatus according to an embodiment of the present invention is configured to change data loading and query processing parts based on SciDB, which is a distributed DBMS storing a multidimensional array model. This is a design method that can be applied to other DBMSs and information systems that use existing multidimensional array models as storage units.

이 도면은 기존의 다차원 배열 DBMS에서 질의 처리 계획 및 본 발명의 일 실시예에 따른 질의 처리 계획을 나타낸다. 기존 DBMS에서의 원 질의 처리 계획(query processing plan)에서는 데이터베이스에 저장된 배열 자료 구조를 스캔 (scan)해서 부분 배열을 만들어 처리하는 방식으로 질의 처리가 수행된다. 반면에, 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 해당 스캔 (scan) 연산자를 in-situ scan 연산자로 변경함으로써, 질의 처리 시 DB 내 배열 자료 구조가 아닌 HDF 등의 과학 데이터 파일로부터 직접 스캔하도록 질의 처리 과정을 변경할 수 있다. This drawing shows a query processing plan in a conventional multi-dimensional array DBMS and a query processing plan according to an embodiment of the present invention. In the original query processing plan in the existing DBMS, the query processing is performed by scanning the array data structure stored in the database and creating a partial array. On the other hand, the large-capacity scientific data instant analysis apparatus according to an embodiment of the present invention changes the corresponding scan operator to an in-situ scan operator so that a scientific data file such as an HDF It is possible to change the query process so that the query is directly scanned.

도 4는 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치의 데이터 처리 과정을 나타낸 도면이다. FIG. 4 is a diagram illustrating a data processing process of the large scale scientific data instant analysis apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 과학 데이터 파일로부터 직접 데이터를 스캔하면서 즉시 질의 처리를 수행하기 위해, HDF 병합부 (HDP merger) 및/또는 In-situ 스캔 연산부를 포함할 수 있다. 파일 병합부 (HDP merger)는 HDF 과학 데이터 파일들을 DB 인스턴스가 위치한 노드들의 개수만큼의 큰 파일들로 병합할 수 있다. 본 발명의 일 실시예에 따르면 파일 병합부는 HDF 파일 포맷 외의 다른 포맷의 데이터 파일들도 처리할 수 있다. In-situ 스캔 연산부는 In-situ 스캔 연산자를 이용하여 HDF 파일들로부터 질의 수행 시 바로 파일을 스캔할 수 있다. 본 발명의 일 실시예에 따른 In-situ 스캔 연산부는 local map 처리부, global map 처리부 및/또는 질의 처리부를 포함할 수 있다. local map 처리부는 입력이 되는 HDF 파일들로부터 각 노드 단위로 메모리 상에 다차원 배열을 구축할 수 있다. global map 처리부는 local map 처리부에서 작성된 각 노드 단위의 다차원 배열 구조를 논리적으로 하나의 큰 배열로서 구성할 수 있다. 질의 처리부는 subarray와 같은 질의 처리를 수행하고 최종적인 결과 배열을 출력할 수 있다. The mass scientific data instant analysis apparatus according to an embodiment of the present invention includes an HDP merger and / or an in-situ scan operation unit to perform immediate query processing while directly scanning data from a scientific data file . The file merge unit (HDP merger) can merge HDF science data files into as many files as the number of nodes where the DB instance is located. According to an embodiment of the present invention, the file merge unit may process data files in formats other than the HDF file format. The in-situ scan operation unit can scan a file directly from the HDF files using an in-situ scan operator. The in-situ scan operation unit according to an exemplary embodiment of the present invention may include a local map processing unit, a global map processing unit, and / or a query processing unit. The local map processor can construct a multidimensional array on memory in units of nodes from the input HDF files. The global map processing unit can construct a multi-dimensional array structure of each node unit created in the local map processing unit logically as one large array. The query processor can perform query processing such as subarray and output the final result array.

이 도면은 HDF 형식의 과학 데이터 파일에 대하여 즉시 질의 처리를 가능하게 하는 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치의 데이터 처리 과정을 나타낸다. This drawing shows a data processing process of the large capacity scientific data instant analysis apparatus according to an embodiment of the present invention which enables immediate query processing on scientific data files in HDF format.

파일 병합부 (HDF merger)는 다수의 과학 기술 데이터 포맷인 HDF를 SciDB instance 개수만큼 병합할 수 있다. 병합된 RAW 파일들은 DB 인스턴스들로 분산 (distribution) 저장될 수 있다. 이후, 사용자가 과학 기술 데이터를 분석하기 위한 SciDB에 질의를 제출하면 RAW파일을 읽기 위해서 In-Situ 스캔 연산부가 스캔을 수행할 수 있다. In-situ 스캔 연산부에 대한 상세한 내용은 후술한다. The file merger (HDF merger) can merge HDF, which is a number of scientific data formats, by the number of SciDB instances. The merged RAW files can be distributed to DB Instances. Subsequently, when a user submits a query to SciDB to analyze the scientific data, an in-situ scan operation can be performed to read the RAW file. Details of the in-situ scan operation unit will be described later.

도 5는 본 발명의 일 실시예에 따른 In-situ 스캔 연산부의 구성을 나타낸 도면이다. 5 is a block diagram illustrating an in-situ scan operation unit according to an exemplary embodiment of the present invention.

본 발명의 일 실시예에 따르면, 분산 다차원 배열 DBMS에서는 하나의 커다란 다차원 배열 구조를 청크 (chunk) 단위로 수십~수천 개의 청크들로 분할하고 이를 각 노드마다 분산 배치시킬 수 있다. 이 때, 청크들의 배치는 해싱 (hashing)을 통하여 수행될 수 있다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 파일과 다차원 배열 배치 구조를 대응시키기 위하여, 두 단계의 매핑 과정인 local map 및 global map을 수행할 수 있다. According to one embodiment of the present invention, in a distributed multidimensional array DBMS, one large multidimensional array structure can be divided into several tens to thousands of chunks in units of chunks and can be distributedly arranged for each node. At this time, the arrangement of the chunks can be performed through hashing. The large capacity scientific data instant analysis apparatus according to an embodiment of the present invention can perform local mapping and global mapping, which are two-step mapping processes, in order to associate a file with a multi-dimensional array arrangement structure.

본 발명의 일 실시예에 따른 In-situ 스캔 연산부는 Local Map 처리부 및/또는 Global map 처리부를 포함할 수 있다. 본 발명의 일 실시예에 따른 Local Map 처리부는 필터링 (Filtering) 처리부, 읽기 (READ) 처리부 및/또는 빌딩 (building) 처리부를 포함할 수 있다. 본 발명의 일 실시예에 따른 Global map 처리부는 스케터 (scatter) 처리부, 게더 (gather) 처리부 및/또는 병합 (merge) 처리부를 포함할 수 있다. 상술한 각 구성에 대한 상세한 설명은 이후 도면에서 후술한다.  The in-situ scan operation unit according to an exemplary embodiment of the present invention may include a local map processing unit and / or a global map processing unit. The Local Map processing unit according to an embodiment of the present invention may include a filtering processing unit, a READ processing unit, and / or a building processing unit. The global map processing unit according to an embodiment of the present invention may include a scatter processing unit, a gather processing unit, and / or a merge processing unit. A detailed description of each of the above-described configurations will be given later in the drawings.

도 6은 본 발명의 일 실시예에 따른 Local Map 처리부의 처리 과정을 나타낸 도면이다. 6 is a flowchart illustrating a process of a local map processing unit according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 Local Map 처리부는 HDF 파일을 읽어서 부분적인 메모리상의 배열 구조를 생성할 수 있다. 이 도면을 참조하면, 본 발명의 일 실시예에 따른 Local Map 처리부는 필터링 (Filtering) 처리부, 읽기 (READ) 처리부 및/또는 빌딩 (building) 처리부를 포함할 수 있다. The local map processing unit according to an embodiment of the present invention can read an HDF file and create a partial memory array structure. Referring to this figure, a local map processing unit according to an embodiment of the present invention may include a filtering processing unit, a read processing unit, and / or a building processing unit.

본 발명의 일 실시예에 따르면, Array 데이터를 분석할 때 자주 사용하는 질의 유형들 중에 한 가지는 전체 array 데이터 중 일부분의 데이터를 검색하여 분석 하는 것이다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 원시 과학 데이터 파일에서 질의에 필요한 해당 데이터만 읽고 분석할 수 있도록, 질의에 필요한 데이터를 결정하기 위해서 Local Map의 필터링 (filtering) 과정을 수행할 수 있다. According to one embodiment of the present invention, one of the frequently used query types when analyzing Array data is to search and analyze data of a part of the entire array data. The large scale scientific data instant analysis apparatus according to an embodiment of the present invention performs a filtering process of a local map to determine data necessary for a query so that only the corresponding data required for a query can be read and analyzed in a raw science data file can do.

필터링 처리부는 array의 부분적인 데이터를 검색하는 filtering 연산자를 찾기 위해 다차원 배열 DBMS가 생성한 질의 계획을 탐색할 수 있다. 이를 탐색하여 모든 데이터가 아닌 선택적인 영역만을 질의 처리할 경우, 입력단계에서부터 선택되지 않은 영역은 상위 연산자들에게 전달되지 못하도록 필터링 정보를 리딩 처리부로 전달할 수 있다. The filtering processor can search the query plan generated by the multidimensional array DBMS to find the filtering operator that retrieves the partial data of the array. When querying only an optional area other than all data, the filtering section may transmit the filtering information to the leading processing section so that the area not selected from the input step is not transmitted to the upper operators.

본 발명의 일 실시예에 따르면, 리딩 처리부 및 빌딩 처리부는 in-situ 분석 방식의 가장 기본이 되는 구성이다. According to one embodiment of the present invention, the leading processing unit and the building processing unit are the most basic configuration of the in-situ analysis method.

리딩 처리부는 RAW 파일에서 과학 기술 데이터를 읽어 올 수 있다. 이 때, 필터링 처리부로부터 전달 받은 필터링 (filtering) 정보를 이용하여 필요한 데이터만 읽을 수 있다. 본 발명의 일 실시예에 따르면, 과학 데이터를 읽는 단위의 크기는 DBMS에서 사용되는 배열 청크(array chunk)의 크기일 수 있다. 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치는 데이터를 읽는 단위가 청크 크기가 아니고 데이터를 순차적으로 읽게 되는 경우 데이터를 정렬하는 구성 (데이터 정렬부)을 더 포함할 수 있다. 본 발명의 일 실시예에 따르면, 분산 다차원 배열 DBMS에서는 다차원 배열 데이터를 청크 단위로 나누어서 저장하고 각 청크들의 내부에는 배열 스키마에 정의된 차원의 순서대로 데이터가 저장될 수 있다. 그렇기 때문에, 본 발명의 일 실시예에 따른 데이터 정렬부는 청크 단위로 읽지 않고 SciDB의 array로 매핑 하게 되는 경우, 추후 SciDB의 데이터를 저장하는 정책에 맞게 변경할 수 있도록 데이터를 청크들을 구별하는 Id와 chunk내 position을 기반으로 정렬을 수행할 수 있다. The leading processing unit can read the scientific data from the RAW file. At this time, only necessary data can be read by using the filtering information received from the filtering processing unit. According to an embodiment of the present invention, the size of a unit for reading scientific data may be the size of an array chunk used in a DBMS. The mass scientific data instant analysis apparatus according to an embodiment of the present invention may further include a configuration (data arrangement unit) for arranging data when the unit for reading data is not a chunk size but sequentially reading the data. According to an embodiment of the present invention, in a distributed multidimensional array DBMS, multidimensional array data is divided into chunks and stored, and data is stored in order of dimensions defined in the array schema in each chunk. Therefore, if the data sorting unit according to an embodiment of the present invention does not read in units of chunks but maps to arrays of SciDBs, it is possible to change data according to a policy for storing SciDB data, You can perform sorting based on my position.

빌딩 처리부는 리딩 처리부에서 읽은 과학 데이터의 청크를 DB내 배열 구조로 매핑하는 역할을 수행할 수 있다. 본 발명의 일 실시예에 따른 빌딩 처리부는 이 매핑을 위해서 읽은 데이터에 대한 좌표를 이용하여 chunk Id와 chunk 내의 위치 정보인 position을 구할 수 있다. 그리고, 읽은 과학 데이터, position 및/또는 chunk Id를 이용하여 실제 DB내 배열 자료 구조의 특정 청크로 매핑을 수행할 수 있다. 본 발명의 일 실시예에 따른 Local Map 처리부의 리딩 및 빌딩 처리 과정은 질의에 필요한 데이터를 모두 읽고 SciDB array로 매핑을 완료한 후에 끝나게 된다. The building processing unit can perform a role of mapping chunks of scientific data read by the leading processing unit into an array structure in the DB. The building processor according to an embodiment of the present invention can obtain the chunk Id and the position information in the chunk using the coordinates of the data read for the mapping. Then, mapping can be performed to a specific chunk of the array data structure in the actual DB using the read scientific data, position and / or chunk Id. The reading and building process of the Local Map processor according to an embodiment of the present invention ends after completing the mapping of the data required for the query to the SciDB array.

도 7은 본 발명의 일 실시예에 따른 Global Map 처리부의 처리 과정을 나타낸 도면이다. 7 is a flowchart illustrating a process of a Global Map processing unit according to an embodiment of the present invention.

본 발명의 일 실시예에 따르면, Local Map 과정을 통해 각 DB 인스턴스들이 생성한 로컬 배열 청크들을 원래 다차원 배열 DBMS에서 데이터 적재를 수행하였을 때 생성 및/또는 위치시켜야 할 배열 배치 정책에 따라 재배치시키기 위해 Global Map 과정이 수행될 수 있다.  According to an embodiment of the present invention, local arrangement chunks generated by DB Instances through a Local Map process are rearranged according to an array placement policy to be created and / or located when data is loaded in an original multi-dimensional array DBMS Global Map process can be performed.

이 도면은 Global Map 처리부가 각 노드의 DB 인스턴스들이 생성한 로컬 배열들을 재배치하는 과정을 나타낸다. 본 발명의 일 실시예에 따른 Global map 처리부는 스케터 (scatter) 처리부, 게더 (gather) 처리부 및/또는 병합 (merge) 처리부를 포함할 수 있다. This drawing shows a process in which the Global Map processing unit rearranges local arrays created by DB instances of respective nodes. The global map processing unit according to an embodiment of the present invention may include a scatter processing unit, a gather processing unit, and / or a merge processing unit.

본 발명의 일 실시예에 따르면, Local Map 과정 이후에 각 instance 상에서 만들어진 배열들은 네트워크를 통해 원래의 배열 청크 파티셔닝 (chunk partitioning) 정책과 일치하는 DB 인스턴스들에게 전송될 수 있다. 이 전송 과정은 Global Map의 스케터 (Scatter) 처리부 및/또는 게더 (Gather) 처리부에 의해 수행될 수 있다. 스케터 처리부는 데이터를 다른 instance들에게 전송할 수 있다. 게더 처리부는 전송된 데이터를 수신할 수 있다. 병합 처리부는 수신한 데이터가 동일한 배열 청크에 속하는 경우, 수신한 데이터를 하나의 배열 청크로 병합할 수 있다. 본 발명의 일 실시예에 따르면, 병합된 결과물인 SciDB 배열은 in-situ 스캔 연산부의 질의 처리 계획상의 상위 연산자에게 전달될 수 있다. According to an embodiment of the present invention, arrays created on each instance after the Local Map process can be transmitted to DB Instances matching the original array chunk partitioning policy through the network. This transmission process may be performed by a Scatter processing unit and / or a Gather processing unit of the Global Map. The skater processing part can transmit data to other instances. The receiver processing unit can receive the transmitted data. When the received data belongs to the same array chunk, the merge processing unit can merge the received data into one array chunk. According to an embodiment of the present invention, the merged result SciDB array can be transmitted to an upper operator on the query processing plan of the in-situ scan operation unit.

도 8은 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 방법을 나타낸 도면이다. FIG. 8 is a diagram illustrating a method for instantly analyzing mass scientific data according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 방법은 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 단계 (8010), 상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 단계 (8020), 상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 단계 (8030) 및/또는 상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 단계 (8040)를 포함할 수 있다. The mass scientific data instant analysis method according to an embodiment of the present invention includes merging scientific data files according to the number of nodes where an instance of a database is located (step 8010), arranging the merged science data files in an array structure in the database A step 8020 of relocating the placed scientific data files according to the original data loading method of the database, and / or a querying step 8040 of querying the relocated scientific data files .

본 발명의 다른 일 실시예에 따르면, 상기 병합하는 단계는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고, 여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않을 수 있다.According to another embodiment of the present invention, the merging step merges a plurality of scientific data files having the same structure by the number of nodes, and merges the same into scientific data files of a larger size, The size of one of the data files may not exceed the available memory size of the node.

본 발명의 다른 일 실시예에 따르면, 상기 배치하는 단계는 모든 데이터가 아닌 질의의 직접 대상이 되는 과학 데이터만을 처리할 수 있도록 상기 병합된 과학 데이터 파일들을 필터링하는 단계, 상기 필터링된 과학 데이터 파일들을 리딩 처리하는 단계 및/또는 상기 리딩 처리된 과학 데이터 파일들을 상기 노드 단위로 메모리 상에 다차원 배열을 생성하는 단계를 포함할 수 있다. According to another embodiment of the present invention, the step of arranging includes filtering the merged scientific data files so as to process only scientific data that is a direct object of the query, not all of the data, And / or generating a multidimensional array on the memory on a per-node basis with the read-processed scientific data files.

본 발명의 다른 일 실시예에 따르면, 상기 다차원 배열을 생성하는 단계는 상기 리딩 처리된 과학 데이터 파일들의 청크 식별 정보 (chunk identification information) 및 상기 청크 내의 위치 정보를 이용하여 상기 리딩 처리된 과학 데이터 파일들을 상기 데이터베이스 내의 특정 청크로 배치할 수 있다. According to another embodiment of the present invention, the step of generating the multidimensional array may include the step of generating the multidimensional array by using the chunk identification information of the read scientific data files and the location information in the chunks, To specific chunks in the database.

본 발명의 다른 일 실시예에 따르면, 상기 재배치하는 단계는 상기 노드 각각이 가진 메모리 내 배치된 과학 데이터 파일들의 청크 (chunk) 중에서 상기 데이터베이스의 원래 데이터 적재 방식에 따라 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 다른 노드로 전달하는 단계, 상기 전달된 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 수신하는 단계 및/또는 상기 수신된 과학 데이터 파일들의 청크들을 이미 배치된 과학 데이터 파일들의 청크와 병합하는 단계를 포함할 수 있다.According to another embodiment of the present invention, the rearranging step may include rearranging the scientific data to be located in another node according to the original data loading method of the database among the chunks of the scientific data files disposed in the memory of each of the nodes, Transferring the chunks of the received scientific data files to another node, receiving chunks of the scientific data files to be located at the other node, and / or transmitting chunks of the received scientific data files to the chunks of already placed scientific data files And merging.

본 발명의 다른 일 실시예에 따르면, 상기 대용량 과학 데이터 즉시 분석 방법은 상기 데이터베이스의 원래 데이터 적재 방식에 따라 상기 질의 처리된 과학 데이터 파일들을 저장하는 단계를 포함할 수 있다. According to another embodiment of the present invention, the mass scientific data immediate analysis method may include storing the queried scientific data files according to an original data loading method of the database.

도 9는 본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치의 구성을 나타낸 도면이다. FIG. 9 is a diagram showing a configuration of a large capacity scientific data instant analysis apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 대용량 과학 데이터 즉시 분석 장치 (9050)는 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 파일 병합부 (9010), 상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 로컬 맵 (Local Map) 처리부 (9020), 상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 글로벌 맵 (Global Map) 처리부 (9030) 및/또는 상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 질의 처리부 (9040)를 포함할 수 있다. 파일 병합부는 대용량 과학 데이터 파일들을 노드 수에 맞추어 더 큰 파일들로 변합할 수 있다. 로컬 맵 처리부는 병합된 각 과학 데이터 파일을 읽어서 로컬 맵 과정을 통해 각 노드별로 해당 과학 데이터 파일에 대하여 메모리 상에 다차원 배열을 구성할 수 있다. 글로벌 맵 처리부는 로컬 맵 처리부를 통해 생성된 각 노드들의 다차원 배열들을 대상으로 DBMS에서 데이터 적재 시 본래 배열 청크 분할 방식에 따라 분산 배치될 배열 청크들로 대응시킬 수 있다. 질의 처리부는 글로벌 맵 처리부를 통해 기존 데이터 적재 과정 시와 동일하게 배치된 배열 청크들을 대상으로 질의를 처리할 수 있다. The large capacity scientific data instant analysis apparatus 9050 according to an embodiment of the present invention includes a file merge unit 9010 for merging scientific data files according to the number of nodes where instances of a database are located, A global map processing unit 9030 for rearranging the arranged scientific data files according to the original data loading method of the database and / And a query processing unit 9040 for querying the submitted scientific data files. The file merger can convert large-scale scientific data files into larger files according to the number of nodes. The local map processing unit reads each merged science data file and constructs a multidimensional array on the memory for each scientific data file for each node through a local map process. The global map processing unit can map the multidimensional arrays of the nodes generated through the local map processing unit to the array chunks to be distributed in accordance with the original array chunk partitioning method when the data is loaded in the DBMS. The query processing unit can process the query through the global map processing unit on the array chunks arranged in the same manner as in the existing data loading process.

본 발명의 다른 일 실시예에 따르면, 상기 파일 병합부는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고, 여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않을 수 있다. 파일 병합부는 복수 개의 동일 구조를 가지는 과학 실험 데이터 파일들을 클러스터를 구성하는 컴퓨팅 노드의 개수만큼 병합하여 더 큰 크기의 데이터 파일들로 출력할 수 있다. According to another embodiment of the present invention, the file merge unit merges a plurality of scientific data files having the same structure by the number of nodes, and merges the same into scientific data files of a larger size, The size of one of the files may not exceed the available memory size of the node. The file merging unit may merge the scientific experiment data files having a plurality of the same structure by the number of the computing nodes constituting the cluster to output data files of a larger size.

본 발명의 다른 일 실시예에 따르면, 상기 로컬 맵 처리부는 모든 데이터가 아닌 질의의 직접 대상이 되는 과학 데이터만을 처리할 수 있도록 상기 병합된 과학 데이터 파일들을 필터링하는 필터링 처리부, 상기 필터링된 과학 데이터 파일들을 리딩 처리하는 리딩 처리부 및/또는 상기 리딩 처리된 과학 데이터 파일들을 상기 노드 단위로 메모리 상에 다차원 배열을 생성하는 빌딩 처리부를 포함할 수 있다. 로컬 맵 처리부는 클러스터 내 각 컴퓨팅 노드에서만 동작할 수 있다. 로컬 맵 처리부는 파일 병합부로부터 획득된 병합된 과학 실험 데이터 파일에 대하여, 질의의 직접 대상이 되는 부분 배열의 범위 값과 배열 내 셀 값만을 선택할 수 있도록 해당 정보를 생성하는 필터링 처리부를 포함할 수 있다. 로컬 맵 처리부는 필터링 단계를 통해 질의의 직접 대상 데이터만을 파일로부터 읽어 올리는 리딩 처리부를 포함할 수 있다. 로컬 맵 처리부는 읽혀 올려진 과학 실험 데이터를 가지고 노드 단위로 메모리 상에 다차원 배열을 생성하는 빌딩 처리부를 포함할 수 있다.According to another embodiment of the present invention, the local map processing unit may include a filtering processing unit for filtering the merged scientific data files so as to process only scientific data, which is a direct object of a query, And / or a building processor for generating a multi-dimensional array on the memory in units of the nodes on the basis of the read-processed scientific data files. The local map processing unit can operate only on each computing node in the cluster. The local map processing unit may include a filtering processing unit for generating the corresponding information so that only the range value of the partial array and the cell value in the array can be directly selected for the merged science experiment data file acquired from the file merge unit have. The local map processing unit may include a leading processing unit for reading only the direct object data of the query from the file through the filtering step. The local map processing unit may include a building processing unit for generating a multidimensional array on the memory in units of nodes with the read scientific experiment data.

본 발명의 다른 일 실시예에 따르면, 상기 빌딩 처리부는 상기 리딩 처리된 과학 데이터 파일들의 청크 식별 정보 (chunk identification information) 및 상기 청크 내의 위치 정보를 이용하여 상기 리딩 처리된 과학 데이터 파일들을 상기 데이터베이스 내의 특정 청크로 배치할 수 있다. 빌딩 처리부는 필터링 처리부를 통해 질의의 직접 대상 데이터만을 파일로부터 읽어 올리는 리딩 처리부를 거쳐 받은 데이터를 배열 내 셀 단위로 해당 셀이 위치해야할 배열 청크와 청크 내 위치를 계산함으로써 파일 내 데이터를 메모리상에 배열 청크로 변환할 수 있다. 빌딩 처리부는 기존 분산 다차원 배열 DBMS에서 하나의 다차원 배열을 청크들로 분산 배치하는 방식에 따라 메모리상에 배열 청크를 생성할 수 있다. According to another embodiment of the present invention, the building processing unit uses the chunk identification information of the read-processed scientific data files and the location information in the chunks to store the read scientific data files in the database It can be placed in a specific chunk. The building processing unit calculates the arrangement chunks and the positions in the chunks in which the corresponding cells are to be located in the array within the array by receiving data received through a reading processing unit that reads only the direct object data of the query directly from the file through the filtering processing unit, You can convert to an array chunk. The building processor can generate an array chunk on the memory according to a method of distributing one multidimensional array to chunks in an existing distributed multidimensional array DBMS.

본 발명의 다른 일 실시예에 따르면, 글로벌 맵 처리부는 상기 노드 각각이 가진 메모리 내 배치된 과학 데이터 파일들의 청크 (chunk) 중에서 상기 데이터베이스의 원래 데이터 적재 방식에 따라 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 다른 노드로 전달하는 스케터 (scatter) 처리부, 상기 전달된 다른 노드에 위치해야 할 과학 데이터 파일들의 청크들을 수신하는 게더 (gather) 처리부 및/또는 상기 수신된 과학 데이터 파일들의 청크들을 이미 배치된 과학 데이터 파일들의 청크와 병합하는 병합 (merge) 처리부를 포함할 수 있다. 글로벌 맵 처리부는 각 노드가 가진 메모리 내 배열 청크 중에서 원래 배열 청크 배치 방식에 따라 다른 노드에 위치해야 할 배열 내 부분 영역들을 다른 노드에 전달하는 스케터 처리부를 포함할 수 있다. 글로벌 맵 처리부는 다른 노드들이 스케터 처리부에서 전달하는 부분 배열 영역 중 자신이 관리해야할 배열 영역들을 전달받는 게더 처리부를 포함할 수 있다. 글로벌 맵 처리부는 게더 처리부가 수신한 여러 노드들로부터 전달받은 부분 배열 영역들을 가지고 각 노드들이 자신이 가지는 배열 청크와 병합하는 병합 처리부를 포함할 수 있다. According to another embodiment of the present invention, the global map processing unit may include a chunk of the scientific data files arranged in the memory of each of the nodes, A gather processing unit for receiving chunks of scientific data files to be located at the other nodes, and / or a chunk of the received scientific data files, And a merge processing unit for merging with the chunks of the placed scientific data files. The global map processing unit may include a skater processing unit for transferring the partial areas in the array to be located at different nodes to other nodes according to the original arrangement chunk arrangement method among the in-memory arrangement chunks of each node. The global map processing unit may include a handler processing unit that receives the arrangement areas to be managed by the other nodes from among the partial arrangement areas transmitted from the skater processing unit. The global map processing unit may include a merge processing unit that has subarray regions received from the plurality of nodes received by the header processing unit and merges the nodes with the array chunks of the subarray regions.

본 발명의 다른 일 실시예에 따르면, 상기 대용량 과학 데이터 즉시 분석 장치는 상기 데이터베이스의 원래 데이터 적재 방식에 따라 상기 질의 처리된 과학 데이터 파일들을 저장하는 저장부를 포함할 수 있다. 병합 처리부는 다른 노드들로부터 전달받은 부분 배열 영역들을 자신이 가진 배열 청크와 병합할 수 있다. 병합 처리부는 최종적으로 다차원 배열 DBMS에서의 배열 청크가 배치되는 방식과 동일한 형태로 배열 청크들이 메모리 상에 생성 및/또는 배치되도록 할 수 있다. 이 때, 배열 청크의 크기가 가용 메모리를 넘는 경우 디스크에 실체화할 수 있다. 나아가, 대용량 과학 데이터 즉시 분석 장치는 질의 처리 종료 후 필요에 따라 메모리 내 배열 청크들을 실제 DB의 저장 구조로 물리적으로 디스크에 저장시킬 수 있다. According to another embodiment of the present invention, the mass scientific data instant analysis apparatus may include a storage unit for storing the queried scientific data files according to the original data loading method of the database. The merge processing unit may merge the subsequence regions received from other nodes with the array chunks of the subsequence regions. The merge processing unit may cause the arrangement chunks to be generated and / or arranged in the memory in the same manner as the arrangement of the arrangement chunks in the multi-dimensional arrangement DBMS finally. At this time, if the size of the array chunk exceeds the available memory, it can be actualized on the disk. Furthermore, the mass scientific data instant analysis device can physically store the in-memory array chunks into the storage structure of the actual DB after the completion of the query process, if necessary.

본 발명의 실시예들에 따른 모듈, 유닛 또는 블락은 메모리(또는 저장 유닛)에 저장된 연속된 수행과정들을 실행하는 프로세서/하드웨어일 수 있다. 전술한 실시예에 기술된 각 단계 또는 방법들은 하드웨어/프로세서들에 의해 수행될 수 있다. 또한, 본 발명이 제시하는 방법들은 코드로서 실행될 수 있다. 이 코드는 프로세서가 읽을 수 있는 저장매체에 쓰여질 수 있고, 따라서 본 발명의 실시예들에 따른 장치(apparatus)가 제공하는 프로세서에 의해 읽혀질 수 있다. A module, unit or block in accordance with embodiments of the present invention may be a processor / hardware that executes sequential execution processes stored in a memory (or storage unit). Each step or method described in the above embodiments may be performed by hardware / processors. Further, the methods proposed by the present invention can be executed as codes. This code may be written to a storage medium readable by the processor and thus readable by a processor provided by an apparatus according to embodiments of the present invention.

설명의 편의를 위하여 각 도면을 나누어 설명하였으나, 각 도면에 서술되어 있는 실시 예들을 병합하여 새로운 실시 예를 구현하도록 설계하는 것도 가능하다. 그리고, 당업자의 필요에 따라, 이전에 설명된 실시 예들을 실행하기 위한 프로그램이 기록되어 있는 컴퓨터에서 판독 가능한 기록 매체를 설계하는 것도 본 발명의 권리범위에 속한다. Although the drawings have been described for the sake of convenience of explanation, it is also possible to design a new embodiment by incorporating the embodiments described in each drawing. It is also within the scope of the present invention to design a computer-readable recording medium in which a program for executing the previously described embodiments is recorded according to the needs of those skilled in the art.

본 발명에 따른 장치 및 방법은 상술한 바와 같이 설명된 실시 예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상술한 실시 예들은 다양한 변형이 이루어질 수 있도록 각 실시 예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다. The apparatus and method according to the present invention are not limited to the configuration and method of the embodiments described above as described above, but the embodiments described above may be modified so that all or some of the embodiments are selectively And may be configured in combination.

한편, 본 발명의 영상 처리 방법은 네트워크 디바이스에 구비된 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한, 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다. Meanwhile, the image processing method of the present invention can be implemented as a code that can be read by a processor on a recording medium readable by a processor included in a network device. The processor-readable recording medium includes all kinds of recording apparatuses in which data that can be read by the processor is stored. Examples of the recording medium on which the processor can read are ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like. In addition, the processor-readable recording medium may be distributed over network-connected computer systems so that code readable by the processor in a distributed fashion can be stored and executed.

또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다. While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the present invention.

그리고, 당해 명세서에서는 물건 발명과 방법 발명이 모두 설명되고 있으며, 필요에 따라 양 발명의 설명은 보충적으로 적용될 수가 있다. In this specification, both the invention of the invention and the invention of the method are explained, and the description of both inventions can be supplemented as necessary.

9010: 파일 병합부
9020: 로컬 맵 처리부
9030: 글로벌 맵 처리부
9040: 질의 처리부
9050: 대용량 과학 데이터 즉시 분석 장치
9010: File merge unit
9020: Local map processor
9030: Global map processor
9040:
9050: Large scale scientific data instant analysis device

Claims (5)

데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 파일 병합부;
상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 로컬 맵 (Local Map) 처리부;
상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 글로벌 맵 (Global Map) 처리부; 및
상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 질의 처리부;
를 포함하고,
상기 글로벌 맵 처리부는 다차원 배열 DBMS(database management system)에서의 배열 청크가 배치되는 방식과 동일한 형태로 배열 청크들이 메모리 상에 생성 및/또는 배치하는 병합처리부를 포함하고,
상기 파일 병합부는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고,
여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않는 대용량 과학 데이터 즉시 분석 장치.
A file merge unit for merging scientific data files according to the number of nodes where an instance of the database is located;
A local map processing unit for arranging the merged scientific data files in an array structure in the database;
A global map processing unit for rearranging the arranged scientific data files according to an original data loading method of the database; And
A query processor for querying the relocated scientific data files;
Lt; / RTI >
Wherein the global map processing unit includes a merging processing unit for arranging and / or arranging the arrangement chunks in a memory in the same manner as the arrangement of the arrangement chunks in the multidimensional arrangement database management system (DBMS)
The file merge unit merges a plurality of scientific data files having the same structure by the number of nodes, merges the same into larger sized scientific data files,
Wherein the size of one of the merged science data files does not exceed the size of available memory of the node.
삭제delete 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하는 단계;
상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하는 단계;
상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하는 단계; 및
상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하는 단계;
를 포함하고,
상기 재배치하는 단계는 다차원 배열 DBMS(database management system)에서의 배열 청크가 배치되는 방식과 동일한 형태로 배열 청크들이 메모리 상에 생성 및/또는 배치하는 단계를 포함하고,
상기 병합하는 단계는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고,
여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않는 대용량 과학 데이터 즉시 분석 방법.
Merging scientific data files according to the number of nodes in which instances of the database are located;
Arranging the merged science data files into an array structure in the database;
Rearranging the placed scientific data files according to an original data loading method of the database; And
Querying the relocated scientific data files;
Lt; / RTI >
Wherein the relocating comprises creating and / or placing arrangement chunks on a memory in the same manner as the arrangement chunks are arranged in a multi-dimensional array database management system (DBMS)
The merging step merges the plurality of scientific data files having the same structure by the number of the nodes to merge them into larger sized scientific data files,
Wherein the size of one of the merged science data files does not exceed the size of available memory of the node.
삭제delete 데이터베이스의 인스턴스가 위치한 노드의 개수에 따라 과학 데이터 파일들을 병합하고, 상기 병합된 과학 데이터 파일들을 상기 데이터베이스 내의 배열 구조로 배치하고, 상기 배치된 과학 데이터 파일들을 상기 데이터베이스의 원래 데이터 적재 방식에 따라 재배치하고, 상기 재배치된 과학 데이터 파일들을 대상으로 질의 처리하고 파일 병합부는 동일 구조를 가지는 복수 개의 과학 데이터 파일들을 상기 노드의 개수만큼 병합하여 더 큰 크기의 과학 데이터 파일들로 병합하고, 여기서, 상기 병합된 과학 데이터 파일들 중 하나의 크기는 상기 노드의 가용 메모리 크기를 넘지 않는 대용량 과학 데이터 즉시 분석을 위한 프로그램을 저장하는 컴퓨터로 판독가능한 기록매체.  Merging the scientific data files according to the number of nodes in which the instances of the database are located, arranging the merged science data files in an array structure in the database, rearranging the arranged science data files according to the original data loading method of the database And the file merge unit merges the plurality of scientific data files having the same structure by the number of the nodes to merge them into the larger size scientific data files, Wherein the size of one of the scientific data files is not greater than the available memory size of the node.
KR1020160129171A 2016-10-06 2016-10-06 Method and apparatus for the fast analysis of large-scale scientific data files KR101918662B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160129171A KR101918662B1 (en) 2016-10-06 2016-10-06 Method and apparatus for the fast analysis of large-scale scientific data files

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160129171A KR101918662B1 (en) 2016-10-06 2016-10-06 Method and apparatus for the fast analysis of large-scale scientific data files

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020150186120A Division KR101668397B1 (en) 2015-12-24 2015-12-24 Method and apparatus for the fast analysis of large-scale scientific data files

Publications (2)

Publication Number Publication Date
KR20170076541A KR20170076541A (en) 2017-07-04
KR101918662B1 true KR101918662B1 (en) 2018-11-14

Family

ID=59357124

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160129171A KR101918662B1 (en) 2016-10-06 2016-10-06 Method and apparatus for the fast analysis of large-scale scientific data files

Country Status (1)

Country Link
KR (1) KR101918662B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102308667B1 (en) 2020-01-08 2021-10-05 고려대학교 산학협력단 Device and method for progressive top-k subarray query processing in array databases
KR102664792B1 (en) * 2021-10-08 2024-05-08 고려대학교 산학협력단 Multi-dimensional array compression method capable of high-speed query processing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101668397B1 (en) * 2015-12-24 2016-10-21 한국과학기술정보연구원 Method and apparatus for the fast analysis of large-scale scientific data files

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101668397B1 (en) * 2015-12-24 2016-10-21 한국과학기술정보연구원 Method and apparatus for the fast analysis of large-scale scientific data files

Also Published As

Publication number Publication date
KR20170076541A (en) 2017-07-04

Similar Documents

Publication Publication Date Title
Ding et al. UlTraMan: A unified platform for big trajectory data management and analytics
US11475034B2 (en) Schemaless to relational representation conversion
AU2012250970B2 (en) Managing data queries
Blanas et al. Parallel data analysis directly on scientific file formats
US10133800B2 (en) Processing datasets with a DBMS engine
US8880463B2 (en) Standardized framework for reporting archived legacy system data
Cudre-Mauroux et al. Ss-db: A standard science dbms benchmark
EP2577511A1 (en) Query execution systems and methods
EP3867772B1 (en) Distributed join index for shared-nothing and log-structured databases
CN104239377A (en) Platform-crossing data retrieval method and device
Chattopadhyay et al. Procella: Unifying serving and analytical data at YouTube
KR101668397B1 (en) Method and apparatus for the fast analysis of large-scale scientific data files
US9183320B2 (en) Data managing method, apparatus, and recording medium of program, and searching method, apparatus, and medium of program
Das et al. A study on big data integration with data warehouse
Hu et al. A hierarchical indexing strategy for optimizing Apache Spark with HDFS to efficiently query big geospatial raster data
KR101918662B1 (en) Method and apparatus for the fast analysis of large-scale scientific data files
KR101628676B1 (en) System and method for storing large-scale scientific data
Jensen et al. Time series management systems: a 2022 survey
Solodovnikova et al. Handling evolution in big data architectures
KR102610636B1 (en) Offload parallel compute to database accelerators
Xiao A Spark based computing framework for spatial data
Wu et al. PABIRS: A data access middleware for distributed file systems
KR20170085786A (en) System and method for storing data in big data platform
Kim et al. Scalable parallel data loading in SciDB
Cheng et al. UniIndex: An index and query middleware for parallel file systems

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
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