KR20180026596A - Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time - Google Patents

Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time Download PDF

Info

Publication number
KR20180026596A
KR20180026596A KR1020160113151A KR20160113151A KR20180026596A KR 20180026596 A KR20180026596 A KR 20180026596A KR 1020160113151 A KR1020160113151 A KR 1020160113151A KR 20160113151 A KR20160113151 A KR 20160113151A KR 20180026596 A KR20180026596 A KR 20180026596A
Authority
KR
South Korea
Prior art keywords
data
mapping
real
collected
unit
Prior art date
Application number
KR1020160113151A
Other languages
Korean (ko)
Inventor
양원모
김동기
이영래
박성철
Original Assignee
주식회사 포스코아이씨티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 포스코아이씨티 filed Critical 주식회사 포스코아이씨티
Priority to KR1020160113151A priority Critical patent/KR20180026596A/en
Priority to US15/693,158 priority patent/US11079728B2/en
Priority to CN201710780183.7A priority patent/CN107798460B/en
Publication of KR20180026596A publication Critical patent/KR20180026596A/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23217Parallel processing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32407Real time processing of data
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

According to an embodiment of the present invention, a dispersion parallel processing system processing data for a continuous process in real time can process a large amount of data generated in a continuous process in real time. The dispersion parallel processing system processing data for a continuous process in real time for processing the data generated in the continuous process to which a plurality of processes are connected comprises: at least one real time processing part mapping a process identifier of the process in which collection data is generated to the collection data collected from the continuous process, and arranging mapped mapping data for association processing between the collection data collected from the different processes; and a plurality of memory parts in which arrangement data is dispersed and stored.

Description

연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템{Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time}[0001] The present invention relates to a distributed parallel processing system for processing data for a continuous process in real time,

본 발명은 공장 데이터 처리에 관한 것으로서, 보다 구체적으로는 연속공정용 대용량 데이터의 실시간 처리에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to factory data processing, and more particularly to real-time processing of large capacity data for continuous processing.

원재료를 이용하여 완제품을 생성하기 위한 복수개의 공정들이 연속적으로 수행되고, 각 공정의 산출물들이 서로 혼합되거나 특정 공정의 산출물의 상태가 변화하여 후속 공정으로 공급되는 것과 같이, 각 공정들이 서로 관련되어 있는 생산 방식을 연속공정 생산방식이라 한다. 철강산업, 에너지산업, 제지산업, 또는 정유산업 등이 연속공정 생산 방식이 적용되는 대표적인 산업들이다.A plurality of processes for producing the finished product using the raw material are successively performed and the processes of the respective processes are mixed with each other or the state of the output of the specific process is changed and supplied to the subsequent process, The production method is called continuous process production method. The steel industry, the energy industry, the paper industry, or the oil refining industry are representative industries to which the continuous process production method is applied.

예컨대, 철강산업은 제선공정, 제강공정, 연주공정 및 압연공정 등과 같은 복수개의 공정으로 이루어진다. 제선공정은 쇳물(용선)을 생산하는 공정으로서, 철광석을 고로에 넣고 원료탄이 타면서 나오는 열에 의해 철광석을 녹인다. 제강공정은 쇳물에서 불순물을 제거하는 공정으로, 전로 속에 고철과 용선을 함께 넣은 후 산소를 불어 넣어 불순물을 제거한다. 연주공정은 액체상태의 철이 고체가 되는 공정으로, 불순물이 제거된 용강을 주형(mold)에 주입하고 연속 주조기를 통과하면서 냉각, 응고되어 슬래브, 블룸, 또는 빌릿 등과 같은 중간 소재로 만들어진다. 압연공정은 철을 강판이나 선재로 만드는 공정으로, 연주공정에서 생산된 슬래브, 블룸, 또는 빌릿을 롤(Roll) 사이로 통과시켜 늘리거나 얇게 만들어 강판을 생산한다.For example, the steel industry is made up of a plurality of processes such as a milling process, a steelmaking process, a performance process, and a rolling process. The ironmaking process is a process of producing molten iron (iron charcoal), which iron ores are melted by the heat that comes from burning the coal into the blast furnace. The steelmaking process is a process to remove impurities from the molten metal. The molten steel and the molten iron are put together in the converter, and the impurities are removed by blowing oxygen. The casting process is a process in which liquid iron is solidified, and molten steel from which impurities have been removed is injected into a mold and cooled and solidified while passing through a continuous casting machine to be made of an intermediate material such as slab, bloom, or billet. The rolling process is a process of making steel into steel or wire, and slabs, blooms, or billets produced in the performance process are passed through rolls to produce steel sheets by stretching or thinning.

이러한 연속공정 생산방식이 적용되는 산업의 경우, 단일공정 생산방식이 적용되는 산업과 달리, 원재료 또는 중간재가 고속으로 이동하기 때문에 데이터 수집주기가 짧고 데이터의 양이 많을 뿐만 아니라, 소음, 먼지, 수분 등이 많은 공장 환경에서 제품이 생산되기 때문에 계측이상이 자주 발생하고, 작업 방법에 따라 중간재들이 서로 혼합되거나 소재의 위치가 이동한다는 특성이 있다.In the case of this type of continuous process production, unlike in the industry where a single process production method is applied, raw material or intermediate material moves at high speed, so data collection cycle is short and data amount is large, and noise, And so on. Therefore, there is a tendency that measurement errors occur frequently, and the intermediate materials are mixed with each other or the position of the material moves according to the working method.

이에 따라, 연속공정이 생산방식이 적용되는 산업의 경우 대용량의 데이터를 실시간으로 처리할 수 있고, 각 공정 별로 발생된 데이터들 간의 연관관계를 분석할 수 있는 시스템이 요구된다.Accordingly, a system capable of processing a large amount of data in real time and analyzing the relationship between data generated by each process is required in an industry in which a continuous process is applied to a production method.

하지만, 대한민국 공개특허공보 제10-2015-0033847호(발명의 명칭: 실시간 공장상황을 반영한 디지털 팩토리 생산능력 관리 시스템, 2015.04.02. 공개) 등에 개시되어 있는 일반적인 공장 데이터 처리 시스템(예컨대, 철강 데이터 처리 시스템)은 단일 공정에서 발생하는 데이터의 처리 및 분석을 위한 것이기 때문에, 연속 공정에서 발생하는 대용량의 데이터를 실시간으로 처리할 수 없을 뿐만 아니라, 각 공정별로 발생된 데이터들 간의 연관관계를 분석할 수 없다는 문제점이 있다.However, a general factory data processing system disclosed in, for example, Korean Patent Laid-Open Publication No. 10-2015-0033847 (titled " Digital Factory Production Capacity Management System Reflecting Real Time Factory Situation ", published on May 20, Processing system) is for processing and analyzing data generated in a single process, it is not possible to process a large amount of data generated in a continuous process in real time, but also to analyze the relationship between data generated in each process There is a problem that it can not be done.

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 연속공정에서 발생된 대용량의 데이터를 실시간으로 처리할 수 있는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템을 제공하는 것을 그 기술적 특징으로 한다.Disclosure of Invention Technical Problem [8] The present invention is directed to solve the above-described problems and provides a distributed parallel processing system that processes data for a continuous process in real time that can process large amounts of data generated in a continuous process in real time.

또한, 본 발명은 데이터의 실시간 처리를 위한 실시간 프로세싱부의 부하를 균등하게 조절할 수 있는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템을 제공하는 것을 다른 기술적 특징으로 한다.Another aspect of the present invention is to provide a distributed parallel processing system that real-time processes data for a continuous process that can uniformly control the load of a real-time processing unit for real-time processing of data.

또한, 본 발명은 처리된 데이터가 저장되는 메모리부의 가용성을 향상시킬 수 있는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템을 제공하는 것을 또 다른 기술적 특징으로 한다.Another aspect of the present invention is to provide a distributed parallel processing system that processes data for a continuous process in real time that can improve the availability of a memory unit storing processed data.

상기 목적을 달성하기 위해서, 본 발명의 일 측면에 따른 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템은, 복수의 공정이 연결되는 연속공정에서 발생된 데이터를 처리하기 위한 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템에 있어서, 상기 연속공정으로부터 수집된 수집 데이터에 상기 수집 데이터가 발생된 공정의 공정 식별자를 매핑하고, 서로 다른 공정에서 수집된 수집 데이터간의 연계 처리를 위해 상기 매핑된 매핑 데이터를 정렬하는 적어도 하나의 실시간 프로세싱부; 및 상기 정렬 데이터가 분산 저장되는 복수개의 메모리부를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a distributed parallel processing system for processing data for a continuous process in real time according to one aspect of the present invention includes a data processing unit for processing continuous process data for processing data generated in a continuous process in which a plurality of processes are connected A distributed parallel processing system for processing in real time, the method comprising: mapping a process identifier of a process in which the collected data is generated to collected data collected from the continuous process; At least one real-time processing unit for sorting the mapping data; And a plurality of memory units in which the alignment data is dispersively stored.

본 발명에 따르면, 연속공정에서 발생된 대용량의 데이터를 실시간으로 처리할 수 있다는 효과가 있다.According to the present invention, it is possible to process a large amount of data generated in a continuous process in real time.

또한, 본 발명에 따르면 각 실시간 프로세싱부에 배포된 수행모듈의 실행으로 인한 시스템 자원 사용 정보를 기초로 각 실시간 프로세싱부에 배포될 수행모듈들을 결정함으로써, 모든 실시간 프로세싱부의 부하가 균등해지도록 할 수 있어 시스템 처리 성능을 향상시킬 수 있다는 효과가 있다.In addition, according to the present invention, the execution modules to be distributed to each real-time processing unit are determined based on the system resource usage information due to the execution of the execution module distributed to each real-time processing unit, So that the system processing performance can be improved.

또한, 본 발명에 따르면 메모리부를 1개의 마스터 인스턴스 및 2개의 슬레이브 인스턴스로 3중화하여 구성함으로써, 마스터 인스턴스가 다운되더라도 2개의 슬레이브 인스턴스 중 어느 하나가 마스터로 절체되어 마스터-슬레이브 2중화 구조로의 동작이 가능하여 메모리부의 가용성을 극대화시킬 수 있다는 효과가 있다.In addition, according to the present invention, the memory unit is configured by triplicating one master instance and two slave instances, so that even if the master instance is down, any one of the two slave instances is switched to the master and the operation to the master- So that the availability of the memory unit can be maximized.

도 1은 본 발명의 일 실시예에 따른 연속공정용 데이터를 실시간으로 처리하는 분산병렬처리시스템을 포함하는 스마트팩토리 아키텍처를 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 인터페이스 시스템의 구성을 보여주는 블록도이다.
도 3은 복수개의 인터페이스 프로세싱부 및 복수개의 큐 저장부를 포함하는 인터페이스 시스템의 구성을 보여주는 도면이다.
도 4는 본 발명의 일 실시예에 따른 분산병렬처리시스템의 구성을 구체적으로 나타내는 도면이다.
도 5는 복수개의 실시간 프로세싱부 및 복수개의 메모리부를 포함하는 분산병렬처리시스템의 구성을 보여주는 도면이다.
도 6은 데이터 매핑 및 정렬 작업의 분산병렬처리방법을 예시적으로 보여주는 개념도이다.
도 7은 3중화된 메모리부의 구성을 보여주는 도면이다.
도 8은 본 발명의 실시예에 따른 빅데이터 분석 시스템의 구성을 구체적으로 나타내는 도면이다.
1 is a diagram illustrating a smart factory architecture including a distributed parallel processing system for processing data for a continuous process in real time according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of an interface system according to an embodiment of the present invention.
3 is a diagram illustrating a configuration of an interface system including a plurality of interface processing units and a plurality of queue storage units.
FIG. 4 is a block diagram of a distributed parallel processing system according to an embodiment of the present invention. Referring to FIG.
5 is a diagram illustrating a configuration of a distributed parallel processing system including a plurality of real-time processing units and a plurality of memory units.
6 is a conceptual diagram illustrating a distributed parallel processing method of data mapping and sorting operations.
7 is a diagram showing a configuration of a triple memory unit.
FIG. 8 is a diagram specifically illustrating a configuration of a big data analysis system 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.

본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.The meaning of the terms described herein should be understood as follows.

단수의 표현은 문맥상 명백하게 다르게 정의하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다.The word " first, "" second," and the like, used to distinguish one element from another, are to be understood to include plural representations unless the context clearly dictates otherwise. The scope of the right should not be limited by these terms.

"포함하다" 또는 "가지다" 등의 용어는 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the terms "comprises" or "having" does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.It should be understood that the term "at least one" includes all possible combinations from one or more related items. For example, the meaning of "at least one of the first item, the second item and the third item" means not only the first item, the second item or the third item, but also the second item and the second item among the first item, Means any combination of items that can be presented from more than one.

도 1은 본 발명의 일 실시예에 따른 연속공정용 데이터를 실시간으로 처리하는 분산병렬처리시스템을 포함하는 스마트팩토리 아키텍처를 보여주는 도면이다.FIG. 1 is a diagram illustrating a smart factory architecture including a distributed parallel processing system that processes data for a continuous process in real time according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명에 따른 스마트팩토리 아키텍쳐는, 데이터 수집 장치(1), 네트워크(2), 스마트팩토리 플랫폼(1000), 및 어플리케이션 시스템(3)과 같은 계층으로 구성된다.1, the smart factory architecture according to the present invention is composed of layers such as a data collection device 1, a network 2, a smart factory platform 1000, and an application system 3.

데이터 수집 장치(1)는 연속공정에서 발생되는 데이터를 수집한다. 일 실시예에 있어서, 연속공정이란 원재료를 이용하여 완제품을 생성하기 위한 복수개의 공정들이 연속적으로 수행되고, 각 공정의 산출물들이 서로 혼합되거나 특정 공정의 산출물의 상태가 변화하여 후속 공정으로 공급되는 방식의 공정을 의미한다. 철강공정이 이러한 연속공정의 대표적인 예에 해당한다. 이하에서는 설명의 편의를 위해, 연속공정이 철강공정인 것으로 가정하여 설명하기로 한다.The data collection device 1 collects data generated in the continuous process. In one embodiment, a continuous process is a process in which a plurality of processes for producing finished products are successively performed using raw materials, the products of each process are mixed with each other, or the state of the output of a specific process is changed and supplied to a subsequent process . The steel process is a representative example of this continuous process. Hereinafter, for convenience of explanation, it is assumed that the continuous process is a steel process.

철강공정은 제선공정, 제강공정, 연주공정, 및 압연공정 등과 같은 다양한 공정으로 구성되므로, 데이터 수집 장치(10)는 제선공정, 제강공정, 연주공정, 및 압연공정 등과 같은 다양한 공정의 진행 과정에서 발생되는 마이크로 데이터(Micro Data)를 수집한다. 여기서, 마이크로 데이터는 다양한 센서 등을 통해 수집된 데이터 그 자체로서 원시 데이터(Raw Data)를 의미한다. 이하에서는, 설명의 편의를 위해 마이크로 데이터를 수집 데이터로 표기하기로 한다.Since the steel manufacturing process is composed of various processes such as a steelmaking process, a steelmaking process, a performance process, and a rolling process, the data collecting device 10 can perform various processes such as a steelmaking process, a steelmaking process, a performance process, And collects generated micro data. Here, micro data refers to raw data as data collected through various sensors and the like. Hereinafter, microdata will be referred to as collected data for convenience of explanation.

이를 위해, 데이터 수집 장치(1)는 마이크로 데이터를 수집하기 위한 다양한 계측기, 센서, 액츄에이터 등을 포함한다. 데이터 수집 장치(1)는 계측기, 센서, 액츄에이터 등에 의해 수집된 데이터를 통합하거나 제어하는 P/C, PLC(Programmable Logic Controller), DCS(Distributed Control System) 등을 더 포함할 수 있다.For this purpose, the data collection device 1 comprises various instruments, sensors, actuators and the like for collecting micro data. The data collecting apparatus 1 may further include a P / C, a PLC (Programmable Logic Controller), and a DCS (Distributed Control System) for integrating or controlling data collected by an instrument, a sensor, and an actuator.

네트워크(2)는 데이터 수집 장치(1)에서 수집된 대용량의 데이터를 스마트팩토리 플랫폼(1000)으로 전달한다. 일 실시예에 있어서, 본 발명에 따른 네트워크(2)는 네트워크 케이블, 게이트웨이, 라우터, 또는 무선 AP(Access Point) 등을 포함할 수 있으나 이에 한정되는 것은 아니다.The network 2 transfers the large amount of data collected by the data collection device 1 to the smart factory platform 1000. In one embodiment, the network 2 according to the present invention may include but is not limited to a network cable, a gateway, a router, or a wireless access point (AP).

스마트팩토리 플랫폼(1000)은 데이터 수집 장치(1)에서 수집된 대용량의 마이크로 데이터를 네트워크(2)를 통해 수신한다. 스마트팩토리 플랫폼(1000)은 수신된 대용량의 마이크로 데이터를 실시간으로 가공한다. 또한, 스마트팩토리 플랫폼(100)은 가공된 마이크로 데이터를 기초로 설비 또는 재료 등의 이상유무를 실시간으로 판단할 뿐만 아니라 빅데이터 분석을 위해 가공된 마이크로 데이터를 빅데이터 저장부(미도시)에 저장하며, 저장된 데이터에 대한 조회 및 분석 서비스를 제공한다.The smart factory platform 1000 receives a large amount of micro data collected by the data collection device 1 via the network 2. [ The smart factory platform 1000 processes the received large amount of micro data in real time. In addition, the smart factory platform 100 not only judges whether there is an abnormality such as facilities or materials on the basis of the processed micro data, but also stores the micro data processed for the big data analysis in a big data storage (not shown) And provide inquiry and analysis services on stored data.

일 실시예에 있어서, 본 발명에 따른 스마트팩토리 플랫폼(100)은 도 1에 도시된 바와 같이, 인터페이스 시스템(100), 분산병렬처리 시스템(200), 빅데이터 분석시스템(300)을 포함한다. 또한, 스마트팩토리 플랫폼(1000)은 서비스 시스템(400), 관리시스템(500), 및 보안시스템(500)을 더 포함할 수 있다.In one embodiment, the smart factory platform 100 according to the present invention includes an interface system 100, a distributed parallel processing system 200, and a big data analysis system 300, as shown in FIG. In addition, the smart factory platform 1000 may further include a service system 400, a management system 500, and a security system 500.

인터페이스 시스템(100)은 Level 0 내지 Level 2의 이기종 장치들과 다양한 프로토콜을 통해 연결되기 위한 연결 수단을 제공하고 데이터 수집 장치(1)에서 수집된 마이크로 데이터를 전처리 하여 마이크로 데이터를 표준화한다.The interface system 100 provides connection means for connection with heterogeneous devices of Level 0 to Level 2 through various protocols and preprocesses the micro data collected by the data collection device 1 to standardize the micro data.

이하, 도 2를 참조하여 본 발명에 따른 인터페이스 시스템(100)에 대해 구체적으로 설명한다.Hereinafter, the interface system 100 according to the present invention will be described in detail with reference to FIG.

도 2는 본 발명의 일 실시예에 따른 인터페이스 시스템(100)의 구성을 보여주는 도면이다. 도 2에 도시된 바와 같이, 본 발명에 따른 인터페이스 시스템(100)은 인터페이스 프로세싱부(110) 및 큐 저장부(120)를 포함한다.2 is a diagram illustrating a configuration of an interface system 100 according to an embodiment of the present invention. As shown in FIG. 2, the interface system 100 according to the present invention includes an interface processing unit 110 and a queue storage unit 120.

인터페이스 프로세싱부(110)는 연속공정으로부터 수집된 수집 데이터의 연계처리를 위해, 수집된 데이터들을 전처리한다. 일 실시예에 있어서, 인터페이스 프로세싱부(110)는 수집된 데이터를 표준화함으로써 수집된 데이터를 전처리할 수 있다. 이를 위해, 인터페이스 프로세싱부(110)는 도 2에 도시된 바와 같이, 수신유닛(111), 파싱유닛(112), 표준화유닛(113), 필터링유닛(114), 및 전송유닛(115)를 포함한다.The interface processing unit 110 preprocesses the collected data to process the collected data collected from the continuous process. In one embodiment, the interface processing unit 110 may pre-process the collected data by normalizing the collected data. To this end, the interface processing unit 110 includes a receiving unit 111, a parsing unit 112, a normalizing unit 113, a filtering unit 114, and a transmitting unit 115, as shown in Fig. 2 do.

수신유닛(111)은 데이터 수집 장치(1)에 포함된 센서들에 의해 수집된 수집 데이터를 수신한다. 일 실시예에 있어서, 수신유닛(110)은 하나 이상의 통신 방식을 이용하여 수집 데이터를 수신할 수 있다. 일례로, 수신유닛(111)은 iBA, OPC(OLE for Process control), TCP/IP 등과 같은 다양한 통신방식을 이용할 수 있다. 즉, 데이터 수집 장치(1)에 포함된 센서 등의 종류에 따라서 네트워크(2)를 구성하는 각각의 게이트웨이 등에서 이용하는 통신방식이 다양할 수 있으므로, 본 발명의 실시예에 따른 수신유닛(111)은 다양한 네트워크(2)와 통신할 수 있는 모든 통신방식을 지원한다.The receiving unit 111 receives the collected data collected by the sensors included in the data collecting apparatus 1. In one embodiment, the receiving unit 110 may receive collected data using one or more communication methods. For example, the receiving unit 111 may use various communication methods such as iBA, OLE for Process Control (OPC), TCP / IP, and the like. That is, the communication methods used by the respective gateways and the like constituting the network 2 may vary according to the types of sensors included in the data collecting apparatus 1, and therefore the receiving unit 111 according to the embodiment of the present invention And supports all communication methods capable of communicating with various networks (2).

파싱유닛(112)은 수신유닛(111)을 통해 수신된 수집 데이터를 파싱한다.The parsing unit 112 parses the collected data received via the receiving unit 111. [

구체적으로 데이터 수집 장치(1)에서 수집된 수집 데이터는 복수의 항목 ID를 포함하는 그룹 ID, 수집 시간, 및 복수의 측정값이 반복되는 구조를 가질 수 있다. 이 때, 항목 ID는 측정한 속성을 식별하기 위한 것으로 연속 공정 중 설비, 재료, 또는 제품의 어떤 속성을 측정한 것인지를 의미하는 값으로 온도나 습도 등이 될 수 있다. 그룹 ID는 특정 공장에서 위치 별 또는 각 공정 별로 몇 가지 항목을 그룹으로 편성한 대표값이 될 수 있다. 다만, 본 발명의 실시예에서 데이터 구조는 이에 한정되지 않으므로 그룹 ID 자체에 수집된 시간이 포함되어 있을 수도 있다.Specifically, the collected data collected by the data collection device 1 may have a structure in which a group ID including a plurality of item IDs, a collection time, and a plurality of measured values are repeated. In this case, the item ID is used to identify the measured property, which is a value indicating which property of the equipment, material, or product is measured during the continuous process, and may be temperature or humidity. The group ID can be a representative value of a certain plant, grouped into several items by position or each process. However, the data structure in the embodiment of the present invention is not limited to this, and may include the collected time in the group ID itself.

이와 같이, 수집 데이터가 별도의 구분없이 그룹 ID, 수집 시간, 및 복수의 측정값이 반복되는 형태로 구성되어 있는 경우, 분산병렬처리 시스템(200)이 표준화되어 있지 않은 그룹 ID, 항목 ID, 및 복수의 측정값을 해석하는 과정이 별도로 필요하기 때문에, 설비의 이상 또는 제품의 품질 이상 등의 실시간 분석이 어렵게 될 수 있다.In this manner, when the collected data is composed of a group ID, a collecting time, and a plurality of measured values repeatedly without any other distinction, the distributed parallel processing system 200 generates a group ID, an item ID, Since a process of analyzing a plurality of measured values is separately required, real-time analysis such as abnormality of equipment or quality of a product may become difficult.

따라서, 파싱유닛(112)은 연속공정으로부터 수집된 수집 데이터의 연계 처리를 위해, 수집된 데이터를 미리 설정된 레이아웃에 기초하여 의미있는 단위로 파싱한다.Thus, the parsing unit 112 parses the collected data in a meaningful unit based on a preset layout, for the linkage processing of the collected data collected from the continuous process.

일 실시예에 있어서, 파싱유닛(112)은 수집 데이터를 그룹 ID별로 파싱하고, 그룹 ID에 포함된 복수의 항목 ID와 복수의 측정값을 각각 매칭시켜 단일 항목 ID, 수집 시간, 및 단일 측정값을 갖는 형태의 데이터로 각각 변환할 수 있다.In one embodiment, the parsing unit 112 parses the collection data by group ID, and matches each of the plurality of item IDs and the plurality of measurements each included in the group ID to obtain a single item ID, a collection time, Respectively, as shown in Fig.

이러한 실시에 따르는 경우, 파싱유닛(112)은 수집 데이터 전문에 대한 메시지 레이아웃이 정의되어 있는 메시지 레이아웃 저장부(117)를 참조하여 수집 데이터를 파싱할 수 있다. 메시지 레이아웃 저장부(117)는 별도의 구성으로 인터페이스 프로세싱부(110) 또는 다른 장치에 포함될 수 있다. 그러나, 본 발명은 이에 한정되지 않으므로 파싱유닛(112) 내부에 메시지 레이아웃에 관한 정보가 포함되어 있을 수도 있다.In accordance with this implementation, the parsing unit 112 may parse the collection data with reference to the message layout store 117 where the message layout for the collection data specification is defined. The message layout storage unit 117 may be included in the interface processing unit 110 or another apparatus in a separate configuration. However, the present invention is not limited to this, so the information about the message layout may be included in the parsing unit 112.

표준화유닛(113)은 파싱유닛(112)에 의해 파싱된 수집 데이터를 표준화한다. 일 실시예에 있어서, 표준화유닛(113)은 파싱유닛(112)으로부터 전달되는 단일 항목 ID, 수집된 시간, 및 단일 측정값을 갖는 각각의 수집 데이터에 대해서, 미리 설정된 표준변환기준에 따라 항목 ID를 표준항목 ID로 변환하고 측정값의 단위 및 자리수를 통일시킴으로써 파싱된 데이터를 표준화할 수 있다.The normalization unit 113 normalizes the collected data parsed by the parsing unit 112. [ In one embodiment, the normalization unit 113 is configured to determine, for each collected data having a single item ID, a collected time, and a single measurement from the parsing unit 112, an item ID To the standard item ID and unifies the unit and the number of digits of the measurement value to standardize the parsed data.

구체적으로, 데이터 수집 장치(1)에 포함된 각각의 센서 또는 액츄에이터 등은 동일한 속성을 측정하더라도 이들이 생산된 업체나 이들이 포함된 공장의 특성에 따라 서로 다른 항목 ID를 가질 수 있다. 이와 같이 서로 다른 항목 ID를 기준으로 파싱된 데이터가 그대로 분산병렬처리시스템(200)으로 전달될 경우, 표준화되어 있지 않은 항목 ID 및 복수의 측정값을 해석하는 과정이 별도로 필요하기 때문에, 설비의 이상 또는 제품의 품질 이상 등을 모니터링하는 분산병렬처리시스템(200)의 성능이 저하될 수 있다. 따라서, 본 발명의 실시예에 따른 표준화유닛(113)은 동일한 속성을 측정한 데이터가 동일한 항목 ID를 갖도록 각 수집 데이터에 포함된 항목 ID를 표준항목 ID로 변경할 수 있다.Specifically, even though each sensor or actuator included in the data collection device 1 measures the same property, it can have different item IDs depending on the characteristics of the company in which they are manufactured and the factory in which they are manufactured. Since the parsed data based on the different item IDs are transmitted to the distributed parallel processing system 200 as they are, the process of analyzing the non-standardized item ID and the plurality of measured values is separately required. Or the performance of the distributed parallel processing system 200 that monitors the quality of the product or the like may be degraded. Therefore, the standardization unit 113 according to the embodiment of the present invention can change the item ID included in each collected data to the standard item ID so that the data measuring the same attribute has the same item ID.

이와 같이, 표준화유닛(113)은 서로 동일한 속성을 측정한 측정값에 대해서는 동일한 표준항목 ID를 갖도록 수집 데이터를 전처리함으로써, 각각의 표준항목 ID에 기초하여 연속공정으로부터 수집된 수집 데이터가 연계 처리될 수 있도록 한다.In this manner, the standardization unit 113 pre-processes the collected data so as to have the same standard item ID for the measured values of the same property, and collects collected data collected from the continuous process based on each standard item ID .

또한, 데이터 수집 장치(1)를 통해 수집된 수집 데이터에 포함된 측정값의 형식은 센서나 액츄에이터와 같은 데이터 수집 장치(1)의 종류에 따라 상이할 수 있다. 그 결과, 연속공정으로부터 각각 수집된 서로 다른 형식의 수집 데이터의 연계 처리를 위해서는 각 디바이스의 종류에 따라 데이터의 단위 및 길이를 환산하는 과정을 추가로 수행해야 하기 때문에 연속공정으로부터 수집되는 대용량의 데이터를 실시간으로 연계 처리하는 것이 불가능하다. 따라서, 본 발명의 실시예에 따른 표준화유닛(113)은 분산병렬처리시스템(200)이 실시간으로 대용량의 데이터를 처리할 수 있도록 수집 데이터를 표준화한다.In addition, the format of the measurement values included in the collected data collected through the data collection device 1 may differ depending on the type of the data collection device 1 such as a sensor or an actuator. As a result, in order to process the collected data of the different types collected from the continuous process, it is necessary to additionally perform a process of converting data units and length according to the type of each device. Therefore, It is impossible to perform the link processing in real time. Accordingly, the standardization unit 113 according to the embodiment of the present invention standardizes the collected data so that the distributed parallel processing system 200 can process a large amount of data in real time.

표준화유닛(113)은 별도의 구성으로 인터페이스 프로세싱부(110) 또는 다른 장치에 포함된 표준 변환기준 저장부(118)를 참조하여, 항목 ID, 측정값의 단위 및 자리수를 표준화할 수 있으나, 본 발명은 이에 한정되지 않으므로 표준화유닛(113) 내부에 표준화를 위한 표준 변환기준에 관한 정보가 포함되어 있을 수 있다.The standardization unit 113 can standardize the item ID, the unit of measurement value, and the number of digits by referring to the standard conversion reference storage unit 118 included in the interface processing unit 110 or another apparatus in a separate configuration, Since the invention is not limited to this, the standardization unit 113 may include information on a standard conversion standard for standardization.

필터링유닛(114)은 미리 설정된 필터링 기준에 따라 표준화유닛(113)에서 표준화된 데이터를 큐 저장부(120)에 저장할 것인지 여부를 판단한다. 일례로, 수집된 수집 데이터의 종류에 따라 등급이 미리 설정되어 있고, 필터링유닛(114)은 상기 등급에 따라 큐 저장부(120)에 저장할 데이터 여부를 판단할 수 있다. 일 실시예에 있어서, 등급은 표준화된 데이터의 표준항목 ID를 기준으로 중요도에 따라 결정될 수 있으나 이에 한정되는 것은 아니다.The filtering unit 114 determines whether or not to store the standardized data in the standardization unit 113 in the queue storage unit 120 according to a predetermined filtering criterion. For example, the class is previously set according to the type of collected collected data, and the filtering unit 114 can determine whether to store data in the queue storage unit 120 according to the class. In one embodiment, the rating may be determined based on the importance of the standardized item data, but not limited thereto.

필터링유닛(114)은 큐 저장부(120)에 저장될 필요가 있는 데이터를 필터링하기 위한 기준이 저장된 필터링 기준 저장부(119)를 참조하여 표준화된 데이터를 필터링할 수 있다. 필터링 기준 저장부(119)는 별도의 구성으로 인터페이스 프로세싱부(110) 또는 다른 장치에 포함될 수 있다. 그러나, 본 발명은 이에 한정되지 않으므로 필터링유닛(114) 내부에 필터링 기준에 관한 정보가 저장되어 있을 수도 있다.The filtering unit 114 may filter the standardized data with reference to the filtering reference storage 119 in which the reference for filtering the data that needs to be stored in the queue storage unit 120 is stored. The filtering reference storage unit 119 may be included in the interface processing unit 110 or another apparatus in a separate configuration. However, since the present invention is not limited to this, information on the filtering criterion may be stored in the filtering unit 114.

전송유닛(115)은 필터링유닛(114)을 통해 필터링된 데이터를 큐 저장부(120)의 큐에 저장한다. 일 실시예에 있어서, 전송유닛(115)는 필터링된 데이터를 그룹 ID 또는 표준항목 ID별로 큐 저장부(120)의 큐(121)에 저장할 수 있다. The transmission unit 115 stores the filtered data through the filtering unit 114 in a queue of the queue storage unit 120. [ In one embodiment, the transmission unit 115 may store the filtered data in the queue 121 of the queue storage unit 120 for each group ID or standard item ID.

즉, 본 발명의 실시예에서는 서로 다른 형식을 갖는 각 공정 별 수집 데이터를 파싱 및 표준화하여 일정한 형식으로 변환하는 한편, 표준화된 데이터를 그룹 ID 또는 표준항목 ID 별로 저장하여 그룹 ID 또는 표준항목 ID 별로 데이터 확인이 가능하므로 연속공정으로부터 수집된 수집 데이터가 실시간으로 연계 처리될 수 있다.That is, in the embodiment of the present invention, the collected data for each process having different formats are parsed and standardized and converted into a certain format, and the standardized data is stored for each group ID or standard item ID, Since the data can be checked, the collected data collected from the continuous process can be processed in real time.

일 실시예에 있어서, 큐 저장부(120)는 복수개로 구성될 수 있다. 이러한 실시예에 따르는 경우, 전송유닛(115)이 복수개의 큐 저장부(120) 중 어느 하나의 큐 저장부(120)에 전처리된 수집 데이터를 저장하면 나머지 큐 저장부(120)에도 동일 데이터가 복제되어 저장된다. 이때, 전송유닛(115)은 복수의 큐 저장부(121)의 부하를 고려하여 부하가 적은 큐 저장부(121)에 수집 데이터를 저장할 수 있다.In one embodiment, the queue storage unit 120 may comprise a plurality of queues. According to this embodiment, when the transmission unit 115 stores the preprocessed collection data in any one of the plurality of the queue storage units 120, the same data is also stored in the remaining queue storage unit 120 Copied and stored. At this time, the transmission unit 115 may store the collected data in the queue storage unit 121 having a small load in consideration of the load of the plurality of queue storage units 121.

또한, 전송유닛(115)은 복수개의 큐 저장부(120)의 동작모드에 따라 수집 데이터의 저장 여부를 결정할 수 있다. 구체적으로, 전송유닛(115)은 복수개의 큐 저장부(120)의 동작모드가 대기모드인 경우 데이터의 저장을 중지할 수 있다. 이때, 복수개의 큐 저장부(120)의 동작모드는 복수개의 큐 저장부(120) 중 정상 동작하는 큐 저장부(120)의 개수에 기초하여 결정될 수 있다.In addition, the transmission unit 115 may determine whether to store the collected data according to the operation mode of the plurality of the queue storage units 120. [ More specifically, the transmission unit 115 can stop storing data when the operation mode of the plurality of queue storage units 120 is the standby mode. At this time, the operation modes of the plurality of queue storage units 120 may be determined based on the number of the queue storage units 120 that are normally operated among the plurality of queue storage units 120.

한편, 복수개의 큐 저장부(120)의 동작 모드가 대기 모드인 경우, 수신유닛(111)도 수집 데이터의 수신을 중지하게 된다. 즉, 큐 저장부(120)가 비정상적으로 동작하여 수집 데이터의 저장이 실시간으로 수행되지 않음에도 불구하고, 수신유닛(111)이 데이터 수집 장치(1)로부터 계속해서 수집 데이터를 수신할 경우 큐 저장부(120)의 장애로 인해 인터페이스 프로세싱부(110)의 수집 데이터 처리 동작에도 장애가 발생하게 된다.On the other hand, when the operation mode of the plurality of queue storage units 120 is the standby mode, the reception unit 111 also stops receiving the collected data. That is, when the receiving unit 111 continuously receives the collected data from the data collecting apparatus 1, even though the queue storing unit 120 operates abnormally and the collected data is not stored in real time, The failure of the interface processing unit 110 causes a failure in the collected data processing operation.

따라서, 본 발명의 실시예에서 인터페이스 프로세싱부(110)는 큐 저장부(120)의 동작 모드가 대기 모드인 경우, 수집 데이터의 수신 및 저장을 중지함으로써 장애 발생을 방지하고, 큐 저장부(120)가 정상 동작하면 다시 수집 데이터의 수신 및 저장을 수행할 수 있다.Accordingly, in the embodiment of the present invention, when the operation mode of the queue storage unit 120 is the standby mode, the interface processing unit 110 prevents the occurrence of a failure by stopping the reception and storage of the collected data, ), The reception and storage of the collected data can be performed again.

본 발명의 실시예에 따른 인터페이스 프로세싱부(110)는 수집 데이터 병합유닛(116), 메시지 레이아웃 저장부(117), 표준변환기준 저장부(118), 및 필터링 기준 저장부(119) 중 적어도 하나를 더 포함할 수 있다.The interface processing unit 110 according to the embodiment of the present invention includes at least one of the collected data merging unit 116, the message layout storing unit 117, the standard conversion reference storing unit 118, and the filtering reference storing unit 119 As shown in FIG.

수집 데이터 병합유닛(116)은 연속 공정에서의 처리 성능 향상을 위해 수집 데이터를 병합(Merge)하여 파싱유닛(112)으로 전달한다. 일 실시예에 있어서, 수집 데이터 병합유닛(116)은 일정시간 간격(예: 0.1초, 1초, 1분 등)으로 수신유닛(111)을 통해 수신되는 수집 데이터를 병합한다. 즉, 연속 공정의 특성상 아주 짧은 주기(예: 5㎳ 내지 20㎳)로 수집 데이터가 파싱유닛(112)으로 전달될 수 있는데, 이러한 짧은 주기로 파싱유닛(112)이 데이터를 연속해서 파싱하는 것은 전체 시스템의 실시간 처리 성능을 악화시킬 수 있다.The collection data merging unit 116 merges the collection data and transfers the collected data to the parsing unit 112 to improve the processing performance in the continuous process. In one embodiment, the collection data merge unit 116 merges the collection data received via the receiving unit 111 at certain time intervals (e.g., 0.1 second, 1 second, 1 minute, etc.). That is, due to the nature of the continuous process, the collection data may be delivered to the parsing unit 112 in a very short period (e.g., 5 ms to 20 ms), where the parsing unit 112 parses the data successively, The real-time processing performance of the system may deteriorate.

따라서, 수집 데이터 병합유닛(116)은 실시간 모니터링을 위해 필요한 수집 데이터는 병합하지 않고 파싱유닛(112)로 바로 전달하고, 나머지 수집 데이터는 일정시간 간격으로 병합하여 파일 형태로 생성한 후 파싱유닛(112)으로 전달할 수 있다. 이 때, 실시간 모니터링을 위해 필요한 수집 데이터인지 여부는 수집 데이터의 중요도에 따라 설정될 수 있으며, 일례로 이상이 발생할 경우 즉각적인 조치가 필요한 설비 또는 재료로부터 수집되는 수집 데이터를 실시간 모니터링을 위해 필요한 수집 데이터로 설정할 수 있다.Accordingly, the collected data merging unit 116 directly transfers the collected data required for real-time monitoring to the parsing unit 112 without merging, and merges the remaining collected data at predetermined time intervals into a file form, 112). In this case, whether or not the collected data is necessary for real-time monitoring can be set according to the importance of the collected data. For example, if abnormality occurs, collected data collected from facilities or materials requiring immediate action is collected, .

메시지 레이아웃 저장부(117)에는 수집 데이터 전문에 대한 레이아웃을 정의한 데이터가 저장되어 있으며, 파싱유닛(112)은 메시지 레이아웃 저장부(117)를 참조하여 바이너리 형태 또는 별도의 데이터 전송 기준으로 전달되는 수집 데이터를 해석하는 근거로 이용할 수 있다.The parsing unit 112 refers to the message layout storage unit 117 and stores the data in a binary format or a separate data transmission standard It can be used as a basis for interpreting data.

표준변환기준 저장부(118)에는 데이터 수집 장치(1)를 구성하는 다양한 센서 등의 항목 ID를 표준화한 표준항목 ID와, 각 표준항목 ID에 따른 기준 단위와 자리수가 저장되어 있다. 즉, 다양한 센서로부터 대용량의 수집 데이터가 수집될 때부터 미리 표준화된 항목 ID와 통일된 단위와 자리수를 갖는 수집 데이터가 수집되는 것이 바람직하지만, 각 공정의 특성에 따라 각 센서에서 수집되는 마이크로 데이터의 특성이 상이할 수 있으므로 본 발명의 실시예에서는 향후 분석에 효율적으로 활용하기 위해 사전에 다양한 센서 등의 항목 ID를 표준화한 표준항목 ID와, 각 표준항목 ID에 따른 기준 단위와 자리수가 저장해 둔다.In the standard conversion reference storage unit 118, a standard item ID obtained by standardizing item IDs of various sensors constituting the data collecting apparatus 1, and a reference unit and a digit number corresponding to each standard item ID are stored. That is, it is preferable that collecting data having a standardized item ID and a unit and a unit number which are standardized are collected from the time when a large amount of collected data is collected from various sensors. However, according to characteristics of each process, In the embodiment of the present invention, a standard item ID in which item IDs such as various sensors are standardized in advance, and a reference unit and a digit number corresponding to each standard item ID are stored in advance in order to efficiently utilize it in future analysis.

이러한 실시예에 따르는 경우, 상술한 표준화유닛(113)은 표준변환기준 저장부(118)를 참조하여 파싱된 데이터의 항목 ID를 표준항목 ID로 변경하고, 단위 및 자리수를 통일시킬 수 있다.According to this embodiment, the above-described standardization unit 113 can change the item ID of the parsed data to the standard item ID by referring to the standard conversion reference storage unit 118, and can unify the unit and the number of digits.

필터링 기준 저장부(119)에는 표준화된 데이터 중 큐 저장부(120)에 저장될 필요가 있는 데이터를 필터링하기 위한 기준이 저장되어 있으며, 상술한 필터링유닛(114)은 필터링 기준 저장부(119)를 참조하여 표준화된 데이터 중 큐 저장부(120)에 저장할 데이터를 필터링할 수 있다.The filtering reference storage 119 stores a criterion for filtering data that need to be stored in the queue storage unit 120 among the standardized data. The filtering unit 114 described above includes a filtering reference storage unit 119, It is possible to filter data to be stored in the queue storage unit 120 among the standardized data.

큐 저장부(120)는 인터페이스 프로세싱부(110)에서 전처리된 데이터를 실시간 처리 전에 임시로 보관하는 영역으로 큐(121)를 포함한다.The queue storage unit 120 includes a queue 121 as an area for temporarily storing data processed in the interface processing unit 110 before real-time processing.

큐(121)는 인터페이스 프로세싱부(110)에서 전처리된 데이터를 일정시간 동안 보관하기 위한 저장소로 데이터 유실 방지를 위해 메모리가 아닌 디스크 기반으로 데이터를 저장할 수 있다. 복수의 큐(121)에서 데이터를 저장하는 공간은 토픽(Topic)으로 구분될 수 있고, 동일 토픽 내의 파티션을 여러개 분리하여 병렬로 처리하는 것도 가능하다.The queue 121 is a storage for storing the preprocessed data in the interface processing unit 110 for a predetermined period of time and may store data on a disc basis rather than a memory in order to prevent data loss. The space for storing data in the plurality of queues 121 may be divided into a topic and a plurality of partitions within the same topic may be divided and processed in parallel.

일 실시예에 있어서, 분산병렬처리시스템(200)이 큐 저장부(120)로부터 페치하는 데이터 그룹 별로 고유한 그룹 ID가 할당될 수 있고, 이 고유한 그룹 ID 별로 데이터 페치 주소가 관리될 수 있어, 데이터를 순차적으로 읽고 쓰는 큐 형태로 데이터가 저장 및 제공될 수 있다.In one embodiment, a group ID unique to each data group fetched from the queue storage unit 120 may be allocated to the distributed parallel processing system 200, and the data fetch address may be managed for each unique group ID , And the data can be stored and provided in the form of a queue for reading and writing data sequentially.

상술한 실시예에서는 하나의 인터페이스 프로세싱부(110) 및 하나의 큐 저장부(120)를 통해 수집 데이터를 전처리하는 것으로 설명하였지만, 변형된 실시예에 있어서는, 도 3에 도시된 바와 같이 복수개의 인터페이스 프로세싱부(110) 및 복수개의 큐 저장부(120)를 통해 수집 데이터를 전처리할 수도 있다.In the above-described embodiment, it is described that the collected data is preprocessed through one interface processing unit 110 and one queue storage unit 120. However, in the modified embodiment, as shown in FIG. 3, Processing unit 110 and a plurality of the queue storage units 120. [0034] FIG.

이러한 실시예에 따르는 경우, 복수개의 인터페이스 프로세싱부(110)는 데이터 수집 장치(1)의 규모 및 공장의 물리적 위치 등에 따라 추가하는 형태로 확장될 수 있으며, 각각의 인터페이스 프로세싱부(110)는 고가용성(High Availability; HA)을 위해 이중화 구조로 구현될 수 있다.According to this embodiment, the plurality of interface processing units 110 can be extended in a form to be added in accordance with the scale of the data collecting apparatus 1 and the physical location of the factory, and each of the interface processing units 110 And can be implemented in a redundant structure for high availability (HA).

즉, 각각의 인터페이스 프로세싱부(110)는 운영 서버 및 백업 서버로 구비되어 평상시 운영 서버가 동작하다가 운영 서버에 장애가 발생할 경우 자동으로 백업 서버가 활성화됨으로써, 전술한 인터페이스 프로세싱부(110)의 동작이 중단되지 않고 연속적으로 수행될 수 있다.That is, each of the interface processing units 110 is provided as an operation server and a backup server, and when a normal operation server is operated and a failure occurs in the operation server, the backup server is automatically activated, Can be performed continuously without interruption.

또한, 복수개의 큐 저장부(120)는 클러스터링 구조로 구현됨으로써, 1대의 큐 저장부(120)에 데이터가 저장되면 다른 큐 저장부(120)로 데이터가 복제되어 어느 큐 저장부(120)에 장애가 발생할 경우에도 다른 큐 저장부(120)를 참조하여 서비스를 지속으로 제공할 수 있다. The plurality of queue storage units 120 are implemented in a clustering structure. When data is stored in one queue storage unit 120, data is copied to another queue storage unit 120, The service can be continuously provided by referring to the other queue storage unit 120 even when a failure occurs.

또한, 인터페이스 프로세싱부(110)는 수집된 수집 데이터에 대한 표준화가 완료되면 복수개의 큐 저장부(120) 중1대의 큐 저장부(120)를 선택하여 표준화된 데이터를 저장한다. 이 때, 데이터를 저장할 큐 저장부(120)를 선택하는 기준은 다양한 룰 중에서 선택될 수 있으며, 일례로 부하가 가장 낮은 큐 저장부(120)를 선택하거나, 순차적으로 선택하는 방식, 또는 데이터를 수집한 센서 별로 저장할 큐 저장부(120)를 사전에 미리 저장하여 선택하는 것이 가능하다.In addition, when standardization of collected collected data is completed, the interface processing unit 110 selects one of the plurality of queue storage units 120 and stores the standardized data. In this case, a criterion for selecting the queue storage unit 120 for storing data may be selected from various rules. For example, a method of selecting a queue storage unit 120 having the lowest load or sequentially selecting the queue storage unit 120, It is possible to previously store and select the queue storage unit 120 to be stored for each collected sensor.

다시 도 1을 참조하면, 분산병렬처리시스템(200)은 인터페이스 장치(100)에서 표준화된 표준화 데이터에 공정 식별자를 매핑하고, 각 공정 별로 수집된 수집 데이터들의 연계 처리를 위해 각 공정에서의 매핑 데이터들을 정렬한다. 이하, 본 발명에 따른 분산병렬처리시스템(200)을 도 4를 참조하여 보다 구체적으로 설명한다.1, the distributed parallel processing system 200 maps process identifiers to standardized standardized data in the interface device 100, and performs mapping process of collected data collected in each process, . Hereinafter, the distributed parallel processing system 200 according to the present invention will be described in more detail with reference to FIG.

도 4는 본 발명의 일 실시예에 따른 분산병렬처리시스템(200)의 구성을 보여주는 도면이다. 도 4에 도시된 바와 같이, 본 발명에 따른 분산병렬처리시스템(200)은 실시간 프로세싱부(210) 및 메모리부(220)를 포함한다.FIG. 4 is a diagram illustrating a configuration of a distributed parallel processing system 200 according to an embodiment of the present invention. 4, the distributed parallel processing system 200 according to the present invention includes a real-time processing unit 210 and a memory unit 220.

실시간 프로세싱부(210)는 인터페이스 시스템(100)에 의해 표준화된 데이터에 공정 식별자를 매핑하여 매핑 데이터를 생성하고, 조업-설비-품질 등 영역간 데이터를 연계분석할 수 있도록 매핑 데이터를 정렬한다. The real-time processing unit 210 generates mapping data by mapping the process identifier to the data standardized by the interface system 100, and arranges the mapping data so that the inter-area data such as operation-facility-quality can be linked and analyzed.

이를 위해, 본 발명에 따른 실시간 프로세싱부(210)는 도 4에 도시된 바와 같이, 페치(fetch) 수행모듈(211), 로딩 수행모듈(212), 공정매핑 수행모듈(213), 데이터 보정 수행모듈(215), 및 데이터 정렬 수행모듈(216)을 포함한다. 또한, 실시간 프로세싱부(210)는 설비 이상감지 수행모듈(217) 및 품질 이상감지 수행모듈(218)을 더 포함할 수 있다.4, the real-time processing unit 210 includes a fetch performing module 211, a loading performing module 212, a process mapping performing module 213, a data correcting module 212, A module 215, and a data alignment performing module 216. [ The real-time processing unit 210 may further include an equipment abnormality detection execution module 217 and a quality abnormality detection execution module 218.

일 실시예에 있어서, 도 4에 도시된 복수개의 수행모듈(211~218)들은 실시간 프로세싱부(210)에 배포되어 각각의 기능을 구현하는 어플리케이션(Application)으로 구현될 수 있고, 이러한 어플리케이션들이 실시간 프로세싱부(210)에 작업 공간을 생성한 후 복수개의 쓰레드(Thread)를 생성함으로써 각 수행모듈(211~218) 별로 할당된 기능들을 수행하게 된다.In one embodiment, the plurality of execution modules 211 to 218 shown in FIG. 4 may be implemented as an application that is distributed to the real-time processing unit 210 and implements each function, After creating a work space in the processing unit 210, a plurality of threads are created to perform functions assigned to each of the execution modules 211 to 218.

이하, 복수개의 수행모듈(211~218) 각각의 기능에 대해 구체적으로 설명한다.Hereinafter, functions of each of the plurality of execution modules 211 to 218 will be described in detail.

페치 수행모듈(211)은 인터페이스 시스템(100)의 큐(121)로부터 표준화된 데이터를 독출하여 메모리부(220)의 수집데이터 저장부(221)에 저장한다. 일 실시예에 있어서, 페치 수행모듈(211)은 큐 저장부(120)에 포함된 복수의 큐(121) 각각에 대해서 이전에 데이터를 조회한 위치 정보를 기억함으로써, 이전까지 읽어 들인 데이터의 다음 데이터를 읽어 들일 수 있다.The fetch execution module 211 reads the standardized data from the queue 121 of the interface system 100 and stores it in the collected data storage unit 221 of the memory unit 220. In one embodiment, the fetch execution module 211 stores location information of each of a plurality of queues 121 included in the queue storage unit 120, The data can be read.

이때, 인터페이스부(110)는 연속공정으로부터 수집된 수집 데이터의 연계 처리를 위해 표준화된 수집 데이터를 그룹 ID 또는 표준항목 ID 별로 큐(121)에 저장하므로, 페치 수행모듈(211)은 큐(121)에 저장된 표준화된 데이터를 그룹 ID 또는 표준항목 ID 별로 독출할 수 있다.At this time, the interface unit 110 stores the collected collected data in the queue 121 for each group ID or standard item ID for the linkage processing of the collected data collected from the continuous process, ) Can be read by group ID or standard item ID.

로딩 수행모듈(212)은 수집데이터 저장부(221)에 저장된 데이터를 로딩하여 공정매핑 수행모듈(213)으로 전달한다.The loading performing module 212 loads the data stored in the collected data storing unit 221 and transfers the loaded data to the process mapping executing module 213.

공정매핑 수행모듈(213)은 로딩 수행모듈(212)로부터 전달받은 표준화된 데이터에 해당 데이터가 수행된 공정을 식별하기 위한 공정 식별자를 매핑하고, 매핑 데이터를 데이터 보정 수행모듈(215)로 전달한다.The process mapping execution module 213 maps a process identifier for identifying a process in which the corresponding data is performed to the standardized data transmitted from the loading execution module 212 and transmits the mapping data to the data correction execution module 215 .

일 실시예에 있어서, 공정매핑 수행모듈(213)은 각 공정을 수행하는 설비의 설비 식별자 또는 해당 설비에 의해 가공되는 재료의 재료 식별자 중 적어도 하나를 공정 식별자로써 표준화된 데이터에 매핑할 수 있다. 이를 위해, 매핑 수행모듈(213)은 설비매핑 수행모듈(213a) 및 재료매핑 수행모듈(213b)을 포함할 수 있다.In one embodiment, the process mapping module 213 may map at least one of a facility identifier of a facility performing each process or a material identifier of a material processed by the facility to standardized data as a process identifier. To this end, the mapping performing module 213 may include a facility mapping performing module 213a and a material mapping performing module 213b.

설비매핑 수행모듈(213a)은 로딩 수행모듈(212)에 의해 로딩된 표준화된 데이터에 해당 데이터가 수집된 설비 식별자를 매핑한다. 일 실시예에 있어서, 설비 식별자는 각 설비 별로 부여된 설비 번호일 수 있다.The facility mapping performing module 213a maps the facility identifier to which the corresponding data is collected to the standardized data loaded by the loading performing module 212. [ In one embodiment, the facility identifier may be a facility number assigned to each facility.

일 실시예에 있어서 설비매핑 수행모듈(213a)은 수집 데이터의 수집 시간 및 수집 데이터를 수집한 센서의 속성 정보에 기초하여 수집 데이터가 발생한 설비의 설비 식별자를 추출할 수 있다. 이 때, 센서의 속성 정보는 측정한 속성을 식별하기 위한 정보로서 전술한 바와 같이 표준항목 ID를 포함할 수 있으나, 본 발명은 이에 한정되지 않는다.In one embodiment, the facility mapping performing module 213a can extract the facility identifier of the facility where the collected data is generated based on the collection time of the collected data and the property information of the sensor that collected the collected data. At this time, the attribute information of the sensor may include the standard item ID as the information for identifying the measured attribute as described above, but the present invention is not limited thereto.

즉, 전술한 바와 같이, 인터페이스 장치(100)에 의해 표준화된 데이터는 표준항목 ID, 수집된 시간, 및 표준화된 단위와 자리수를 갖는 단일 측정값을 포함하는데, 각 설비에 의해 수행되는 작업 별로 동작하는 시간이 정해져 있으므로 설비매핑 수행모듈(213a)은 수집 데이터의 수집 시간 정보에 기초하여 해당 시간에 동작한 설비를 확인할 수 있다. 또한, 센서의 속성 정보에는 해당 센서가 측정한 설비의 설비 식별자 정보가 포함되어 있으므로, 설비매핑 수행모듈(213a)은 특정 시간에 특정한 표준항목 ID를 갖는 센서가 측정한 설비의 설비 식별자를 추출할 수 있다.That is, as described above, the data standardized by the interface device 100 includes a single item having a standard item ID, a collected time, and a standardized unit and a number of digits, The facility mapping performing module 213a can confirm the facility operated at the relevant time based on the collection time information of the collected data. Since the equipment attribute information of the facility measured by the sensor is included in the attribute information of the sensor, the facility mapping performing module 213a extracts the facility identifier of the facility measured by the sensor having the standard item ID specified at a specific time .

그 결과, 설비 식별자가 매핑된 매핑 결과 데이터는 표준항목 ID, 수집된 시간, 설비 식별자 및 단일 측정값을 포함하게 된다.As a result, the mapping result data to which the equipment identifier is mapped includes the standard item ID, the collected time, the equipment identifier, and the single measurement value.

재료매핑 수행모듈(213b)은 설비 식별자가 매핑된 매핑 데이터에 해당 설비 식별자에 대응되는 설비를 통해 가공된 재료의 재료 식별자를 매핑한다. 일 실시예에 있어서, 재료 식별자는 각 재료 별로 부여되어 있는 재료번호일 수 있다. 상술한 실시예에 있어서 재료매핑 수행모듈(213b)은 설비 식별자가 매핑되어 있는 매핑 데이터에 재료 식별자를 매핑하는 것으로 설명하였지만, 설 변형된 실시예에 있어서 설비 식별자는 센서에 의해 수집된 데이터에 미리 포함되어 있을 수 있으므로, 재료매핑 수행모듈(213b)은 로딩 수행모듈(212)로부터 전달된 표준화된 데이터에 재료 식별자를 매핑할 수도 있다.The material mapping performing module 213b maps the material identifier of the material processed through the equipment corresponding to the equipment identifier to the mapping data to which the equipment identifier is mapped. In one embodiment, the material identifier may be a material number assigned to each material. In the embodiment described above, the material mapping execution module 213b has been described as mapping the material identifier to the mapping data to which the equipment identifier is mapped. However, in the illustrated embodiment, The material mapping performing module 213b may map the material identifier to the standardized data transmitted from the loading performing module 212. [

재료매핑 수행모듈(213b)은 각 공정에서 수행되는 작업 지시 정보에 기초하여 매핑 데이터에 매핑되어 있는 설비 식별자에 대응되는 설비에서 가공된 재료의 재료 식별자를 추출할 수 있다.The material mapping execution module 213b can extract the material identifier of the material processed in the equipment corresponding to the equipment identifier mapped to the mapping data based on the work instruction information performed in each process.

예컨대, 제1공정의 제1 설비를 통해 제1 재료 식별자가 부여되어 있는 제1재료가 생성되는 경우 재료매핑 수행모듈(213b)은 제1 설비의 설비 식별자가 매핑되어 있는 매핑 데이터에 제1 재료 식별자를 추가로 매핑한다. 또한, 제2공정을 수행하는 제2 설비를 통해 제2 재료 식별자가 부여되어 있는 제2재료가 생성되는 경우, 재료매핑 수행모듈(213b)은 제2 설비의 설비 식별자가 매핑되어 있는 매핑 데이터에 제2 재료 식별자를 추가로 매핑한다.For example, when the first material having the first material identifier is generated through the first facility of the first process, the material mapping performing module 213b performs a mapping process for mapping the first identifier The identifier is further mapped. When the second material having the second material identifier is generated through the second facility performing the second process, the material mapping performing module 213b performs mapping to the mapping data in which the equipment identifier of the second facility is mapped And further maps the second material identifier.

설비매핑 수행모듈(213a)에 의해 설비 식별자가 매핑된 데이터는 표준항목 ID, 수집시간, 설비 식별자, 및 표준화된 단위와 자리수를 갖는 단일 측정값을 포함하므로, 재료매핑 수행모듈(213b)에서 출력되는 매핑 데이터는 표준항목 ID, 수집된 시간, 설비 식별자, 재료 식별자, 및 단일 측정값을 포함하게 된다.Since the data to which the equipment identifier is mapped by the equipment mapping performing module 213a includes a single measurement value having the standard item ID, the collection time, the equipment identifier, and the standardized unit and the digit, the material mapping execution module 213b outputs The mapping data comprising the standard item ID, the collected time, the equipment identifier, the material identifier, and the single measurement value.

이와 같이, 본 발명의 실시예에 따른 분산병렬처리 시스템(200)은 표준화된 데이터에 설비 식별자 및 재료 식별자 중 적어도 하나를 포함하는 공정 식별자를 매핑함으로써, 각 데이터 별로 어떠한 재료가 어떠한 설비를 통과하는 과정에서 수집된 데이터인지 확인할 수 있고, 이러한 데이터의 추적을 통해 각 공정들간의 연계분석이 가능하다.In this way, the distributed parallel processing system 200 according to the embodiment of the present invention maps the process identifier including at least one of the equipment identifier and the material identifier to the standardized data, It is possible to confirm that the data is collected during the process.

또한, 인터페이스 시스템(100)을 통해 수집 데이터가 표준화되기 때문에 분산병렬처리 시스템(200)은 정형화된 구조를 갖는 표준화된 데이터에 설비 식별자와 재료 식별자를 매핑할 수 있으므로 시간 지연 없이 대용량의 데이터를 실시간으로 처리할 수 있다.In addition, since the collected data is standardized through the interface system 100, the distributed parallel processing system 200 can map the equipment identifier and the material identifier to the standardized data having the structured structure, . ≪ / RTI >

한편, 데이터 수집 장치(1)를 통해 수집된 수집 데이터는 설비가 재료를 가공하고 있는 상태에서 수집된 데이터인 부하 데이터 및 설비가 재료를 가공하고 있지 않는 상태에서 수집된 데이터인 무부하 데이터를 포함할 수 있다.On the other hand, the collected data collected through the data collecting apparatus 1 includes load data, which is data collected while the equipment is processing the material, and no-load data, which is data collected while the equipment is not processing the material .

무부하 데이터의 경우, 설비 식별자가 매핑된 수집 데이터에 추가로 매핑할 재료 식별자가 없으므로, 재료매핑 수행유닛(213b)은 설비 식별자가 매핑된 매핑 데이터를 바로 정렬 데이터 저장부(222)에 저장할 수 있다. 이러한 경우 부하 데이터와 무부하 데이터는 정렬 데이터 저장부(222)에서 분리되어 저장될 수 있다.In the case of no-load data, since there is no material identifier to be further mapped to the collection data to which the equipment identifier is mapped, the material mapping performing unit 213b can directly store the mapping data to which the equipment identifier is mapped in the sorting data storing unit 222 . In this case, the load data and the no-load data may be stored separately in the alignment data storage unit 222. [

데이터 보정 수행모듈(215)은 공정 식별자가 매핑된 매핑 데이터 중 누락된 데이터가 있는 경우 누락된 데이터를 추가하여 매핑 데이터를 보정한다. 일 실시예에 있어서, 데이터 보정 수행모듈(215)은 매핑 데이터의 보정을 위해, 매핑 데이터에 포함된 수집 시간을 미리 정해진 수집 주기에 일치시킬 수 있다. 즉, 데이터 수집 장치(1)를 통해 미리 정해진 수집 주기로 수집 데이터가 발생해야 하는데 그렇지 않은 경우가 있을 수 있으므로, 데이터 보정 수행모듈(215)은 각 매핑 데이터의 수집 시간을 수집 주기에 일치시킨다. The data correction execution module 215 corrects the mapping data by adding missing data when there is missing data among the mapping data to which the process identifier is mapped. In one embodiment, the data correction performing module 215 may match the collection time included in the mapping data to a predetermined collection period, for correction of the mapping data. That is, since the collected data should be generated at a predetermined collection period through the data collection device 1, the data correction execution module 215 matches the collection time of each of the mapped data to the collection period.

예를 들어, 수집 주기를 20ms로 수집 데이터를 저장하는 경우 데이터 수집 장치(1)는 20ms 마다 수집 데이터를 발생시켜야 하므로, 데이터 보정 수행모듈(215)은 수집시간이 15시01분11초0005ms인 매핑 데이터의 수집시간을 15시01분11초0000ms로 변경하고, 수집시간이 15시01분11초0050ms인 매핑 데이터의 수집 시간을 15시01분11초0040ms로 변경할 수 있다.For example, when the collection period is 20 ms, the data collection device 1 must generate the collection data every 20 ms. Therefore, the data correction execution module 215 determines that the collection time is 15:01:01, The collection time of the mapping data is changed to 15:01:11 0000 ms and the collection time of the mapping data having the collection time of 15:01:11 0050 ms can be changed to 15:01:11 0040 ms.

그리고, 이와 같이 수집 주기가 20ms인 경우 20ms로 수집 데이터가 전달되어야 하는데, 일부 수집 데이터가 누락된 경우 각각의 수집 데이터들이 수집된 수집 주기가 20ms 보다 길게 된다. 따라서, 데이터 보정 수행모듈(215)은 누락이 발생한 데이터가 수집되었어야 하는 영역과 가장 인접한 위치에서의 매핑 데이터 또는 누락이 발생한 시간과 인접한 수집 시간의 매핑 데이터를 이용하여 누락된 데이터를 보정한다.If the collection period is 20 ms, the collected data should be transmitted in 20 ms. If some collected data is missing, the collected period of each collected data becomes longer than 20 ms. Therefore, the data correction execution module 215 corrects the missing data using the mapping data at the closest position to the area where the missing data should be collected, or the mapping data of the adjacent collection time with the time at which the missing occurred.

데이터 정렬 수행모듈(216)은 데이터 보정 수행모듈(215)에 의해 보정된 매핑 데이터 또는 공정 식별자가 매핑된 매핑 데이터를 각 공정의 데이터들 간의 연계처리를 위해 정렬한다.The data alignment performing module 216 aligns the mapping data corrected by the data correction executing module 215 or the mapping data in which the process identifier is mapped, for the linking process between the data of each process.

일 실시예에 있어서, 데이터 정렬 수행모듈(216)은 동일한 재료 식별자가 매핑되어 있는 매핑 데이터들을 수집 시간에 따라 순차적으로 정렬한다. 즉, 데이터 정렬 수행모듈(216)은 연속공정에서 수집된 수집 데이터 간의 연계처리를 위해 매핑 데이터를 동일한 재료 식별자를 갖는 재료 단위로 시간 순서에 따라 정렬할 수 있다.In one embodiment, the data sorting performing module 216 sequentially sorts the mapping data in which the same material identifier is mapped, according to the collection time. That is, the data sorting performing module 216 may sort the mapping data in chronological order in the material unit having the same material identifier for the linkage processing between collected data collected in the continuous process.

데이터 정렬 수행모듈(216)은 시간 순서에 따라 정렬된 매핑 데이터들을 동일한 재료 식별자에 대응되는 재료 상에서 해당 데이터가 수집된 위치를 기준으로 정렬한다.The data sorting performing module 216 arranges the mapping data sorted according to the time order on the basis of the position where the corresponding data is collected on the material corresponding to the same material identifier.

매핑 데이터들의 정렬을 위해, 데이터 정렬 수행모듈(216)은 재료의 길이, 재료의 이동 속도, 및 수집 데이터의 수집 주기 중 적어도 하나를 이용하여 상기 재료 상에서 상기 시간에 따라 정렬된 수집 데이터의 수집 위치를 결정할 수 있다. 예컨대, 데이터 정렬 수행 모듈(216)은 재료의 이동 속도와 수집 데이터의 수집 주기를 곱한 값 및 재료의 전체 길이를 기준으로 재료 상에서 각 주기 별로 수집 데이터가 수집된 수집 위치를 결정할 수 있다. 이에 따라, 시간에 따라 정렬된 매핑 데이터는 재료 상에서 일 방향으로 소정의 위치에서 측정된 데이터로 각각 정렬될 수 있다.For the alignment of the mapping data, the collation performing module 216 may use at least one of the length of the material, the speed of movement of the material, and the collection period of the collection data to collect the collected data on the material Can be determined. For example, the collation performing module 216 may determine the collection location where the collection data is collected for each cycle on the material, based on the product of the movement speed of the material and the collection period of the collection data and the total length of the material. Thus, the mapping data arranged in time can be respectively sorted into data measured at a predetermined position in one direction on the material.

데이터 정렬 수행모듈(216)은 서로 다른 수집 주기로 제1 공정 및 제2공정으로부터 각각 수집된 수집 데이터의 연계 처리를 위해, 각 재료 상에서 미리 정해진 간격으로 설정된 기준점들과 각 매핑 데이터의 수집 위치 간의 거리를 기초로 각 기준점들에서의 측정값을 산출하고, 산출된 측정값을 기초로 각 기준점들에서의 기준 데이터를 생성한다.The data sorting performing module 216 calculates the distance between the reference points set at predetermined intervals on each material and the collection position of each mapping data for the association processing of the collection data collected from the first process and the second process, , And generates reference data at each reference point based on the calculated measurement value.

데이터 정렬 수행모듈(216)은 시간에 따라 정렬된 수집 데이터 및 기준점들에서의 기준 데이터들을 재료 상에서 일 방향으로 순차적으로 정렬한다. 데이터 정렬 수행모듈(216)은 정렬된 데이터를 메모리부(220)의 정렬데이터 저장부(222)에 저장한다. 일 실시예에 있어서, 일 방향은 재료의 길이 방향, 재료의 폭 방향, 및 재료의 두께 방향 중 적어도 하나가 될 수 있으나, 본 발명은 이에 한정되지 않는다.The collation performing module 216 sequentially sorts the reference data at the reference points and the collected data arranged in time in one direction on the material. The data sorting performing module 216 stores the sorted data in the sorting data storing unit 222 of the memory unit 220. In one embodiment, one direction may be at least one of a longitudinal direction of the material, a width direction of the material, and a thickness direction of the material, but the present invention is not limited thereto.

제1공정 및 제2공정에서는 서로 다른 수집 주기로 각각의 수집 데이터가 수집되고 제1공정을 통과하는 재료의 길이, 폭, 또는 두께가 제2공정을 통과하는 재료의 길이, 폭 또는 두께와 서로 다를 수 있기 때문에, 각 공정 상에서 재료의 특정 영역에서 측정되는 측정값의 전후 관계 변화를 연계하여 관리하기 어려울 수 있다. 따라서, 본 발명에서는 제1 공정 및 제2공정으로부터 수집된 수집 데이터들간의 연계 처리를 위해, 각 공정에서 가공된 재료 상에서 설정된 복수개의 기준점에서의 측정값을 산출하고, 각 재료 별 기준점에서의 측정값을 이용하여 각 공정들간의 매핑 데이터들을 연계하여 관리한다.In the first and second steps, each collected data is collected at different collection periods and the length, width, or thickness of the material passing through the first process is different from the length, width, or thickness of the material passing through the second process It may be difficult to manage the change in the relationship of the measured values measured in a specific region of the material on each process in conjunction with each other. Therefore, in the present invention, in order to perform an association process between the collected data collected from the first process and the second process, measurement values at a plurality of reference points set on the material processed in each process are calculated, and measurement Value is used to manage the mapping data between each process.

이하에서는 데이터 정렬 수행 모듈(216)이 기준 데이터들을 재료 상에서 길이 방향으로 정렬하는 예를 구체적으로 설명한다.Hereinafter, an example in which the data alignment performing module 216 aligns the reference data in the longitudinal direction on the material will be described in detail.

제1공정에서 가공된 제1 재료의 길이 방향으로 제1 기준점들이 소정 간격으로 설정되어 있고, 제2공정에서 가공된 제2 재료의 길이 방향으로 제2 기준점들이 소정의 간격으로 설정되어 있다. 이러한 경우, 제1 기준점들에서의 제1 기준 데이터에는 제1 재료에 대응되는 제1 재료 식별자가 매핑되어 있고, 제2 기준점들에서의 제2기준 데이터들에는 제2 재료에 대응되는 제2 재료 식별자가 매핑되어 있다. 따라서, 각 재료 별로 재료 식별자가 매핑되어 있는 재료 가계도(미도시) 상에서 제1재료 식별자 및 제2 식별자에 기초하여 제1 기준 데이터들과 제2 기준 데이터들이 연계된다.The first reference points are set at predetermined intervals in the longitudinal direction of the first material processed in the first process and the second reference points are set at predetermined intervals in the length direction of the processed second material in the second process. In this case, a first material identifier corresponding to the first material is mapped to the first reference data at the first reference points, and a second material identifier corresponding to the second material is mapped to the second reference data at the second reference points. The identifier is mapped. Accordingly, the first reference data and the second reference data are linked based on the first material identifier and the second identifier on the material pedestal (not shown) on which the material identifier is mapped for each material.

즉, 재료 가계도에는 각 재료 시겹라작 트리 형태로 연결되어 있어, 이러한 재료 가계도를 참조함으로써 제1공정 및 제2공정을 순차적으로 통과하면서 생성되는 재료에게 할당된 재료 식별자를 통해 각 공정의 매핑 데이터들이 서로 연계될 수 있다.That is, the material family diagram is connected in the form of a material seed layer tree. By referring to the material family diagram, mapping data of each process through the material identifiers assigned to the materials generated while sequentially passing through the first and second processes Can be linked to each other.

데이터 정렬 수행모듈(216)은 상기와 같이 재료의 길이 방향으로 정렬된 매핑 데이터 및 기준 데이터들을 메모리부(220)의 정렬데이터 저장부(222)에 저장한다. The data sorting module 216 stores the mapping data and the reference data aligned in the longitudinal direction of the material in the sorting data storage unit 222 of the memory unit 220 as described above.

일례로, 데이터 정렬 수행모듈(216)은 재료 가계도에 기초하여 서로 연계되는 재료 식별자를 갖는 정렬 데이터들을 정렬데이터 저장부(222)의 동일한 공간에 저장할 수 있다. 이를 통해, 수집 데이터를 연계 처리할 때 동일한 저장 공간에서 간단하게 연계된 수집 데이터들을 함께 이용할 수 있게 된다.In one example, the collation performing module 216 may store alignment data having material identifiers associated with each other based on the material family diagram in the same space of the alignment data store 222. [ This makes it possible to utilize collectively collected collected data together in the same storage space when linking collected data.

또한, 데이터 정렬 수행모듈(216)은 매핑 데이터를 시간에 따라 정렬한 제1정렬 데이터, 매핑 데이터를 수집 위치를 기준으로 정렬한 제2정렬 데이터, 및 기준점들에서의 기준 데이터들을 정렬데이터 저장부(222)에 분리하여 저장할 수 있다.In addition, the data sorting performing module 216 stores first sorting data in which the mapping data are sorted in time, second sorting data in which mapping data is sorted in the collecting position, and reference data in reference points, (222).

즉, 데이터 정렬 수행모듈(216)은 제1 정렬 데이터, 제2 정렬 데이터, 및 기준 데이터들을 별도의 저장 장소에 각각 저장함으로써, 실제 측정된 값에 해당하는 제1정렬 데이터와 제2정렬 데이터를 시간 및 수집 위치를 기준으로 별도로 이용하도록 하고, 실제 데이터를 바탕으로 산출된 가상의 값에 해당하는 기준 데이터를 별도로 이용하도록 할 수 있으나, 본 발명은 이에 한정되지 않는다.That is, the data sorting performing module 216 stores the first sorting data, the second sorting data, and the reference data in a separate storage location, respectively, so that the first sorting data and the second sorting data corresponding to the actually measured values The time and the collecting position may be separately used, and the reference data corresponding to the virtual value calculated based on the actual data may be separately used, but the present invention is not limited thereto.

또한, 데이터 정렬 수행모듈(216)은 정렬 결과를 대용량 빅 데이터 분석 시스템(300)에서 이용할 수 있도록 정렬 완료를 알리는 이벤트를 완료이벤트 저장부(223)에 저장한다.In addition, the data sorting execution module 216 stores an event indicating completion of sorting in the completion event storage unit 223 so that the sorting result can be used in the large data analysis system 300. [

이와 같이, 실시간 프로세싱부(210)는 수집 데이터에 설비 식별자 또는 재료 식별자와 같은 공정 식별자를 매핑하고, 매핑 데이터를 정렬함으로써 수집 데이터가 연계 처리될 수 있도록 한다.As such, the real-time processing unit 210 maps the process identifier such as the equipment identifier or the material identifier to the collected data, and arranges the mapping data so that the collected data can be processed.

설비이상감지 수행모듈(217)은 설비매핑 수행모듈(213a)로부터 설비 식별자가 매핑된 데이터를 전달받고, 미리 설정된 설비이상판단기준에 따라 설비이상여부를 판단한다. 판단결과, 특정 설비에 이상이 발생한 것으로 판단되면, 설비이상감지 수행모듈(217)은 메모리부(220)의 이상감지결과 저장부(224)에 판단 결과를 저장한다.The equipment abnormality detection execution module 217 receives the data to which the equipment identifier is mapped from the equipment mapping execution module 213a and determines whether or not the equipment abnormality is determined according to a predetermined equipment abnormality criterion. If it is determined that an abnormality has occurred in the specific equipment, the equipment abnormality detection execution module 217 stores the determination result in the abnormality detection result storage unit 224 of the memory unit 220 as a result of the determination.

이 때, 설비의 이상여부를 판단하기 위한 설비이상판단기준의 일례로 수집된 수집 데이터가 소정의 기준값을 벗어난 형태로 소정의 시간 동안 지속되는 경우 설비에 이상이 발생한 것으로 판단하도록 설정될 수 있으나, 본 발명은 이에 한정되지 않는다.At this time, if it is determined that an abnormality has occurred in the facility when the collected data collected for the predetermined period of time exceeds a predetermined reference value, for example, The present invention is not limited thereto.

품질이상감지 수행모듈(218)은 정렬 데이터 저장부(222)로부터 정렬 데이터를 로딩하고, 정렬 데이터를 기초로 미리 설정된 품질이상판단기준에 따라 품질이상여부를 판단한다. 판단결과, 특정 재료의 품질에 이상이 발생한 것으로 판단되면, 품질이상감지 수행모듈(218)은 메모리부(220)의 이상감지결과 저장부(224)에 판단 결과를 저장한다.The quality abnormality detection execution module 218 loads the alignment data from the alignment data storage 222 and determines whether the quality abnormality is abnormal according to a predetermined quality abnormality criterion based on the alignment data. If it is determined that an abnormality has occurred in the quality of the specific material, the quality abnormality detection execution module 218 stores the determination result in the abnormality detection result storage unit 224 of the memory unit 220.

일 실시예에 있어서, 품질이상감지 수행모듈(218)은 수집 데이터의 평균 및 오차 예측 등의 작업을 통해 품질이상여부 판단식의 레퍼런스로 활용하기 위한 매크로 데이터를 생성하고, 수집 데이터를 품질이상여부 판단식에 입력하여 그 결과에 따라 품질이상을 판단할 수 있다.In one embodiment, the quality anomaly detection execution module 218 generates macro data for use as a reference of the quality abnormality determination equation through operations such as averaging and error prediction of collected data, It is possible to determine the quality abnormality based on the result.

이와 같이, 본 발명에 따른 분산병렬처리시스템(200)은 각 공정들간의 연계분석을 위해 표준화 데이터를 재료 단위로 정렬하는 한편, 수집 데이터 또는 정렬 데이터를 바탕으로 실시간으로 설비 또는 재료의 품질에 이상이 발생하는지 모니터링함으로써, 설비 고장을 미리 예측할 수 있다.In this way, the distributed parallel processing system 200 according to the present invention arranges the standardized data on a material basis for the linkage analysis between the respective processes, and on the basis of the collected data or the sort data, , It is possible to predict in advance a facility failure.

한편, 실시간 프로세싱부(210)는 설비정보 저장부(219a), 작업지시정보 저장부(219b), 센서속성정보 저장부(219c), 및 품질판정모델 저장부(219d)를 더 포함할 수 있다.Meanwhile, the real-time processing unit 210 may further include a facility information storage unit 219a, a work instruction information storage unit 219b, a sensor attribute information storage unit 219c, and a quality determination model storage unit 219d .

설비정보 저장부(219a)에는 설비가 어느 공장, 어느 공정의 어느 위치에 존재하는지에 대한 정보, 설비에 대한 정비이력 정보, 데이터에 매핑할 설비정보와 각 설비 별로 설비의 이상여부를 판단하기 위한 설비이상판단기준이 저장되어 있다.The facility information storage unit 219a stores information on which plant or which position the facility is located, maintenance history information on the facility, equipment information to be mapped to data, The equipment abnormality judgment criterion is stored.

작업지시정보 저장부(219b)에는 MES(Manufacturing Execution System) 시스템의 작업에 대한 지시정보 및 해당 작업으로 특정 설비에서 발생하는 재료 식별자 정보, 해당 작업 수행에 대한 품질지표, 및 데이터에 매핑할 재료정보와 각 재료 별로 재료의 품질이상여부를 판단하기 위한 품질이상판단기준이 저장되어 있다.The work instruction information storage unit 219b stores instruction information for a work in the MES (Manufacturing Execution System) system, material identifier information generated in a specific facility as the work, a quality index for performing the work, and material information And a quality abnormality judgment criterion for judging whether the quality of the material is abnormal or not is stored for each material.

센서속성정보 저장부(219c)에는 센서에서 수집되는 데이터의 종류, 단위, 수집주기, 해당 설비 식별자, 공장/공정 등의 정보가 저장되며, 특히 설비 또는 재료를 측정하는 센서의 항목 ID가 저장되어 있다. In the sensor attribute information storage unit 219c, information such as the type, unit, collection period, data of the equipment identifier, factory / process, and the like collected by the sensor are stored. have.

품질판정모델 저장부(219d)에는 설비이상판단기준 및 품질이상판단기준이 미리 저장되어 있으므로, 품질이상감지 수행모듈(218)은 품질판정모델 저장부(219d)를 참조하여 품질이상을 판단할 수 있다.Since the equipment abnormality criterion and the quality abnormality criterion are stored in advance in the quality judgment model storage unit 219d, the quality abnormality sensing execution module 218 can refer to the quality judgment model storage unit 219d to judge quality abnormality have.

메모리부(220)는 실시간 프로세싱부(210)에서 생성되는 다양한 데이터를 저장하되, 구체적으로 수집데이터 저장부(221), 정렬데이터 저장부(222), 완료이벤트 저장부(223), 및 이상감지결과 저장부(224)를 포함한다.The memory unit 220 stores various data generated by the real-time processing unit 210 and specifically includes a collection data storage unit 221, an alignment data storage unit 222, a completion event storage unit 223, And a result storage unit 224.

수집데이터 저장부(221)에는 페치 수행모듈(211)를 통해 큐(121)에서 독출한 표준화된 데이터 즉, 매핑, 보정, 및 정렬이 이루어지기 이전의 표준화된 데이터가 표준항목 ID 별로 저장되고, 로딩 수행모듈(212)은 수집데이터 저장부(221)로부터 표준화된 데이터를 로딩하여 설비매핑 수행모듈(213a)로 전달한다.The standardized data read from the queue 121 through the fetch performing module 211 before the mapping, correction, and sorting are stored are stored in the collected data storage unit 221 according to standard item IDs, The loading performing module 212 loads the standardized data from the collected data storing unit 221 and transfers the data to the equipment mapping performing module 213a.

정렬데이터 저장부(222)에는 설비 또는 재료의 품질을 판정할 수 있도록 설비매핑 수행모듈(213a) 및 재료매핑 수행모듈(213b)에 의해 설비 식별자 및 재료 식별자 중 적어도 하나가 매핑된 매핑 데이터가 재료 단위로 정렬된 상태로 저장된다. 일 실시예에 있어서, 정렬데이터 저장부(222)에는 설비 식별자와 재료 식별자가 모두 매핑된 부하 데이터 및 설비 식별자만이 매핑된 무부하 데이터가 별도로 저장될 수 있다.The mapping data in which at least one of the equipment identifier and the material identifier is mapped by the facility mapping performing module 213a and the material mapping executing module 213b is stored in the sorting data storing unit 222, And stored in a unit-aligned state. In one embodiment, load data in which both the equipment identifier and the material identifier are mapped and no-load data in which only the equipment identifier is mapped may be separately stored in the sorting data storage unit 222. [

완료이벤트 저장부(223)에는 수집주기에 따라 정렬되고 누락된 데이터가 보정된 데이터가 정렬데이터 저장부(222)에 저장되면, 정렬 결과를 빅데이터 분석 시스템(300)에서 이용할 수 있도록 정렬 완료를 알리는 이벤트가 저장된다. 따라서, 빅데이터 분석 시스템(300)은 완료이벤트 저장부(223)를 모니터링하여 새로운 완료 이벤트가 발생하면 정렬데이터 저장부(222)로부터 정렬 데이터를 추출하여 이용하게 된다.The completion event storage unit 223 stores the data whose data are corrected according to the collection period and the missing data is stored in the sorting data storage unit 222. When the sorting result is stored in the sorting data storage unit 222, Notice that the event is saved. Accordingly, the big data analysis system 300 monitors the completion event storage unit 223 and extracts alignment data from the alignment data storage unit 222 when a new completion event occurs.

구체적으로, 완료 이벤트에는 해당 이벤트 전송시간, 데이터 수집시간, 정렬데이터 저장부(222)에서 데이터를 읽기 위한 키 정보, 이벤트를 저장하기 위한 파티션 및 디렉토리 정보 등이 포함된다. 따라서, 빅데이터 분석 시스템(300)은 완료이벤트 저장부(223)에서 새로운 완료 이벤트가 획득되면, 해당 완료 이벤트에 포함된 키 정보를 이용해서 해당 완료 이벤트에 대응되는 데이터가 정렬데이터 저장부(222)의 어느 파티션 및 디렉토리에 저장되어 있는지 확인하는 방식으로 새롭게 정렬된 데이터를 획득할 수 있다.Specifically, the completion event includes a corresponding event transmission time, a data collection time, key information for reading data from the sorting data storage unit 222, a partition and directory information for storing an event, and the like. Accordingly, when a new completion event is acquired in the completion event storage unit 223, the big data analysis system 300 uses the key information included in the completion event to store data corresponding to the completion event in the alignment data storage unit 222 ) And the partition and the directory of the storage device (e.g.

이상감지결과 저장부(224)에는 설비이상감지 수행모듈(217)에서 감지된 특정 설비의 이상감지결과, 및 품질이상감지 수행모듈(218)에서 감지된 특정 재료의 품질 이상감지결과가 저장된다.The abnormality detection result storage unit 224 stores the abnormality detection result of the specific facility detected by the equipment abnormality detection execution module 217 and the abnormality detection result of the specific material detected by the quality abnormality detection execution module 218.

따라서, 본 발명에 따르는 경우 사용자는 스마트팩토리 플랫폼(1000)의 외부에 구축된 별도의 이상감지 모니터링 시스템(미도시)을 통해 이상감지결과 저장부(224)에 접근함으로써 스마트팩토리 플랫폼(1000)의 특정 설비나 특정 재료의 품질에 이상이 발생했는지 확인할 수 있다.Therefore, according to the present invention, the user accesses the anomaly detection result storage unit 224 via a separate anomaly detection system (not shown) built on the outside of the smart factory platform 1000, It is possible to check whether the quality of a specific facility or a specific material is abnormal.

다만, 본 발명은 이에 한정되지 않고 특정 설비 또는 특정 재료의 품질에서 이상이 발생한 경우 그 결과를 이상감지 모니터링 시스템으로 직접 전송함으로써 사용자가 이상을 바로 확인하도록 하는 것도 가능하다.However, the present invention is not limited to this, and if an abnormality occurs in the quality of a specific facility or a specific material, it is also possible to directly transmit the result to the abnormality detection monitoring system so that the user can immediately check the abnormality.

상술한 실시예에 있어서는 분산병렬처리시스템(200)이 하나의 실시간 프로세싱부(210) 및 하나의 메모리부(220)를 통해 표준화된 데이터를 매핑 및 정렬하는 것으로 설명하였지만, 변형된 실시예에 있어서 분산병렬처리시스템(200)은 도 4 및 도 5에 도시된 바와 같이 복수개의 실시간 프로세싱부(210a, 210b, 210c) 및 복수개의 메모리부(220)를 이용하여 표준화된 데이터를 매핑 및 정렬할 수도 있다.In the above-described embodiment, the distributed parallel processing system 200 has been described as mapping and arranging the standardized data through one real time processing unit 210 and one memory unit 220, but in a modified embodiment 4 and 5, the distributed parallel processing system 200 may map and align standardized data using a plurality of real-time processing units 210a, 210b, and 210c and a plurality of memory units 220 have.

이하, 도 4 및 도 5를 참조하여 변형된 실시예에 따른 분산병렬처리시스템에 대해 설명한다.Hereinafter, a distributed parallel processing system according to a modified embodiment will be described with reference to FIGS. 4 and 5. FIG.

도 5는 복수개의 실시간 프로세싱부 및 복수개의 메모리부를 포함하는 분산병렬처리시스템의 구성을 개략적으로 보여주는 도면이다.5 is a diagram schematically illustrating a configuration of a distributed parallel processing system including a plurality of real-time processing units and a plurality of memory units.

도 5에 도시된 바와 같이, 분산병렬처리시스템(200)은 복수개의 실시간 프로세싱부(210a, 210b, 210c), 복수개의 메모리부(220a, 220b, 220c), 및 수행모듈 배포부(230)를 포함한다.5, the distributed parallel processing system 200 includes a plurality of real time processing units 210a, 210b and 210c, a plurality of memory units 220a, 220b and 220c, and an execution module distributing unit 230 .

복수개의 실시간 프로세싱부(210a, 210b, 210c)에는 표준화된 데이터를 매핑 및 정렬하는 복수개의 수행모듈(211~218)들 중 하나 이상의 수행모듈(211~218)이 분산되어 배포된다. 이와 같이, 본 발명은 복수개의 실시간 프로세싱부(210a, 210b, 210c)가 자신에게 배포된 수행모듈(211~218)을 각각 실행시킴으로써 표준화된 데이터의 매핑 및 정렬작업을 복수개의 실시간 프로세싱부(210a, 210b, 210c)를 통해 분산 병렬 처리할 수 있어, 단일의 실시간 프로세싱부에서 모든 수행모듈(211~218)이 수행됨에 따른 과부하를 방지할 수 있다.One or more execution modules 211 to 218 among a plurality of execution modules 211 to 218 for mapping and aligning standardized data are distributed and distributed to the plurality of real-time processing units 210a, 210b, and 210c. As described above, according to the present invention, the plurality of real-time processing units 210a, 210b and 210c execute the execution modules 211 to 218 distributed to the real-time processing units 210a to 210c, respectively, 210b, and 210c, thereby preventing overload caused by execution of all the execution modules 211 to 218 in a single real-time processing unit.

즉, 복수의 실시간 프로세싱부(210a, 210b, 210c, 210d)는 페치 수행모듈(211), 로딩 수행모듈(212), 설비매핑 수행모듈(213a), 재료매핑 수행모듈(213b), 데이터 보정 수행모듈(215), 데이터 정렬 수행모듈(216), 설비이상감지 수행모듈(217), 및 품질이상감지 수행모듈(218) 중 적어도 하나의 수행모듈을 각각 분산하여 병렬처리하고, 최종 결과 데이터를 메모리부(220)에 저장함으로써, 인터페이스 시스템(100)으로부터 전달되는 대용량의 데이터를 실시간으로 처리하게 된다.That is, the plurality of real-time processing units 210a, 210b, 210c and 210d include a fetch performing module 211, a loading performing module 212, a facility mapping performing module 213a, a material mapping performing module 213b, At least one execution module of the module 215, the data alignment execution module 216, the equipment abnormality detection execution module 217, and the quality abnormality detection execution module 218 are distributed and parallel processed, (220), the large-capacity data transmitted from the interface system (100) is processed in real time.

이러한 경우 하나의 실시간 프로세싱부(210a, 210b, 210c)에 동일한 기능을 수행하는 수행모듈(211~218)이 복수개 배포될 수도 있다. 예컨대, 하나의 실시간 프로세싱부(210a, 210b, 210c)에 설비매핑 수행모듈(213a)이 복수개 배치될 수도 있다.In this case, a plurality of execution modules 211 to 218 performing the same function may be distributed to one of the real-time processing units 210a, 210b, and 210c. For example, a plurality of facility mapping execution modules 213a may be disposed in one real-time processing unit 210a, 210b, 210c.

일 실시예에 있어서, 복수개의 실시간 프로세싱부(210a, 210b, 210c)는 클러스터링 구조로 구성될 수 있다. 이와 같이, 복수개의 실시간 프로세싱부(210a, 210b, 210c)는 클러스터링 구조를 가지기 때문에 특정 실시간 프로세싱부에 장애가 발생하면 장애가 발생된 실시간 프로세싱부에서 실행중이던 수행모듈(211~218)을 다른 실시간 프로세싱부로 이동시킬 수 있어 가용성을 확보할 수 있게 된다.In one embodiment, the plurality of real-time processing units 210a, 210b, and 210c may be configured as a clustering structure. Since the plurality of real-time processing units 210a, 210b, and 210c have a clustering structure, if a failure occurs in a specific real-time processing unit, the execution modules 211 to 218, which are being executed by the real- So that it is possible to secure availability.

도 5에서는 분산병렬처리시스템(200)이 3개의 실시간 프로세싱부(210a, 210b, 210c)를 포함하는 것으로 도시하였지만, 데이터 처리 성능에 따라 실시간 프로세싱부는 추가로 증설될 수 있다.Although the distributed parallel processing system 200 includes three real-time processing units 210a, 210b, and 210c in FIG. 5, the real-time processing unit may be additionally provided according to data processing capabilities.

복수개의 메모리부(220)에는 복수개의 실시간 프로세싱부(210a, 210b, 210c)에서 처리된 데이터가 저장된다. 일 실시예에 있어서, 처리 성능을 높이고 장애시 가용성을 보장하기 위해 복수개의 메모리부(220)는 전술한 큐 저장부(120)와 같이 클러스터링 구조를 가질 수 있다. The plurality of memory units 220 stores data processed by the plurality of real-time processing units 210a, 210b, and 210c. In an embodiment, the plurality of memory units 220 may have a clustering structure such as the above-described queue storage unit 120 in order to increase processing performance and ensure availability at the time of failure.

즉, 1대의 메모리부(220)에 데이터가 저장되면 다른 메모리부(220)에도 데이터가 복제되어 저장되므로, 특정 메모리부(220)에 장애가 발생하더라도 다른 메모리부(220)를 통해 서비스가 지속적으로 제공될 수 있다. That is, when data is stored in one memory unit 220, data is copied and stored in another memory unit 220, so that even if a failure occurs in the specific memory unit 220, Can be provided.

일 실시예에 있어서, 복수개의 메모리부(220)는 고가용성(High Availability; HA)을 위해 이중화 구조로 구비될 수 있다. 즉, 각각의 메모리부(220)는 마스터 인스턴스(M) 및 슬레이브 인스턴스(S)를 포함한다. 이러한 경우 제1 메모리부(220a)에 포함된 마스터 인스턴스(M)과 제2 메모리부(220b)에 포함된 슬레이브 인스턴스(S)가 한 쌍으로 동작하고, 제2 메모리부(220b)에 포함된 마스터 인스턴스(M)와 제1 메모리부(220a)에 포함된 슬레이브 인스턴스(S)가 한 쌍으로 동작하게 된다.In one embodiment, the plurality of memory units 220 may be provided in a redundant structure for High Availability (HA). That is, each memory unit 220 includes a master instance M and a slave instance S. In this case, the master instance M included in the first memory unit 220a and the slave instance S included in the second memory unit 220b operate as a pair, and the master instance M included in the second memory unit 220b The master instance M and the slave instances S included in the first memory unit 220a operate as a pair.

이러한 경우, 제1 메모리부(220a)의 마스터 인스턴스(M)에 정렬 데이터가 저장되면 제2 메모리부(220b)의 슬레이브 인스턴스(S)에도 정렬 데이터가 복제되어 저장되고, 제2 메모리부(220b)의 마스터 인스턴스(M)에 정렬 데이터가 저장되면 제1 메모리부(220a)의 슬레이브 인스턴스(S)에도 정렬 데이터가 복제되어 저장된다.In this case, when the alignment data is stored in the master instance M of the first memory unit 220a, the alignment data is also copied and stored in the slave instance S of the second memory unit 220b, and the second memory unit 220b The sorting data is replicated and stored in the slave instance S of the first memory unit 220a when the sorting data is stored in the master instance M of the first memory unit 220a.

일 실시예에 있어서, 슬레이브 인스턴스(S)에 기록된 정렬 데이터는 장애시 복구를 위해 각 데이터가 스크립터(Scripter) 형태의 파일로 백업될 수 있다. 이때, 스크립터 형태의 파일이란 데이터의 쓰기 또는 읽기와 관련된 커맨드가 해당 데이터와 함께 저장되어 있는 형태의 파일을 의미한다. In one embodiment, the alignment data recorded in the slave instance S can be backed up as a file in the form of a scripter for each piece of data for failure recovery. At this time, a scripter-like file means a file in which a command related to writing or reading of data is stored together with the corresponding data.

한편, 제1 메모리부(220a)에 포함된 마스터 인스턴스(M)가 동작하다가 장애가 발생하는 경우 자동으로 제2 메모리부(220a)에 포함된 슬레이브 인스턴스(S)가 활성화됨으로써 전술한 실시간 프로세싱부(210)의 다양한 기능이 중단되지 않고 연속적으로 구현될 수 있다.Meanwhile, when a master instance M included in the first memory unit 220a operates and a failure occurs, the slave instance S included in the second memory unit 220a is automatically activated, thereby enabling the real-time processing unit 210 may be implemented continuously without interruption.

일 실시예에 있어서, 각 메모리부(220)의 마스터 인스턴스(M) 및 슬레이브 인스턴스(S)는 싱글 스레드(Rhread) 형태로 구성되고, 쓰기 및 읽기 별로 인스턴스 및 포트가 분리되어 있다.In one embodiment, the master instance M and the slave instance S of each memory unit 220 are configured in a single-threaded form, and the instance and port are separated for each write and read.

한편, 각 메모리부(220)에 포함된 마스터 인스턴스(M) 및 슬레이브 인스턴스(S)는 전술한 수집데이터 저장부(221), 정렬데이터 저장부(222), 완료이벤트 저장부(223) 및 이상감지결과 저장부(224)를 각각 포함하여 구성될 수 있다.The master instance M and the slave instance S included in each memory unit 220 are connected to the collection data storage unit 221, the alignment data storage unit 222, the completion event storage unit 223, And a detection result storage unit 224, respectively.

이하, 도 6을 참조하여 표준화된 데이터의 매핑 및 정렬 작업을 분산병렬처리하는 방법을 예를 들어 설명한다.Hereinafter, with reference to FIG. 6, a method of performing distributed parallel processing of data mapping and sorting operations standardized will be described as an example.

도 6에 도시된 바와 같이, 제1 실시간 프로세싱부(210a)에 페치 수행모듈(211)이 배포되어 있기 때문에, 제1 실시간 프로세싱부(210a)는 페치 수행모듈(211)을 실행시킴으로써 페치 수행모듈(211)이 큐(121)에 접속하여 표준화된 데이터를 페치하고, 페치 데이터를 제1 메모리부(220a)의 마스터 인스턴스(M)에 저장하도록 한다. 이때, 제2 메모리부(220b)의 슬레이브 인스턴스(S)에도 데이터가 복제되어 저장된다. 상술한 실시예에 있어서는, 제1 메모리부(220a)의 마스터 인스턴스(M)에 데이터가 저장되는 것으로 설명하였지만 제2 메모리부(220b)의 마스터 인스턴스(M)에 데이터가 저장될 수도 있을 것이다. 이러한 경우 제1 메모리부(220a)의 슬레이브 인스턴스(S)에 데이터가 복제되어 저장된다.6, since the first real-time processing unit 210a distributes the fetch performing module 211 to the first real-time processing unit 210a, the first real-time processing unit 210a executes the fetch performing module 211, The CPU 211 connects to the queue 121 to fetch the normalized data and store the fetch data in the master instance M of the first memory unit 220a. At this time, data is also copied and stored in the slave instance S of the second memory unit 220b. In the above-described embodiment, data is stored in the master instance M of the first memory unit 220a, but data may be stored in the master instance M of the second memory unit 220b. In this case, data is copied and stored in the slave instance S of the first memory unit 220a.

제2 실시간 프로세싱부(210b)에는 로딩 수행모듈(212), 설비매핑 수행모듈(213a), 및 재료매핑 수행모듈(213b)이 배포되어 있기 때문에, 제2 실시간 프로세싱부(210b)는 로딩 수행모듈(212)을 실행시킴으로써 로딩 수행모듈(212)이 제2 메모리부(220b)의 슬레이브 인스턴스(S) 또는 제1 메모리부(220a)의 슬레이브 인스턴스(S)로부터 데이터를 독출한다. The second real-time processing unit 210b includes a loading execution module 212, a facility mapping execution module 213a, and a material mapping execution module 213b. Therefore, the second real- The loading performing module 212 reads the data from the slave instance S of the second memory unit 220b or the slave instance S of the first memory unit 220a by executing the execution module 212. [

그리고, 제2 실시간 프로세싱부(210b)는 설비매핑 수행모듈(213a)을 실행시킴으로써 제2 메모리부(220b)의 슬레이브 인스턴스(S) 또는 제1 메모리부(220a)의 슬레이브 인스턴스(S)로부터 독출된 데이터에 설비 식별자를 매핑하고, 재료매핑 수행모듈(213b)을 실행시킴으로써 설비 식별자가 매핑된 데이터에 재료 식별자를 매핑시킨다.The second real-time processing unit 210b reads the slave instance S of the second memory unit 220b or the slave instance S of the first memory unit 220a by executing the facility mapping execution module 213a Maps the equipment identifier to the data, and executes the material mapping execution module 213b, thereby mapping the material identifier to the data to which the equipment identifier is mapped.

제3 실시간 프로세싱부(210c)에는 데이터 보정 수행모듈(215) 및 데이터 정렬 수행모듈(216)이 배포되어 있기 때문에, 제3 실시간 프로세싱부(210c)는 데이터 보정 수행모듈(215)을 실행시킴으로써 매핑 데이터 중 누락된 데이터를 보정하고, 데이터 정렬 수행모듈(216)을 수행함으로써 보정된 매핑 데이터를 재료 단위로 정렬하여 제2 메모리부(220b)의 마스터 인스턴스(M)에 저장한다. 이때, 제1 메모리부(220a)의 슬레이브 인스턴스(S)에도 데이터가 복제되어 저장된다. 상술한 설명에서는, 제2 메모리부(220b)의 마스터 인스턴스(M)에 정렬 데이터가 저장되는 것으로 설명하였지만 제1 메모리부(220a)의 마스터 인스턴스(M)에 정렬 데이터가 저장될 수도 있을 것이다. 이러한 경우 제2 메모리부(220b)의 슬레이브 인스턴스(S)에 데이터가 복제되어 저장된다.The third real-time processing unit 210c executes the data correction execution module 215 to execute the data correction execution module 215 and the data alignment execution module 216 in the third real- Corrects the missing data in the data, and performs the data sorting performing module 216 to sort the corrected mapping data by material and stores the sorted data in the master instance M of the second memory unit 220b. At this time, data is also copied and stored in the slave instance S of the first memory unit 220a. In the above description, the sorting data is stored in the master instance M of the second memory unit 220b, but the sorting data may be stored in the master instance M of the first memory unit 220a. In this case, data is copied and stored in the slave instance S of the second memory unit 220b.

상술한 실시예에 있어서는, 복수개의 메모리부(220)가 이중화 되어 구성됨으로써 제1 메모리부(220a)에 포함된 마스터 인스턴스(M)과 제2 메모리부(220b)에 포함된 슬레이브 인스턴스(S)가 한 쌍으로 동작하고, 제2 메모리부(220b)에 포함된 마스터 인스턴스(M)와 제1 메모리부(220a)에 포함된 슬레이브 인스턴스(S)가 한 쌍으로 동작하는 것으로 설명하였다.The master instance M included in the first memory unit 220a and the slave instance S included in the second memory unit 220b are configured in a redundant manner, The master instance M included in the second memory unit 220b and the slave instance S included in the first memory unit 220a operate as a pair.

하지만, 이러한 실시예에 따르는 경우, 마스터 인스턴스(M) 및 슬레이브 인스턴스(S)가 싱글 쓰레드로 구현되기 때문에, 제1 메모리부(220a)의 마스터 인스턴스(M)가 다운되는 경우 제1 메모리부(220)의 마스터 인스턴스(M)가 정상화될 때까지의 다운타임 동안, 제2 메모리부(220b)의 슬레이브 인스턴스(S)가 쓰기동작과 읽기동작을 모두 서비스 할 수 는 없다는 한계가 있다.However, according to this embodiment, since the master instance M and the slave instance S are implemented as a single thread, when the master instance M of the first memory unit 220a is down, There is a limit in that the slave instance S of the second memory unit 220b can not serve both the write operation and the read operation during the down time until the master instance M of the second memory unit 220 is normalized.

따라서, 변형된 실시예에 있어서, 메모리부(220)는 도 7에 도시된 바와 같이, 3중화 구조로 구현될 수 있다. 구체적으로, 변형된 실시예에 따른 메모리부(220) 각각은 마스터 인스턴스(M), 제1 슬레이브 인스턴스(S1), 및 제2 슬레이브 인스턴스(S2)를 포함한다.Thus, in a modified embodiment, the memory unit 220 may be implemented in a triple structure, as shown in FIG. Specifically, each of the memory units 220 according to the modified embodiment includes a master instance M, a first slave instance S1, and a second slave instance S2.

이러한 경우, 제1 메모리부(220a)에 포함된 마스터 인스턴스(M)은 제2 및 제3 메모리부(220b, 220c)의 제1 슬레이브 인스턴스(S1)들과 한 쌍으로 동작한다. 이에 따라, 제1 메모리부(220a)에 포함된 마스터 인스턴스(M)에 데이터가 기입되면 제2 및 제3 메모리부(220b, 220c)의 제1 슬레이브 인스턴스(S1)들에도 데이터가 복제되어 저장된다.In this case, the master instance M included in the first memory unit 220a operates as a pair with the first slave instances S1 of the second and third memory units 220b and 220c. Accordingly, when data is written to the master instance M included in the first memory unit 220a, data is also copied and stored in the first slave instances S1 of the second and third memory units 220b and 220c do.

또한, 제2 메모리부(220b)에 포함된 마스터 인스턴스(M)는 제1 메모리부(220a)에 포함된 제1 슬레이브 인스턴스(S1) 및 제3 메모리부(220c)에 포함된 제2 슬레이브 인스턴스(S2)들과 한 쌍으로 동작한다. 이에 따라, 제2 메모리부(220b)에 포함된 마스터 인스턴스(M)에 데이터가 기입되면 제1 메모리부(220a)에 포함된 제1 슬레이브 인스턴스(S1) 및 제3 메모리부(220c)에 포함된 제2 슬레이브 인스턴스(S2)들에도 데이터가 복제되어 저장된다.The master instance M included in the second memory unit 220b is connected to the first slave instance S1 included in the first memory unit 220a and the second slave instance S1 included in the third memory unit 220c, Lt; RTI ID = 0.0 > S2. ≪ / RTI > Accordingly, when data is written to the master instance M included in the second memory unit 220b, the data is included in the first slave instance S1 and the third memory unit 220c included in the first memory unit 220a Data is also copied and stored in the second slave instances S2.

또한, 제3 메모리부(220c)에 포함된 마스터 인스턴스(M)는 제1 메모리부(220a) 및 제2 메모리부(220b)에 포함된 제2 슬레이브 인스턴스(S1)들과 한 쌍으로 동작한다. 이에 따라, 제3 메모리부(220c)에 포함된 마스터 인스턴스(M)에 데이터가 기입되면 제1 메모리부(220a) 및 제2 메모리부(220b)에 포함된 제2 슬레이브 인스턴스(S1)들에도 데이터가 복제되어 저장된다.The master instance M included in the third memory unit 220c operates as a pair with the second slave instances S1 included in the first memory unit 220a and the second memory unit 220b . Accordingly, when data is written to the master instance M included in the third memory unit 220c, the second slave instances S1 included in the first memory unit 220a and the second memory unit 220b Data is copied and stored.

다시 도 5를 참조하면, 수행모듈 배포부(230)는 복수개의 수행모듈들(211~218)을 복수개의 실시간 프로세싱부(210a~210c)에 배포한다. 또한, 수행모듈 배포부(230)는 실시간 프로세싱부(210a~210c)에 배포된 수행모듈들(211~218)의 실행으로 인한 실시간 프로세싱부(210a~210c)의 부하량에 따라 복수개의 수행모듈들(211~218)을 실시간 프로세싱부(210a~210c)에 재배포한다.Referring again to FIG. 5, the execution module distribution unit 230 distributes a plurality of execution modules 211 to 218 to a plurality of real-time processing units 210a to 210c. The execution module distribution unit 230 distributes a plurality of execution modules 210a to 210c according to the loads of the real-time processing units 210a to 210c due to the execution of the execution modules 211 to 218 distributed to the real-time processing units 210a to 210c, (211 to 218) to the real-time processing units (210a to 210c).

구체적으로, 수행모듈 배포부(230)는 수행모듈 저장소(232), 배포순서 결정부(234), 및 배포 수행부(236)를 포함한다.Specifically, the execution module distribution unit 230 includes an execution module storage 232, a distribution order determination unit 234, and a distribution execution unit 236.

먼저, 수행모듈 저장소(232)에는 표준화된 데이터의 매핑 및 정렬을 수행하기 위한 복수개의 수행모듈(211~218)이 저장된다.First, the execution module storage 232 stores a plurality of execution modules 211 to 218 for performing mapping and sorting of standardized data.

배포순서 결정부(234)는 배포 수행부(236)에 의해 복수개의 수행모듈(211~218)들이 각 실시간 프로세싱부(210a~210c)에 초기 배포된 이후, 실시간 프로세싱부(210a~210c)의 자원 사용 정보를 기초로 수행모듈(211~218)들의 재배포를 위한 순서를 결정한다.The distribution order determining unit 234 determines the distribution order of the real time processing units 210a to 210c after the plurality of execution modules 211 to 218 are initially distributed to the real time processing units 210a to 210c by the distribution performing unit 236. [ And determines the order for redistribution of the performance modules 211 to 218 based on the resource usage information.

동일한 개수의 수행모듈(211~2180)들이 각 실시간 프로세싱부(210a~210c)에 배포되더라도 각 수행모듈(211~218) 마다 자원 사용율이 상이하기 때문에, 자원 사용율이 큰 수행모듈(211~218)이 많이 배포된 실시간 프로세싱부(210a~210c)는 자원 사용율이 낮은 수행모듈(211~218)이 많이 배포된 실시간 프로세싱부(210a~210c)에 비해 부하가 가중될 수 밖에 없으므로, 분산병렬처리스템(200)의 성능이 저하된다.Even if the same number of execution modules 211 to 2180 are distributed to the respective real-time processing units 210a to 210c, since the resource usage rates are different for the respective execution modules 211 to 218, the execution modules 211 to 218, The load of the distributed real time processing units 210a to 210c is increased compared to the real time processing units 210a to 210c in which the resource utilization rate of the execution modules 211 to 218 is much distributed, The performance of the optical disc 200 deteriorates.

따라서, 본 발명에 따른 배포순서 결정부(234)는 최초 배포된 수행모듈(211~2180)들의 실행에 의한 실시간 프로세싱부(210a~210c)의 자원 사용 정보를 판단하여, 복수개의 실시간 프로세싱부(210a~210c)의 부하량이 조절될 수 있도록 복수개의 수행모듈(211~218)의 재배포를 위한 배포순서를 결정한다. 일 실시예에 있어서, 배포순서 결정부(234)는 복수개의 실시간 프로세싱부(210a~210c)의 부하량이 균등해지도록 복수개의 수행모듈(211~218)의 재배포를 위한 배포순서를 결정할 수 있다. 여기서, 배포순서 결정이란 각 수행모듈(211~218)이 배포될 실시간 프로세싱부(210a~210c)를 결정하는 것을 의미한다. 이때, 각 실시간 프로세싱부(210a~210c)로 배포될 수행모듈(211~218)들의 개수는 동일하게 설정될 수 있다.Accordingly, the distribution order determining unit 234 according to the present invention determines the resource use information of the real-time processing units 210a to 210c by execution of the initially-distributed execution modules 211 to 2180, 210a to 210c of the plurality of execution modules 211 to 218 can be adjusted. In one embodiment, the distribution order determining unit 234 may determine a distribution order for redistribution of the plurality of execution modules 211 to 218 so that the loads of the plurality of real-time processing units 210a to 210c are equalized. Here, the distribution order determination means that the execution modules 211 to 218 determine the real-time processing units 210a to 210c to be distributed. At this time, the number of execution modules 211 to 218 to be distributed to each of the real-time processing units 210a to 210c may be set to be the same.

일 실시예에 있어서, 배포순서 결정부(234)는 최초 배포된 수행모듈의 실행에 따른 시스템 자원의 평균값 및 시스템 자원의 이용 패턴 중 적어도 하나를 이용하여 복수개의 수행모듈(211~218)의 배포순서를 결정한다. 이러한 실시예에 따르는 경우, 시스템 자원은, 각 실시간 프로세싱부(210a~210c)의 CPU 사용율, 메모리 사용량, 네트워크 통신량, 및 디스크 입출력 처리량 중 적어도 하나를 포함할 수 있다.In one embodiment, the distribution order determining unit 234 determines the distribution order of the plurality of execution modules 211 to 218 using at least one of the average value of the system resources and the usage pattern of the system resources, Determine the order. According to this embodiment, the system resources may include at least one of CPU utilization, memory usage, network traffic, and disk I / O throughput of each of the real-time processing units 210a to 210c.

배포 수행부(236)는 배포순서 결정부(234)에 결정된 배포순서에 따라 복수개의 수행모듈(211~218)들을 복수개의 실시간 프로세싱부(210a~210c)에 분산 배포한다.The distribution performing unit 236 distributes and distributes a plurality of execution modules 211 to 218 to the plurality of real time processing units 210a to 210c according to the distribution order determined by the distribution order determining unit 234. [

구체적으로, 배포 수행부(236)는 최초에는 수행모듈 저장소(232)에 저장되어 있는 복수개의 수행모듈(211~218)들을 임의로 실시간 프로세싱부(210a~210c)로 배포한다. 이후, 미리 정해진 휴지기가 되면 배포 수행부(236)는 각 실시간 프로세싱부(210a~210c)에 배포된 수행모듈(211~218)들을 회수하여 수행모듈 저장소(232)에 저장하고, 휴지기가 종료되면 수행모듈 저장소(232)에 저장되어 있는 복수개의 수행모듈(211~218)들을 배포순서 결정부(234)에 의해 결정된 배포순서에 따라 해당 실시간 프로세싱부(210a~210c)에 배포한다.Specifically, the distribution performing unit 236 arbitrarily distributes a plurality of execution modules 211 to 218 stored in the execution module storage 232 to the real-time processing units 210a to 210c. Thereafter, when the predetermined idle period is reached, the distribution performing unit 236 retrieves the execution modules 211 to 218 distributed to the real-time processing units 210a to 210c and stores them in the execution module storage 232. When the idle period ends And distributes the plurality of execution modules 211 to 218 stored in the execution module storage 232 to the real time processing units 210a to 210c according to the distribution order determined by the distribution order determining unit 234. [

이와 같이, 본 발명은 수행모듈 배포부(230)에 의해 복수개의 수행모듈(211~218)을 실시간 프로세싱부(210a~210c)에 효율적으로 배포할 수 있어 실시간 프로세싱부(210a~210c)들 간의 부하를 균형있게 조절할 수 있고, 이로 인해 분산병렬처리시스템(200)의 전체 성능을 향상시킬 수 있다.As described above, according to the present invention, the execution module distributing unit 230 can efficiently distribute the plurality of execution modules 211 to 218 to the real-time processing units 210a to 210c, The load can be adjusted in a balanced manner, thereby improving the overall performance of the distributed parallel processing system 200.

다시 도 2를 참조하면, 빅데이터 분석 시스템(300)은 분산병렬처리시스템(200)에 의해 정렬된 데이터를 빅데이터 저장 공간에 저장한다. 또한, 빅데이터 분석 시스템(300)은 데이터 유실이 되지 않도록 관리하며 히스토리컬 데이터에 대한 조회 기능을 제공한다. 이하, 도 8을 참조하여 본 발명에 따른 빅데이터 분석 시스템(300)을 구체적으로 설명한다.Referring back to FIG. 2, the big data analysis system 300 stores the data sorted by the distributed parallel processing system 200 in the big data storage space. In addition, the big data analysis system 300 manages data loss and provides inquiry about historical data. Hereinafter, the big data analysis system 300 according to the present invention will be described in detail with reference to FIG.

도 8은 도 2에 도시된 빅데이터 분석 시스템의 구성을 보여주는 블록도이다.FIG. 8 is a block diagram showing the configuration of the big data analysis system shown in FIG. 2. FIG.

도 8에 도시된 바와 같이 빅데이터 분석 시스템(300)은 대용량 데이터 처리부(310), 빅데이터 저장부(320), 및 쿼리 처리부(330)를 포함한다.8, the big data analysis system 300 includes a large-capacity data processing unit 310, a big data storage unit 320, and a query processing unit 330. As shown in FIG.

대용량 데이터 처리부(310)는 정렬 데이터와 이상감지 결과를 분산 병렬 처리하는 것으로서, 완료이벤트 수신유닛(311), 정렬데이터 페치유닛(312), 메모리 큐(313), 파일생성유닛(314), 및 이상감지 데이터 수신유닛(315)을 포함한다.The large capacity data processing unit 310 performs distributed parallel processing of the alignment data and the anomaly detection result and includes a completion event receiving unit 311, an alignment data fetching unit 312, a memory queue 313, a file generating unit 314, And an anomaly detection data receiving unit 315.

완료이벤트 수신유닛(311)은 분산병렬처리시스템(200)에 포함된 완료이벤트 저장부(223)를 모니터링하여 완료 이벤트가 새롭게 저장되면 해당 완료 이벤트를 정렬데이터 페치유닛(312)으로 전달한다.The completion event receiving unit 311 monitors the completion event storage unit 223 included in the distributed parallel processing system 200 and delivers the completion event to the sorting data fetching unit 312 when the completion event is newly stored.

정렬데이터 페치유닛(312)은 완료이벤트 수신유닛(311)으로부터 완료 이벤트가 전달되면, 정렬데이터 저장부(222)로부터 완료 이벤트에 해당하는 정렬 데이터를 조회하여 메모리 큐(313)에 저장한다. 일 실시예에 있어서, 정렬데이터 페치유닛(312)은 완료 이벤트에 포함된 키 정보를 이용해서 해당 완료 이벤트에 대응되는 데이터가 정렬데이터 저장부(222)의 어느 파티션 및 디렉토리에 저장되어 있는지 확인함으로써, 정렬데이터 저장부(222)에 저장된 데이터를 조회하여 메모리 큐(313)에 저장할 수 있다.When the completion event is received from the completion event receiving unit 311, the sorting data fetching unit 312 inquires the sorting data corresponding to the completion event from the sorting data storing unit 222 and stores the sorting data in the memory queue 313. In one embodiment, the sorting data fetch unit 312 uses the key information included in the completion event to check which partitions and directories of the sorting data storage unit 222 store data corresponding to the completion event , The data stored in the sorting data storage unit 222 may be retrieved and stored in the memory queue 313. [

메모리 큐(313)는 데이터를 빅데이터 저장부(320)에 저장하기 전에 메모리 상에 임시로 데이터를 보관한다. 일 실시예에 있어서, 데이터 양이 많지 않고 유실 방지가 필요한 경우 메모리 큐(313)를 파일 기반으로 구현할 수도 있다.The memory queue 313 temporarily stores data on the memory before storing the data in the big data storage unit 320. [ In one embodiment, the memory queue 313 may be implemented on a file basis if the amount of data is not large and loss prevention is required.

파일생성유닛(314)은 메모리 큐(313)에 저장된 데이터를 물리적인 파일로 생성하여 빅데이터 저장부(320)에 저장한다. 일 실시예에 있어서, 파일생성유닛(314)은 파일을 빅데이터 저장부(320)에 저장할 때, 파일포맷을 변경하거나 압축할 수 있다.The file creation unit 314 creates the data stored in the memory queue 313 as a physical file and stores it in the big data storage unit 320. [ In one embodiment, the file creation unit 314 may change or compress the file format when storing the file in the big data store 320. [

이상감지 데이터 수신유닛(315)은 분산병렬처리시스템(200)에 포함된 이상감지결과 저장부(224)를 모니터링하여 새로운 이상감지 결과가 저장되면 이를 메모리 큐(313)에 저장한다.The anomaly detection data receiving unit 315 monitors the anomaly detection result storage unit 224 included in the distributed parallel processing system 200 and stores the result in the memory queue 313 when a new anomaly detection result is stored.

빅데이터 저장부(320)는 파일 생성유닛(314)에 의해 생성된 파일을 저장한다. 일 실시예에 있어서, 빅데이터 저장부(320)는 분산파일시스템(Distributed File System) 기반으로 구현될 수 있다. 예컨대, 빅데이터 저장부(320)는 하둡(Hadoop) 기반의 분산 파일 시스템으로 구현될 수 있다.The big data storage unit 320 stores the file generated by the file creation unit 314. [ In one embodiment, the big data store 320 may be implemented on a Distributed File System basis. For example, the big data storage 320 may be implemented as a Hadoop-based distributed file system.

이러한 실시예에 따르는 경우, 빅데이터 저장부(320)는 마스터 노드(320a) 및 데이터 노드(320b)로 구성된다. 마스터 노드(320a)는 대용량 데이터 처리 장치(300)에 의해 생성된 많은 양의 파일을 데이터 노드들(320b)에 저장하고, 데이터 노드(320b)에 저장된 데이터들의 조회를 위한 작업(Job)을 생성 및 관리하며, 메타 데이터(Metadata)를 관리한다.According to this embodiment, the big data storage 320 is composed of a master node 320a and a data node 320b. The master node 320a stores a large amount of files generated by the large capacity data processing apparatus 300 in the data nodes 320b and generates a job for inquiring data stored in the data nodes 320b And manages the metadata.

여기서, 작업(Job)이란 데이터 노드(320b)에 저장된 데이터를 조회하기 위해 쿼리 처리부(330)로부터 수신되는 쿼리를 처리하기 위한 단위를 의미한다. 예를 들어, 데이터 노드(320b)에 기록된 1개의 테이블에 대해 데이터를 조회하는 쿼리가 실행된 경우, 해당 테이블의 데이터를 조회한 결과 대상이 되는 데이터 노드(320b)가 10개 선택되면, 10개의 데이터 노드(320b)에 대해 각 데이터 노드(320b) 별로 데이터를 조회하여 가져오는 작업(Job)과 데이터 노드(320b) 별로 획득된 데이터를 통합하는 작업(Job)이 실행되게 된다. Here, the job means a unit for processing a query received from the query processing unit 330 to inquire data stored in the data node 320b. For example, when a query for querying data for one table recorded in the data node 320b is executed, if ten data nodes 320b are selected as a result of querying the data of the table, A job for retrieving and retrieving data for each data node 320b and a job for consolidating data acquired for each data node 320b are executed for the data nodes 320b.

메타 데이터(Metadata)에는 데이터 노드(320b)에 저장되는 파일의 위치, 파일명, 파일이 저장되는 블록 ID, 및 서버의 저장위치 등이 포함된다. 예컨대, 파일 생성유닛(314)에 파일이 생성되면 파일의 위치와 파일명이 메타데이터에 저장되고, 해당 파일이 블록 사이즈보다 커서 5개의 블록으로 나누어 각기 다른 3대의 서버에 저장되는 경우, 15개의 블록 ID와 각 서버의 저장위치가 메타데이터에 추가로 저장되게 된다.Metadata includes a location of a file stored in the data node 320b, a file name, a block ID where a file is stored, and a storage location of a server. For example, when a file is created in the file creation unit 314, the location and file name of the file are stored in the metadata. If the file is larger than the block size and divided into five blocks and stored in three different servers, The ID and the storage location of each server are additionally stored in the metadata.

이러한 메타 데이터는 데이터 노드(320b)에 저장된 데이터의 조회에 대한 작업(Job) 실행시 각 작업(Job)에 대한 분배 및 특정 파일의 데이터를 로딩할 때, 데이터의 위치 정보로 활용된다.The meta data is used as location information of the data when distributing the job and loading the data of a specific file when executing a job for inquiring the data stored in the data node 320b.

데이터 노드(320b)에는 대용량 데이터 처리 장치(300)에 의해 생성된 많은 양의 파일이 저장된다. 일 실시예에 있어서, 데이터 노드(320b)는 복수개로 구현될 수 있고, 각각의 데이터 노드(320b)는 히스토리컬 데이터 저장부(322) 및 모델 저장부(324)를 포함한다. A large amount of files generated by the mass data processing apparatus 300 are stored in the data node 320b. In one embodiment, the data nodes 320b may be implemented in a plurality of ways, and each data node 320b includes a historical data store 322 and a model store 324.

각 데이터 노드(320b)에 포함된 히스토리컬 데이터 저장부(322)에는 파일 생성유닛(314)에 의해 생성된 파일뿐만 아니라 데이터 수집 장치(1)에 의해 실시간으로 수집된 대용량의 수집 데이터가 모두 저장된다. 일 실시예에 있어서, 파일 생성유닛(314)에 의해 생성된 파일은 별도의 관계형 데이터베이스(Relational DataBase; RDB)에 저장될 수도 있다.The historical data storage unit 322 included in each data node 320b stores not only the file generated by the file creation unit 314 but also the large amount of collected data collected in real time by the data collection device 1 do. In one embodiment, the files generated by the file creation unit 314 may be stored in a separate relational database (RDB).

모델 저장부(324)에는 서비스 시스템(400)을 통해 재료나 제품에 대한 품질을 판정하기 위해 필요한 품질판정 모델과 이상예측 모델이 저장되어 있다.The model storage unit 324 stores a quality determination model and an anomaly prediction model necessary for determining the quality of a material or a product through the service system 400. [

쿼리 처리부(330)는 빅데이터 저장소(320)에 저장된 데이터를 조회하여 데이터를 리턴해주는 구성으로, 쿼리수신유닛(332), 쿼리실행유닛(336), 및 쿼리결과전송유닛(338)을 포함한다. 쿼리 처리부(330)는 쿼리 스케줄링유닛(334)을 더 포함할 수 있다.The query processing unit 330 includes a query receiving unit 332, a query execution unit 336, and a query result transmitting unit 338 in a configuration for querying data stored in the big data store 320 and returning data . The query processing unit 330 may further include a query scheduling unit 334. [

구체적으로, 쿼리수신유닛(332)은 사용자로부터 쿼리를 수신하고 수신된 쿼리구문을 해석한다.Specifically, the query receiving unit 332 receives the query from the user and interprets the received query syntax.

쿼리실행유닛(336)은 쿼리 수신유닛(322)을 통해 수신된 쿼리를 빅 데이터 저장소(320)로 전달함으로써 쿼리가 실행되도록 하고, 빅 데이터 저장소(320)로부터 쿼리 실행 결과를 획득한다.The query execution unit 336 transfers the query received via the query receiving unit 322 to the big data store 320 so that the query is executed and the query execution result is obtained from the big data store 320.

쿼리결과전송유닛(338)은 쿼리수행 결과 빅 데이터 저장소(320)로부터 획득되는 데이터를 해당 쿼리를 요청한 사용자에게 전달한다.The query result transmitting unit 338 transmits data obtained from the big data store 320 as a result of the query to the user requesting the query.

한편, 쿼리 스케줄링유닛(334)은 쿼리수신유닛(332)을 통해 수신된 쿼리가 복수개의 하부 쿼리들로 구성되어 있는 경우, 수신된 쿼리를 각 하부 쿼리로 분류하여 쿼리 실행유닛(336)으로 전달한다.Meanwhile, when the query received through the query receiving unit 332 is composed of a plurality of sub-queries, the query scheduling unit 334 classifies the received queries into the respective sub-queries and transmits them to the query execution unit 336 do.

다시 도 1을 참조하면, 서비스 시스템(400)은 표준화된 처리 프로세스와 업무 기준을 서비스로 재활용하는 구조로, 비즈니스 노하우를 리포지터리(Repository)화하여 기능 단위로 정의된 서비스 간 연결을 통해 계획-실행-제어 간의 연계를 용이하게 하며, 재료나 제품에 대한 품질판정 모델 또는 이상 예측 모델을 포함하는 분석모델을 호출하고 실행하여 분석 결과를 진행한다. Referring again to FIG. 1, the service system 400 is a structure for reusing standardized processing processes and business standards as services. The service system 400 is a repository of business know- - facilitates linkage between controls and invokes and executes an analysis model that includes a quality determination model or an anomaly prediction model for a material or product and proceeds with the analysis results.

분석모델은 도 8에 도시된 모델 저장부(324)에 미리 저장되어 있으므로 서비스 시스템(400)은 분석모델에 대한 실행 호출 이벤트가 입력되면 분석모델에 필요한 데이터를 모델 저장부(324)로부터 추출하여 그 결과를 제공한다.Since the analysis model is stored in the model storage unit 324 shown in FIG. 8 in advance, the service system 400 extracts data required for the analysis model from the model storage unit 324 when an execution call event for the analysis model is input And provide the results.

즉, 서비스 시스템(400)은 분산병렬처리시스템(200)에 의해 처리된 정렬 데이터를 직접 수신하여 분석하거나, 정렬 데이터가 빅데이터 분석 시스템(300)의 빅데이터 저장부(320)에 저장된 경우 빅데이터 저장부(320)를 참조하여 해당 데이터를 분석할 수 있다.That is, the service system 400 directly receives and analyzes the sorting data processed by the distributed parallel processing system 200, or when the sorted data is stored in the big data storage unit 320 of the big data analysis system 300, The data can be analyzed with reference to the data storage unit 320. [

관리시스템(500)은 스마트팩토리 플랫폼(1000)에 속한 개별 구성에 대한 관리 및 UI/UX의 관리 데이터 수집을 위한 구성들에 대한 설정파일 관리, 각 구성의 개별 모니터링, 미리 설정된 설정값들 간의 연계정보 관리, 전체 시스템의 처리 성능 및 통합 모니터링 정보를 제공한다.The management system 500 manages configuration files for configurations for management of individual configurations belonging to the smart factory platform 1000 and UI / UX management data, individual monitoring of each configuration, linkage between predetermined setting values Information management, processing performance of the entire system, and integrated monitoring information.

보안시스템(600)은 사용자에 대한 인증, 인가, 접근제어를 수행하며 데이터 자체에 대한 보안 및 전송 통로에 대한 보안을 관리한다.The security system 600 performs authentication, authorization and access control for the user, and manages security for the data itself and security for the transmission path.

어플리케이션 시스템(3)은 스마트팩토리 플랫폼(1000)을 기반으로 사용자에게 필요한 화면과 데이터를 가공하여 제공한다.The application system 3 processes and provides screens and data necessary for the user based on the smart factory platform 1000.

본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.It will be understood by those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof.

그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

1: 데이터 수집 장치 2: 네트워크
3: 어플리케이션 시스템 1000: 스마트팩토리 플랫폼
100: 인터페이스 시스템 200: 분산병렬처리시스템
210: 실시간 프로세싱부 220: 메모리부
230: 수행모듈 배포부 300: 빅데이터 분석 시스템
1: data collecting device 2: network
3: Application System 1000: Smart Factory Platform
100: Interface system 200: Distributed parallel processing system
210: real-time processing unit 220:
230: executing module distributing unit 300: big data analyzing system

Claims (26)

복수의 공정이 연결되는 연속공정에서 발생된 데이터를 처리하기 위한 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템에 있어서,
상기 연속공정으로부터 수집된 수집 데이터에 상기 수집 데이터가 발생된 공정의 공정 식별자를 매핑하고, 서로 다른 공정에서 수집된 수집 데이터간의 연계 처리를 위해 상기 매핑된 매핑 데이터를 정렬하는 적어도 하나의 실시간 프로세싱부; 및
상기 정렬 데이터가 분산 저장되는 복수개의 메모리부를 포함하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
A distributed parallel processing system for processing data for a continuous process for processing data generated in a continuous process in which a plurality of processes are connected,
At least one real-time processing unit for mapping the process identifiers of the process in which the collected data is generated to the collected data collected from the continuous process, and sorting the mapped mapping data for the association process between collected data collected in different processes ; And
And a plurality of memory units in which the alignment data is distributedly stored.
제1항에 있어서,
상기 공정 식별자 매핑은 상기 공정을 수행하는 각 설비의 설비 식별자 매핑 및 상기 설비를 통해 가공된 재료의 재료 식별자 매핑 중 적어도 하나의 매핑인 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method according to claim 1,
Wherein the process identifier mapping is a mapping of at least one of an equipment identifier mapping of each facility performing the process and a material identifier mapping of material processed through the facility. system.
제2항에 있어서,
상기 실시간 프로세싱부가 복수개로 구성되는 경우, 상기 복수개의 실시간 프로세싱부는 상기 공정 식별자 매핑 및 상기 매핑 데이터 정렬을 분산 수행하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
3. The method of claim 2,
Wherein the plurality of real-time processing units distribute the process identifier mapping and the mapping data sorting when the real-time processing unit is composed of a plurality of real-time processing units.
제1항에 있어서,
각 실시간 프로세싱부의 부하량에 따라 상기 공정 식별자 매핑 및 상기 매핑 데이터 정렬을 상기 복수개의 실시간 프로세싱부에서 분산 수행시키는 수행모듈 배포부를 더 포함하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method according to claim 1,
Further comprising an execution module distributing unit for distributing the process identifier mapping and the mapping data sorting in the plurality of real time processing units according to a load of each real time processing unit. system.
제4항에 있어서,
상기 수행모듈 배포부는,
상기 각 실시간 프로세싱부에 배포된 수행모듈의 실행에 따른 시스템 자원의 평균값 및 시스템 자원의 이용 패턴 중 적어도 하나를 이용하여 상기 각 실시간 프로세싱부의 부하량이 조절도록 상기 공정 식별자 매핑 및 상기 매핑 데이터 정렬을 분산시키는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
5. The method of claim 4,
Wherein the performance module distributor comprises:
The process identifier mapping and the mapping data sorting are controlled so that the load of each of the real-time processing units is adjusted using at least one of an average value of system resources and a usage pattern of system resources according to execution of an execution module distributed to each real- Wherein the data for the continuous process is processed in real time.
제5항에 있어서,
상기 시스템 자원은, 상기 각 실시간 프로세싱부의 CPU 사용율, 메모리 사용량, 네트워크 통신량, 및 디스크 입출력 처리량 중 적어도 하나를 포함하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
6. The method of claim 5,
Wherein the system resource includes at least one of a CPU usage rate, a memory usage rate, a network communication rate, and a disk input / output throughput of each of the real-time processing units.
제2항에 있어서,
상기 실시간 프로세싱부는 상기 설비 식별자를 상기 수집 데이터에 매핑하는 설비매핑 수행모듈 및 상기 설비 식별자가 매핑된 데이터에 재료 식별자를 매핑하는 재료매핑 수행모듈을 포함하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
3. The method of claim 2,
Wherein the real-time processing unit includes an equipment mapping performing module for mapping the equipment identifier to the collected data, and a material mapping performing module for mapping a material identifier to the data to which the equipment identifier is mapped. Distributed parallel processing system.
제7항에 있어서,
상기 설비매핑 수행모듈은 상기 수집 데이터가 수집된 시간 및 상기 수집 데이터를 수집한 센서의 속성 정보에 기초하여 추출된 상기 설비 식별자를 상기 수집 데이터에 매핑하는 것을 특징으로 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
8. The method of claim 7,
Wherein the facility mapping performing module maps the extracted facility identifier to the collected data based on the time at which the collected data is collected and the attribute information of the sensor that collected the collected data, A distributed parallel processing system.
제7항에 있어서,
상기 재료매핑 수행모듈은 각 공정 별 작업 지시 정보에 기초하여 추출된 상기 재료 식별자를 상기 수집 데이터에 매핑하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
8. The method of claim 7,
Wherein the material mapping execution module maps the material identifier extracted based on the work instruction information for each process to the collected data, in real time.
제1항에 있어서,
상기 실시간 프로세싱부는 상기 매핑 데이터들을 수집 시간으로 정렬하는 시간정렬 및 상기 매핑 데이터들을 상기 공정에서 가공된 재료 단위로 정렬하는 단위정렬 중 적어도 하나의 정렬을 수행하는 데이터 정렬 수행모듈을 포함하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method according to claim 1,
Wherein the real-time processing unit includes a data sorting module for performing at least one of sorting the time for sorting the mapping data by the collection time and unit sort for sorting the mapping data by the processed material in the process A distributed parallel processing system that processes data for a continuous process in real time.
제10항에 있어서,
상기 데이터 정렬 수행모듈은 상기 매핑 데이터들 중 동일한 재료 식별자가 매핑되어 있는 매핑 데이터들을 수집 시간에 따라 순차적으로 시간 정렬하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
11. The method of claim 10,
Wherein the data sorting module sequentially arranges the mapping data in which the same material identifier is mapped among the mapping data according to the collection time in a real time manner.
제10항에 있어서,
상기 데이터 정렬 수행모듈은 상기 공정에서 가공된 재료 상에서 상기 수집 데이터가 수집된 수집 위치를 기준으로 상기 매핑 데이터를 단위정렬하는 것을 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
11. The method of claim 10,
Wherein the data sorting module processes data for a continuous process in real time by uniting the mapping data based on a collecting position where the collected data is collected on the material processed in the process.
제12항에 있어서,
상기 데이터 정렬 수행모듈은 상기 공정에서 가공된 재료의 길이, 상기 재료의 이동 속도, 및 상기 수집 데이터의 수집 주기 중 적어도 하나를 이용하여 상기 수집 데이터가 수집된 수집 위치를 결정하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
13. The method of claim 12,
Wherein the data alignment performing module determines at least one of the length of the material processed in the process, the moving speed of the material, and the collection period of the collection data to determine a collection position at which the collection data is collected. Distributed parallel processing system that processes data for process in real time.
제10항에 있어서,
상기 데이터 정렬 수행모듈은
상기 매핑 데이터 및 기준 데이터들을 상기 공정에서 가공된 재료 상에서 일 방향으로 단위정렬하고,
상기 기준 데이터들은 상기 수집 데이터의 수집 위치 및 상기 재료의 기준점을 기초로 결정되는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
11. The method of claim 10,
The data sorting performing module
Aligning the mapping data and the reference data in one direction on the material processed in the process,
Wherein the reference data is determined based on a collecting position of the collected data and a reference point of the material.
제10항에 있어서,
상기 데이터 정렬 수행모듈은,
상기 공정에서 가공된 재료의 길이, 상기 재료의 이동 속도, 및 상기 수집 데이터의 수집 주기 중 적어도 하나를 이용하여 상기 수집 데이터가 수집된 수집 위치를 결정하고, 상기 재료 상에서 미리 정해진 간격으로 설정된 기준점들과 상기 각 수집 위치간의 거리를 기초로 산출된 상기 각 기준점들에서의 기준 데이터를 기준으로 상기 매핑 데이터를 단위정렬하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
11. The method of claim 10,
Wherein the data alignment performing module comprises:
Determining a collection position at which the collection data is collected using at least one of a length of the material processed in the process, a moving speed of the material, and a collection period of the collection data, And the mapping data is arranged in units based on reference data at each of the reference points calculated based on a distance between the respective collecting positions.
제2항에 있어서,
상기 실시간 프로세싱부는 수집 데이터의 누락이 발생되면, 누락된 수집 데이터를 생성하는 데이터 보정 수행모듈을 포함하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
3. The method of claim 2,
Wherein the real-time processing unit includes a data correction performing module that generates missing collection data when a missing collection data is generated, wherein the real-time processing unit processes the data for the continuous process in real time.
제16항에 있어서,
상기 데이터 보정 수행 모듈은, 특정 영역의 수집 데이터가 누락되면 상기 누락이 발생된 영역에 가장 인접한 전방 영역의 수집 데이터 또는 후방 영역의 수집 데이터를 상기 누락이 발생된 공간의 수집 데이터로 생성하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
17. The method of claim 16,
The data correction execution module generates collection data of a front area closest to the area where the omission occurred and collection data of the rear area as collected data of the space where the omission occurred, To-parallel processing system.
제16항에 있어서,
상기 데이터 보정 수행 모듈은, 특정 시점의 수집 데이터가 누락되면 상기 누락이 발생된 시점의 직전 또는 직후 시점의 수집 데이터를 상기 누락이 발생된 시점의 수집 데이터로 생성하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
17. The method of claim 16,
Wherein the data correction execution module generates collection data at a point in time immediately before or immediately after the point at which the omission occurred when the omission at a specific point of time is missing, In real time.
제14항에 있어서,
상기 매핑 데이터를 시간에 따라 정렬한 시간정렬 데이터, 상기 기준점들에서의 기준 데이터들, 및 상기 매핑 데이터를 상기 재료의 일 방향으로 순차적으로 정렬한 단위정렬 데이터는 상기 복수개의 메모리 서버에 분리 저장되는 것을 특징으로 하는 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
15. The method of claim 14,
Time alignment data obtained by arranging the mapping data according to time, reference data at the reference points, and unit alignment data obtained by sequentially arranging the mapping data in one direction of the material are separately stored in the plurality of memory servers Wherein the data for the continuous process is processed in real time.
제3항, 제14항, 또는 제19항 중 어느 하나의 항에 있어서,
상기 실시간 프로세싱부는 상기 매핑 데이터 및 기준 데이터들을 상기 공정에서 가공된 재료 상에서 일 방향으로 정렬하고,
상기 기준데이터들은 상기 수집 데이터의 수집 위치 및 상기 재료의 기준점을 기초로 결정되며,
상기 재료 상에서의 일 방향은, 상기 재료의 길이 방향, 상기 재료의 폭 방향, 및 상기 재료의 두께 방향 중 적어도 하나인 것을 특징으로 하는 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method according to any one of claims 3, 14, or 19,
The real-time processing unit arranges the mapping data and reference data in one direction on the processed material in the process,
The reference data being determined based on a collection point of the collection data and a reference point of the material,
Wherein one direction on the material is at least one of a longitudinal direction of the material, a width direction of the material, and a thickness direction of the material.
제14항에 있어서,
상기 제1공정에서 가공된 재료에 대한 제1기준 데이터 및 상기 제2공정에서 가성된 재료에 대한 제2기준 데이터는, 상기 제1기준 데이터에 포함된 제1재료 식별자 및 상기 제2기준 데이터에 포함된 제2재료 식별자에 기초하여 연계되는 것을 특징으로 하는 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
15. The method of claim 14,
The first reference data for the material processed in the first process and the second reference data for the material caulked in the second process are included in the first reference data and the second reference data included in the first reference data, Based on the first material identifier and the second material identifier included therein.
제3항에 있어서,
상기 실시간 프로세싱부는 상기 설비 식별자에 따라 미리 설정된 설비이상 판단기준과 상기 설비 식별자가 매핑된 매핑 데이터에 포함된 측정값을 비교하여 상기 설비의 이상여부를 판단하는 설비이상 감지 수행모듈을 포함하고, 상기 설비의 이상여부 판단은 상기 복수개의 실시간 프로세싱부에서 분산 수행되는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method of claim 3,
Wherein the real-time processing unit includes an equipment malfunction detection module that determines whether the equipment is malfunctioning by comparing a predetermined malfunction determination criterion according to the equipment identifier with a measurement value included in mapping data on which the equipment identifier is mapped, Wherein the plurality of real-time processing units are distributedly executed to determine whether the equipment is abnormal.
제3항에 있어서,
상기 실시간 프로세싱부는 상기 재료 식별자에 따라 미리 설정된 품질이상 판단기준과 상기 재료 식별자가 매핑된 매핑 데이터를 비교하여 재료의 품질이상여부를 판단하는 품질이상 감지 수행모듈을 포함하고, 상기 재료의 품질이상여부 판단은 상기 복수개의 실시간 프로세싱부에서 분산 수행되는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method of claim 3,
Wherein the real-time processing unit includes a quality anomaly detection module for determining whether a quality of the material is abnormal by comparing a predetermined quality aberration criterion according to the material identifier with mapping data mapped with the material identifier, And the determination is performed in a distributed manner in the plurality of real-time processing units.
제1항에 있어서,
상기 복수개의 메모리부는, 마스터 인스턴스 및 슬레이브 인스턴스를 포함하는 제1 메모리부 및 제2 메모리부를 포함하고,
상기 제1 메모리부의 마스터 인스턴스에 상기 정렬 데이터가 저장되면 동일한 데이터가 상기 제2 메모리부의 슬레이브 인스턴스에도 복제되고, 상기 제2 메모리부의 마스터 인스턴스에 상기 정렬 데이터가 저장되면 동일한 데이터가 상기 제1 메모리부의 슬레이브 인스턴스에 복제되며,
각 메모리부의 마스터 인스턴스에 오류가 발생되면 나머지 메모리부의 슬레이브 인스턴스들 중 어느 하나가 마스터 인스턴스로 동작하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method according to claim 1,
Wherein the plurality of memory units include a first memory unit including a master instance and a slave instance, and a second memory unit,
When the sorting data is stored in the master instance of the first memory unit, the same data is also replicated in the slave instance of the second memory unit, and when the sorting data is stored in the master instance of the second memory unit, Replicated to the slave instance,
And when an error occurs in the master instance of each memory unit, any one of the slave instances of the remaining memory unit operates as a master instance, and processes the data for the continuous process in real time.
제1항에 있어서,
상기 복수개의 메모리부는, 마스터 인스턴스, 제1 슬레이브 인스턴스, 및 제2 슬레이브 인스턴스를 포함하는 제1 메모리부, 제2 메모리부, 및 제3메모리부를 포함하고,
상기 제1 메모리부의 마스터 인스턴스에 상기 정렬 데이터가 저장되면 동일한 데이터가 상기 제2 메모리부 및 제3 메모리부의 제1 슬레이브 인스턴스에도 복제되고, 상기 제2 메모리부의 마스터 인스턴스에 상기 정렬 데이터가 저장되면 동일한 데이터가 상기 제1 메모리부의 제1 슬레이브 인스턴스 및 제3 메모리부의 제2 슬레이브 인스턴스에도 복제되며, 상기 제3 메모리부의 마스터 인스턴스에 상기 정렬 데이터가 저장되면 동일한 데이터가 상기 제1 메모리부의 제2 슬레이브 인스턴스 및 제2 메모리부의 제2 슬레이브 인스턴스에도 복제되고,
각 메모리부의 마스터 인스턴스에 오류가 발생되면 나머지 메모리부의 슬레이브 인스턴스들 중 어느 하나가 마스터 인스턴스로 동작하는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
The method according to claim 1,
Wherein the plurality of memory units include a first memory unit including a master instance, a first slave instance, and a second slave instance, a second memory unit, and a third memory unit,
When the sorting data is stored in the master instance of the first memory unit, the same data is also replicated to the first slave instance of the second memory unit and the third memory unit, and when the sorting data is stored in the master instance of the second memory unit Data is copied to the first slave instance of the first memory unit and the second slave instance of the third memory unit, and when the sorting data is stored in the master instance of the third memory unit, the same data is transferred to the second slave instance of the first memory unit And the second slave instance of the second memory unit,
And when an error occurs in the master instance of each memory unit, any one of the slave instances of the remaining memory unit operates as a master instance, and processes the data for the continuous process in real time.
제25항에 있어서,
상기 마스터 인스턴스, 상기 제1 슬레이브 인스턴스, 및 상기 제2 슬레이브 인스턴스는 단일 쓰레드(Single Thread) 형태로 구성되고,
상기 복수개의 메모리부는 클러스터링되어 있는 것을 특징으로 하는 연속공정용 데이터를 실시간으로 처리하는 분산병렬 처리시스템.
26. The method of claim 25,
Wherein the master instance, the first slave instance, and the second slave instance are configured in the form of a single thread,
Wherein the plurality of memory units are clustered. 2. The distributed parallel processing system according to claim 1, wherein the plurality of memory units are clustered.
KR1020160113151A 2016-09-01 2016-09-02 Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time KR20180026596A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160113151A KR20180026596A (en) 2016-09-02 2016-09-02 Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time
US15/693,158 US11079728B2 (en) 2016-09-01 2017-08-31 Smart factory platform for processing data obtained in continuous process
CN201710780183.7A CN107798460B (en) 2016-09-01 2017-09-01 Intelligent factory platform for processing data obtained in a continuous process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160113151A KR20180026596A (en) 2016-09-02 2016-09-02 Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190040965A Division KR102032680B1 (en) 2019-04-08 2019-04-08 Distributed Parallel Processing System for Processing Data Of Continuous Process In Real Time

Publications (1)

Publication Number Publication Date
KR20180026596A true KR20180026596A (en) 2018-03-13

Family

ID=61660979

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160113151A KR20180026596A (en) 2016-09-01 2016-09-02 Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time

Country Status (1)

Country Link
KR (1) KR20180026596A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111209311A (en) * 2018-11-06 2020-05-29 京东数字科技控股有限公司 Method and apparatus for processing data
KR20200075048A (en) * 2018-11-30 2020-06-26 한국생산기술연구원 Cyber-Physical Production Systems and data processing method using the same
KR20200110998A (en) * 2019-03-18 2020-09-28 주식회사 지엘 Virtual reality interaction hand tracking system using multiple sensors and implementation method thereof
KR20210039805A (en) * 2019-10-02 2021-04-12 주식회사 유토비즈 A smart factory management system with a management platform for industrial iot and un-iot modoule group using zone-master

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150091901A (en) * 2014-02-04 2015-08-12 호남대학교 산학협력단 Big data processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150091901A (en) * 2014-02-04 2015-08-12 호남대학교 산학협력단 Big data processing system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111209311A (en) * 2018-11-06 2020-05-29 京东数字科技控股有限公司 Method and apparatus for processing data
CN111209311B (en) * 2018-11-06 2024-02-06 京东科技控股股份有限公司 Method and device for processing data
KR20200075048A (en) * 2018-11-30 2020-06-26 한국생산기술연구원 Cyber-Physical Production Systems and data processing method using the same
KR20200110998A (en) * 2019-03-18 2020-09-28 주식회사 지엘 Virtual reality interaction hand tracking system using multiple sensors and implementation method thereof
KR20210039805A (en) * 2019-10-02 2021-04-12 주식회사 유토비즈 A smart factory management system with a management platform for industrial iot and un-iot modoule group using zone-master

Similar Documents

Publication Publication Date Title
KR101892350B1 (en) Smart factory flatform for processing mass data of continuous process in a real time
KR101892351B1 (en) Big Data Analysis System for Smart Factory
KR102216311B1 (en) Smart Factory System Based on Application Programming Interface
KR101951526B1 (en) Interface Middleware System for Smart Factory Platform and Method for Operating The Same
KR20180026596A (en) Distributed Parallel Processing System for Processing Data Of Continuous Process In Rea Time
CN107798460B (en) Intelligent factory platform for processing data obtained in a continuous process
KR101938946B1 (en) Interface Middleware System for Collecting Mass Data and Method for Collecting Data of Interface Middleware System
DE102015101370A1 (en) Managing big data in process control systems
US20180067995A1 (en) Sensor Data Search System, Sensor Data Search Method and Management Computer
US20120116827A1 (en) Plant analyzing system
CN102931625B (en) Online state maintenance intelligent decision analysis device used for relay protection device, and signal processing method and application thereof
KR101892352B1 (en) Middleware system for standardizing data of continuous process
Huang et al. Part family grouping method for reconfigurable manufacturing system considering process time and capacity demand
CN114429249B (en) Method, system, equipment and storage medium for predicting service life of steel pipe bundle production equipment
KR20190040162A (en) Distributed Parallel Processing System for Processing Data Of Continuous Process In Real Time
KR101951527B1 (en) Real time processing system of mass data for managing memory cache automatically
KR102312523B1 (en) Interface Middleware System for Collecting Mass Data
JP7210982B2 (en) Information processing device, information processing method, and program
JP7460233B2 (en) Information processing device, information processing method, program, and data structure
KR102026301B1 (en) Distributed parallel processing system for preventing data loss and method thereof
JP3242031B2 (en) FA information management method and system
CN107612721B (en) Management system and method of operation and maintenance data, convergence server and processing server
JP2020057090A (en) data structure
US10289635B2 (en) Control apparatus and control system aggregating working data of manufacturing cells
Fimmers et al. Asset Administration Shells in Tool Lifecycle Monitoring

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
E601 Decision to refuse application
E801 Decision on dismissal of amendment
A107 Divisional application of patent