KR20230073093A - 정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체 - Google Patents

정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체 Download PDF

Info

Publication number
KR20230073093A
KR20230073093A KR1020220135300A KR20220135300A KR20230073093A KR 20230073093 A KR20230073093 A KR 20230073093A KR 1020220135300 A KR1020220135300 A KR 1020220135300A KR 20220135300 A KR20220135300 A KR 20220135300A KR 20230073093 A KR20230073093 A KR 20230073093A
Authority
KR
South Korea
Prior art keywords
data
topic
transmission
information processing
identification information
Prior art date
Application number
KR1020220135300A
Other languages
English (en)
Inventor
히데키 야치쿠
코지 후쿠다
세리카 사이토
Original Assignee
오므론 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 오므론 가부시키가이샤 filed Critical 오므론 가부시키가이샤
Publication of KR20230073093A publication Critical patent/KR20230073093A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

정보 처리 시스템은 하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터를 송신하는 송신부와, 토픽마다 구분된 데이터베이스와, 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정함과 함께, 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 데이터 관리부를 포함한다. 데이터 관리부는 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 데이터베이스에 격납되어 있는 경우에는 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜서 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납한다.

Description

정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체{Information processing system, Information processing method and R ecording medium stored of Information processing program}
본 발명은 데이터 수집에 관한 정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체에 관한 것이다.
정보 통신 기술의 진전에 수반하여 다양한 데이터를 수집하여 활용하는 방안이 이루어져 있다.
예를 들면 일본 특표2020-503784호 공보는 IoT 네트워크에서의 컴포지트오브젝트를 구비하는 장치를 개시한다. 또한, 일본 특개2019-133610호 공보는 복수의 데이터원을 포함하는 네트워크 통신 환경에서의 데이터 오케스트레이션 플랫폼 관리 방법을 개시한다.
또한, 수집한 데이터를 검색하는 기술로서 일본 특표2017-516213호 공보는 IoT 또는 M2M 디바이스에 가장 효율적인 검색 결과를 제공하는 것으로서 현재의 리소스 디렉터리 기능성에 보다 고도의 검색 엔진 최적화를 추가한 구성을 개시한다.
생산 현장 등에서도 다양한 데이터를 수집하여 활용한다는 방안이 진행되고 있다. 생산 현장 등에서는 워크마다 및/또는 공정마다 관련되는 데이터를 대응시킬 필요가 있다. 이와 같은 데이터의 대응시킴을 실현하기 위해서는 대응시켜지는 데이터에 공통의 식별 정보를 부여할 필요가 있다. 데이터마다 공통의 식별 정보를 부여함으로써 보존하는 데이터량의 증대나 분석 처리 부하의 증대 등의 과제가 생길 수 있다.
본 발명의 하나의 목적은 데이터를 효율적으로 수집 및 격납하고 데이터 활용을 용이화하는 기술을 제공하는 것이다.
본 발명의 한 예에 따르는 정보 처리 시스템은 하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터를 송신하는 송신부와, 토픽마다 구분된 데이터베이스와, 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정함과 함께, 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 데이터 관리부를 포함한다. 데이터 관리부는 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 데이터베이스에 격납되어 있는 경우에는 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜서 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납한다.
이 구성에 의하면 동일한 토픽 및 동일한 식별 정보를 포함하는 복수의 송신 데이터가 송신되는 경우라도 각 송신 데이터에 포함되는 하나 또는 복수의 값은 동일한 토픽 및 동일한 식별 정보에 대응시켜서 데이터베이스에 격납된다. 이에 의해, 다른 타이밍에 복수의 송신 데이터가 송신됐다고 하여도 각각의 송신 데이터에 포함되는 데이터를 효율적으로 수집 및 격납할 수 있다. 또한, 송신 데이터에 의거하여 데이터베이스에의 항목 등의 추가를 자동적으로 행할 수 있기 때문에 데이터베이스의 구조를 명시적으로 변경할 필요가 없다.
데이터 관리부는 송신 데이터에 포함되는 토픽에 대응되어진 데이터의 격납처가 존재하지 않는 경우에 당해 토픽에 대응되어진 데이터의 격납처를 새롭게 생성하도록 해도 좋다. 이 구성에 의하면 새로운 토픽을 포함하는 송신 데이터가 생성된 경우라도 데이터베이스 내를 자동적으로 확장할 수 있기 때문에 데이터베이스를 재구성할 필요가 없고 유연하게 확장 가능한 데이터베이스를 실현할 수 있다.
데이터 관리부는 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 데이터베이스에 격납되지 않은 경우에는 당해 식별 정보에 대응되어진 값을 격납하기 위한 새로운 레코드를 추가하도록 해도 좋다. 이 구성에 의하면 새로운 식별 정보에 대응되어진 값을 포함하는 송신 데이터가 생성된 경우 등에 있어서, 당해 새로운 식별 정보에 대응되어진 값을 확실하게 데이터베이스에 격납할 수 있다.
데이터 관리부는 송신 데이터에 포함되는 값의 데이터명을 격납하는 칼럼이 존재하지 않는 경우에는 당해 데이터명의 값을 격납하기 위한 새로운 칼럼을 추가하도록 해도 좋다. 이 구성에 의하면 동일한 식별 정보에 대응되어진 값이 복수 존재하고 있어도 각 값을 격납하기 위한 영역을 유연하게 확보할 수 있다.
데이터 관리부는 동일한 식별 정보에 대응되어진 복수의 값에 관해 미리 정해진 연산을 실행하여 새로운 값을 추가하도록 해도 좋다. 이 구성에 의하면 수집부가 개별적으로 수집한 값에 대해 임의의 연산을 실행함으로써 보다 유익한 정보를 생성할 수 있다.
데이터 관리부는 송신부에 설정된 토픽과 동일한 토픽이 데이터베이스에 이미 존재하는지의 여부를 판단하도록 해도 좋다. 이 구성에 의하면 새롭게 송신부를 추가하는 경우에 이미 사용되고 있는 토픽이 잘못 설정될 가능성을 저감할 수 있다.
데이터 관리부는 송신부가 송신하는 송신 데이터에 포함되는 하나 또는 복수의 값의 데이터명과 동일한 데이터명이 데이터베이스에 이미 존재하는지의 여부를 판단하도록 해도 좋다. 이 구성에 의하면 새롭게 송신부를 추가하는 경우에 이미 사용되고 있는 데이터명이 잘못 설정될 가능성을 저감할 수 있다.
토픽은 계층 구조로 기술되어도 좋다. 이 구성에 의하면 데이터의 수집 대상인 생산 현장의 구성에 대응시켜서 토픽을 기술할 수 있다.
데이터 관리부는 집계 요구에 따라 당해 집계 요구에 의해 지정된 토픽에 관련시켜진 복수의 값에 대해 당해 집계 요구에 의해 지정된 집계 처리를 실행하도록 해도 좋다. 이 구성에 의하면 특정한 토픽에 관련되는 복수의 값에 관한 집계 결과를 용이하게 취득할 수 있다.
집계 요구는 대상 토픽을 지정하기 위한 와일드 카드를 이용한 기술을 포함하고 있어도 좋다. 이 구성에 의하면 대상 토픽의 각각을 특정할 수가 없어도 공통된 속성의 적어도 일부를 특정하면 집계 처리를 실행할 수 있다.
데이터 관리부는 집계 요구를 수신하면 당해 수신한 집계 요구에 따라 집계 처리를 실행하도록 해도 좋다. 이 구성에 의하면 집계 요구를 송신할 때마다 처리 결과를 취득할 수 있다.
본 발명의 다른 예에 따른 정보 처리 방법은 토픽마다 구분된 데이터베이스를 관리하는 스텝과, 하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터를 송신하는 스텝과, 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정하는 스텝과, 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 스텝을 포함한다. 격납하는 스텝은 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 데이터베이스에 격납되어 있는 경우에는 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜서 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납하는 스텝을 포함한다.
본 발명의 또 다른 예에 따르면 정보 처리 프로그램을 격납한 기록 매체가 제공된다. 정보 처리 프로그램은 컴퓨터에 토픽마다 구분된 데이터베이스를 관리하는 스텝과, 하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터에 응답하여 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정하는 스텝과, 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 스텝을 실행시킨다. 격납하는 스텝은 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 데이터베이스에 격납되어 있는 경우에는 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜서 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납하는 스텝을 포함한다.
본 발명의 상기 및 다른 목적, 특징, 국면 및 이점은 첨부한 도면과 관련하여 이해되는 본 발명에 관한 다음의 상세한 설명으로부터 분명해질 것이다.
도 1A 및 도 1B는 본 실시의 형태에 따르는 정보 처리 시스템의 적용례를 도시하는 모식도.
도 2는 본 실시의 형태에 따르는 정보 처리 시스템의 전체 구성례를 도시하는 모식도.
도 3은 본 실시의 형태에 따르는 정보 처리 시스템의 서버 장치의 하드웨어 구성례를 도시하는 블록도.
도 4는 본 실시의 형태에 따르는 정보 처리 시스템의 송신 장치의 하드웨어 구성례를 도시하는 블록도.
도 5는 본 실시의 형태에 따르는 정보 처리 시스템의 수집 처리를 실현하기 위한 기능 구성례를 도시하는 모식도.
도 6은 본 실시의 형태에 따르는 정보 처리 시스템의 한 예를 도시하는 모식도.
도 7은 도 6에 도시하는 정보 처리 시스템에서의 데이터베이스의 데이터 구조에 생기는 시간적 변화의 한 예를 설명하기 위한 모식도.
도 8은 본 실시의 형태에 따르는 정보 처리 시스템의 수집 처리에 관한 서버 장치가 실행하는 처리 순서를 도시하는 플로우차트.
도 9는 본 실시의 형태에 따르는 정보 처리 시스템의 관리 처리를 설명하기 위한 모식도.
도 10은 본 실시의 형태에 따르는 정보 처리 시스템의 관리 처리에 관한 처리 순서를 도시하는 시퀀스도.
도 11은 본 실시의 형태에 따르는 정보 처리 시스템의 집계 처리를 설명하기 위한 모식도.
도 12는 본 실시의 형태에 따르는 정보 처리 시스템의 집계 처리에 관한 서버 장치가 실행하는 처리 순서를 도시하는 플로우차트.
본 발명의 실시의 형태에 관해 도면을 참조하면서 상세히 설명한다. 또한, 도면 중의 동일 또는 상당 부분에 관해서는 동일 부호를 붙이고 그 설명은 반복하지 않는다.
<A. 적용례>
우선, 본 발명이 적용되는 장면의 한 예에 관해 설명한다.
도 1A 및 도 1B는 본 실시의 형태에 따르는 정보 처리 시스템(1)의 적용례를 도시하는 모식도이다. 도 1A 및 도 1B를 참조하면 정보 처리 시스템(1)은 데이터 송신 모듈(250)로부터 송신 데이터(50)를 수신하는 서버 장치(100)를 포함한다. 서버 장치(100)는 데이터 관리 모듈(152) 및 데이터베이스(160)를 포함한다.
데이터 송신 모듈(250)이 송신하는 송신 데이터(50)는 데이터(54) 및 데이터(54)의 속성을 나타내는 토픽(52)을 포함한다. 송신 데이터(50)에 포함되는 데이터(54)는 하나 또는 복수의 값(58) 및 당해 하나 또는 복수의 값(58)에 대응되어진 식별 정보인 ID(56)를 포함한다. ID(56)는 데이터(54)를 특정하기 위한 식별 정보이다.
본 명세서에서 「토픽」은 데이터의 속성을 나타내는 임의의 정보를 의미하고 데이터를 수집하는 대상에 응하여 적절히 설정된다. 토픽은 관리하고 싶은 데이터의 임의의 단위로 설정할 수 있다. 예를 들면 데이터가 수집되는 공정명, 데이터가 수집되는 장소(공장명이나 플로어명), 데이터가 수집되는 장치, 데이터가 수집되는 워크 종류 등을 토픽으로서 설정할 수 있다.
데이터베이스(160)는 토픽(52)별로 하나 또는 복수의 테이블(162)을 격납한다. 즉, 데이터베이스(160)는 토픽마다 구분되어 있다. 도 1에는 토픽(52)으로서 「TP1」 및 「TP2」가 각각 부여된 2개의 테이블(162)이 데이터베이스(160)에 격납되어 있는 예를 나타낸다.
데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 토픽(52)에 의거하여 데이터(54)의 격납처(테이블(162))를 특정함과 함께, 송신 데이터(50)에 포함되는 데이터(54)를 당해 특정한 데이터의 격납처에 격납한다.
도 1A 및 도 1B에 도시하는 예에서는 데이터(54)에는 데이터명으로서 「시작 시각」 및 「종료 시각」의 2개의 값이 격납되도록 구성되어 있다. 단, 도 1A에 도시하는 데이터(54)에는 「시작 시각」의 값만이 격납되어 있고, 「종료 시각」의 값에 관해서는 격납되어 있지 않다(예를 들면 null이 격납되어 있다). 한편, 도 1B에 도시하는 데이터(54)에는 「종료 시각」의 값만이 격납되어 있고, 「시작 시각」의 값에 관해서는 격납되어 있지 않다(예를 들면 null이 격납되어 있다).
또한, 도 1A 및 도 1B에 도시하는 데이터(54)는 모두 같은 ID(56)(예를 들면 「001」)를 포함한다.
도 1A를 참조하면 데이터 관리 모듈(152)은 송신 데이터(50)의 토픽(52)에 의거하여 「TP1」이 부여되어 있는 테이블(162)을 특정한다. 그리고, 데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 ID(56)인 「001」의 엔트리를 새롭게 생성함과 함께, 송신 데이터(50)에 포함되는 「시작 시각」의 값(58)을 당해 엔트리에 격납한다.
그 후, 도 1B에 도시하는 바와 같이 데이터 관리 모듈(152)이 송신 데이터(50)를 수신하면 송신 데이터(50)의 토픽(52)에 의거하여 「TP1」이 부여되어 있는 테이블(162)을 특정한다. 여기서, 송신 데이터(50)에 포함되는 ID(56)인 「001」의 엔트리가 이미 존재하고 있기 때문에 데이터 관리 모듈(152)은 새롭게 엔트리를 생성하는 것은 아니고, 이미 존재하는 「001」의 엔트리에 송신 데이터(50)에 포함되는 「종료 시각」의 값(58)을 당해 엔트리에 격납한다.
이와 같이 데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 식별 정보(ID(56))와 동일한 식별 정보에 대응되어진 값(58)이 이미 데이터베이스(160)(또는 테이블(162))에 격납되어 있는 경우에는 데이터베이스(160)에 이미 격납되어 있는 식별 정보(ID(56))에 대응시켜서 송신 데이터(50)에 포함되는 데이터(54)에 포함되는 하나 또는 복수의 값(58)을 격납한다.
이와 같은 구성을 채용함으로써 동일한 토픽 및 동일한 식별 정보(ID(56))를 포함하는 복수의 송신 데이터(50)가 다른 타이밍에 송신됐다고 하여도 데이터베이스(160)(또는 테이블(162))에서 동일한 토픽 및 동일한 식별 정보에 대응시켜서 모든 값을 격납할 수 있다. 이에 의해, 토픽 및 식별 정보를 중복하여 데이터베이스(160)에 격납할 필요는 없고 데이터를 효율적으로 수집 및 격납할 수 있다.
<B. 정보 처리 시스템의 전체 구성례>
본 실시의 형태에 따르는 정보 처리 시스템(1)은 주로, 생산 현장에서 데이터를 수집하는데 데이터를 수집하는 대상에 관해서는 특히 한정되는 것이 아니다.
도 2는 본 실시의 형태에 따르는 정보 처리 시스템(1)의 전체 구성례를 도시하는 모식도이다. 도 2를 참조하면 정보 처리 시스템(1)은 서버 장치(100)와, 하나 또는 복수의 송신 장치(200-1, 200-2, 200-3, 200-4, 200-5, 200-6, …)(이하, 「송신 장치(200)」라고도 총칭한다.)와, 정보 처리 장치(300-1, 300-2…)(이하, 「정보 처리 장치(300)」라고도 총칭한다.)를 포함한다.
서버 장치(100)는 네트워크(2)를 통하여 송신 장치(200)로부터 송신되는 데이터를 격납함과 함께, 필요한 정보 처리를 실행한다. 또한, 서버 장치(100)는 정보 처리 장치(300) 등으로부터의 집계 요구에 응하여 격납하고 있는 데이터를 제공한다.
송신 장치(200)의 각각은 생산 현장 등으로부터 미리 정해진 데이터를 수집하고 서버 장치(100)에 송신한다. 송신 장치(200)가 데이터를 서버 장치(100)에 송신하는 타이밍은 임의로 결정할 수 있다.
도 2에 도시하는 바와 같이 워크(10)가 복수의 공정을 경유하여 제품이 되는 라인을 상정하면 송신 장치(200)의 각각은 어느 한 공정에 배치되어 있고, 각 공정을 통과하는 워크(10)로부터 수집한 데이터를 서버 장치(100)에 송신한다.
정보 처리 장치(300)는 네트워크(4)를 통하여 서버 장치(100)에 액세스하여 임의의 데이터를 제공한다.
<C. 하드웨어 구성>
다음에 본 실시의 형태에 따르는 정보 처리 시스템(1)을 구성하는 장치의 하드웨어 구성의 한 예에 관해 설명한다.
(c1: 서버 장치(100))
도 3은 본 실시의 형태에 따르는 정보 처리 시스템(1)의 서버 장치(100)의 하드웨어 구성례를 도시하는 블록도이다. 도 3을 참조하면 서버 장치(100)는 CPU(Central Processing Unit)나 MPU(Micro-Processing Unit) 등의 하나 또는 복수의 프로세서(102)와, 주(主) 메모리(104)와, 광학 드라이브(106)와, 스토리지(110)와, 네트워크 컨트롤러(120, 122)와, USB(Universal Serial Bus) 컨트롤러(124)와, 입력부(126)와, 표시부(128)를 포함한다. 이들의 컴포넌트는 버스(108)를 통하여 접속된다.
프로세서(102)는 스토리지(110)에 격납된 각종 프로그램을 판독하여 주 메모리(104)에 전개하여 실행함으로써 서버 장치(100)에서 필요한 처리를 실현한다.
스토리지(110)는 예를 들면 HDD(Hard Disk Drive)나 SSD(Flash Solid State Drive) 등의 하나 또는 복수의 불휘발성 기억 장치로 구성된다. 스토리지(110)에는 전형적으로는 OS(Operating System)(112) 및 후술하는 각종 처리를 실현하기 위한 정보 처리 프로그램(114)이 격납된다. 또한, 스토리지(110)에는 도 3에 도시하는 프로그램 이외의 필요한 프로그램이 격납되어도 좋다.
스토리지(110)의 기억 영역을 이용하여 송신 장치(200)로부터 수집된 데이터로 구성되는 데이터베이스(160)가 실현되어도 좋다.
서버 장치(100)는 광학 드라이브(106)를 갖고 있어도 좋다. 광학 드라이브(106)는 컴퓨터 판독 가능한 프로그램을 비 일과적으로 격납하는 기록 매체(107)(예를 들면 DVD(Digital Versatile Disc) 등의 광학 기록 매체)로부터 프로그램을 판독하여 스토리지(110) 등에 격납한다.
서버 장치(100)에서 실행되는 각종 프로그램은 컴퓨터 판독 가능한 기록 매체(107)를 통하여 인스톨되어도 좋지만, 네트워크상의 임의의 서버로부터 다운로드하는 형태로 인스톨하도록 해도 좋다.
네트워크 컨트롤러(120)는 네트워크(2)를 통한 송신 장치(200) 등과의 데이터의 교환을 제어한다. 네트워크 컨트롤러(122)는 네트워크(4)를 통한 정보 처리 장치(300) 등과의 데이터의 교환을 제어한다.
USB 컨트롤러(124)는 USB 접속을 통한 외부 장치(예를 들면 서포트 장치)와의 데이터의 교환을 제어한다.
입력부(126)는 터치 패널, 마우스, 키보드 등으로 구성되고 유저 조작을 접수한다. 표시부(128)는 디스플레이, 각종 표시기 등으로 구성되고 프로세서(102)로부터의 처리 결과 등을 출력한다.
도 3에는 프로세서(102)가 프로그램을 실행하는데 필요한 처리가 제공되는 구성례를 나타냈지만, 이들 제공되는 처리의 일부 또는 전부를 전용의 하드웨어 회로(예를 들면 ASIC(Application Specific Integrated Circuit) 또는 FPGA(Field-Programmable Gate Array) 등)를 이용하여 실장해도 좋다.
또한, 서버 장치(100)가 담당하는 처리의 전부 또는 일부를 네트워크상의 클라우드 컴퓨팅을 이용하여 실행해도 좋다.
(c2: 송신 장치(200))
도 4는 본 실시의 형태에 따르는 정보 처리 시스템(1)의 송신 장치(200)의 하드웨어 구성례를 도시하는 블록도이다. 도 4를 참조하면 송신 장치(200)는 처리 회로(210)와, 네트워크 컨트롤러(220)와, 입력부(226)와, 표시부(228)와, 수집부(230)를 포함한다.
처리 회로(210)는 CPU나 MPU 등의 프로세서(212)와, 주 메모리(214)와, 플래시 메모리 등의 스토리지(216)를 포함한다. 프로세서(212)는 스토리지(216)에 격납된 각종 프로그램을 판독하여 주 메모리(214)에 전개하여 실행함으로써 송신 장치(200)에서 필요한 처리를 실현한다.
네트워크 컨트롤러(220)는 네트워크(2)를 통한 서버 장치(100) 등과의 데이터의 교환을 제어한다.
입력부(226)는 터치 패널, 마우스, 키보드 등으로 구성되고 유저 조작을 접수한다. 표시부(228)는 디스플레이, 각종 표시기 등으로 구성되고 프로세서(102)로부터의 처리 결과 등을 출력한다. 또한, 입력부(226)와 표시부(228)를 일체화한 터치 패널 디스플레이를 채용해도 좋고, 입력부(226) 및 표시부(228)를 생략해도 좋다.
수집부(230)는 데이터를 수집하기 위한 임의의 구성을 포함한다. 예를 들면 수집부(230)는 워크 등에 부여된 2차원 또는 3차원 코드를 광학적으로 판독하는 광학 디바이스나 임의의 계측 장치로부터 데이터를 수집하는 인터페이스 회로를 포함할 수 있다.
도 4에는 프로세서(212)가 프로그램을 실행하는데 필요한 처리가 제공되는 구성례를 나타냈지만, 이들 제공되는 처리의 일부 또는 전부를 전용의 하드웨어 회로(예를 들면 ASIC 또는 FPGA 등)를 이용하여 실장해도 좋다. 또는 송신 장치(200)의 주요부를 범용적인 아키텍처에 따른 하드웨어(예를 들면 범용 퍼스널 컴퓨터를 베이스로 한 산업용 퍼스널 컴퓨터)를 이용하여 실현해도 좋다.
또한, 송신 장치(200)는 단일한 장치가 아니라, 복수의 장치가 연휴함으로써 실현되어도 좋다. 예를 들면 기존의 센서나 제어 장치에 대해 송신 데이터를 생성 및 송신하기 위한 통신 인터페이스를 부가함으로써 실현되어도 좋다.
또한, 송신 장치(200)에 상당하는 기능을 임의의 장치에서 실행되는 소프트웨어로서 실현해도 좋다. 이 경우에는 기존의 장치에서 실행되는 소프트웨어에 더하여 송신 장치(200)에 상당하는 소프트웨어를 추가함으로써 실현되어도 좋다.
(c3: 정보 처리 장치(300))
본 실시의 형태에 따르는 정보 처리 시스템(1)의 정보 처리 장치(300)는 일반적인 퍼스널 컴퓨터 등에 의해 구성된다. 일반적인 퍼스널 컴퓨터에 관해서는 공지이기 때문에 상세한 설명은 행하지 않는다.
<D. 기본적인 수집 처리>
다음에 본 실시의 형태에 따르는 정보 처리 시스템(1)에서의 기본적인 수집 처리에 관해 설명한다.
도 5는 본 실시의 형태에 따르는 정보 처리 시스템(1)의 수집 처리를 실현하기 위한 기능 구성례를 도시하는 모식도이다. 도 5를 참조하면 정보 처리 시스템(1)에서 서버 장치(100)는 데이터 배신 모듈(150)과, 데이터 관리 모듈(152)과, 데이터베이스(160)를 포함한다. 송신 장치(200)는 데이터 송신 모듈(250)을 포함한다. 정보 처리 장치(300)는 데이터 취득 모듈(350)을 포함한다.
송신 장치(200)의 데이터 송신 모듈(250)은 송신부에 상당하고 데이터를 수집하여 송신한다. 데이터 송신 모듈(250)이 송신하는 데이터를 「송신 데이터(50)」라고 칭한다.
송신 데이터(50)는 격납되어 있는 데이터(54)의 속성을 나타내는 토픽(52)을 포함한다. 송신 데이터(50)에 격납되어 있는 데이터(54)는 하나 또는 복수의 값(58) 및 하나 또는 복수의 값(58)에 대응시켜지는 ID(56)를 포함한다. ID(56)는 데이터(54)를 특정하기 위한 식별 정보이다.
서버 장치(100)의 데이터 배신 모듈(150)은 데이터 송신 모듈(250)로부터 수신한 송신 데이터(50)에 포함되는 토픽(52)을 특정하고 당해 특정한 토픽(52)을 구독하고 있는 데이터 관리 모듈(152) 및/또는 데이터 취득 모듈(350)에 송신 데이터(50)를 전송한다. 송신 데이터(50)의 배신처는 복수의 모듈이라도 좋다. 또한, 데이터 배신 모듈(150)은 수신한 송신 데이터(50)의 전부를 데이터 관리 모듈(152)에 전송하도록 해도 좋다.
정보 처리 장치(300)의 데이터 취득 모듈(350)은 유저에 의해 지정된 구독 대상의 토픽을 데이터 배신 모듈(150)에 통지한다. 또한, 데이터 취득 모듈(350)은 격납되어 있는 데이터 중에서 취득하고 싶은 데이터의 토픽을 데이터 배신 모듈(150)에 통지한다. 이 통지에 응답하여 데이터 배신 모듈(150)은 지정된 토픽에 대응하는 데이터를 데이터 취득 모듈(350)에 송신한다.
서버 장치(100)의 데이터 관리 모듈(152)은 데이터 배신 모듈(150)로부터 수신한 송신 데이터(50)에 포함되는 토픽(52)에 의거하여 대응하는 데이터(54)를 데이터베이스(160)에 격납한다. 이와 같이 데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 토픽(52)에 의거하여 데이터의 격납처를 특정함과 함께, 송신 데이터(50)에 포함되는 데이터(54)를 당해 특정한 데이터의 격납처에 격납한다.
데이터 관리 모듈(152)은 데이터 배신 모듈(150)로부터의 집계 요구에 응하여 데이터베이스(160)에 격납되어 있는 데이터를 검색하도록 해도 좋다.
또한, 데이터 관리 모듈(152)은 후술하는 바와 같은 데이터베이스(160)의 데이터 구조의 갱신(추가 및 삭제를 포함한다)을 담당해도 좋다. 또한, 데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 데이터(54)에 대한 임의의 연산을 실행하도록 해도 좋다.
데이터베이스(160)는 토픽마다 구분되어 있다. 보다 구체적으로는 데이터베이스(160)는 토픽(52)별로 하나 또는 복수의 테이블(162)을 격납한다. 테이블(162)의 각각은 ID(164)와 하나 또는 복수의 값(166)이 대응되어 격납되어 있다.
또한, 토픽은 상술한 바와 같은 단일한 값으로 한하지 않고, 계층 구조를 채용해도 좋다. 계층 구조로 기술하는 경우에는 「상대 표기」 및/또는 「절대 표기」를 도입해도 좋다. 「상대 표기」는 임의의 기준으로부터의 경로를 나타내는 것이고, 예를 들면 「line3/process5」라고 한 바와 같이 「/」로 시작되지 않는 표기로 해도 좋다.
또한, 「절대 표기」는 대상의 시스템에서 일의로 특정 가능한 경로를 나타내는 것이고, 예를 들면 「/factory2/line3/process5」라고 한 바와 같이 「/」로 시작되는 표기로 해도 좋다. 이때, 절대 표기의 선두 부분(예를 들면 「/factory2/」)을 글로벌 토픽이라고 칭하고 그 이후의 부분(예를 들면 「line3/process5」)을 로컬 토픽이라고 칭할 수 있다. 상대 표기는 글로벌 토픽 없는 로컬 토픽으로 간주할 수도 있다.
도 6은 본 실시의 형태에 따르는 정보 처리 시스템(1)의 한 예를 도시하는 모식도이다. 도 6에는 워크(10)가 공정 1 및 공정 2에서 처리되는 예를 나타낸다. 정보 처리 시스템(1)은 공정 1 및 공정 2에서의 워크(10)에 대한 처리의 시작 시각 및 종료 시각을 수집한다.
도 6을 참조하면 워크(10)는 컨베이어 등에 의해 공정 1, 공정 2라는 순서로 반송됨과 함께, 각 공정에서 가공이나 조립 등의 처리가 행해진다. 워크(10)에는 워크(10)를 특정하기 위한 ID(001, 002, 003, …)를 나타내는 2차원 코드(12)가 부여되어 있다.
송신 장치(200)는 2차원 코드(12)를 광학적으로 판독하여 워크(10)의 ID를 취득함과 함께, ID를 취득한 시각도 취득한다. 송신 장치(200)는 어느 한 공정의 처리 시작 포인트 또는 처리 종료 포인트에 배치되어 있다. 그 때문에 송신 장치(200)는 각 공정에서의 워크(10)에 대한 처리의 시작 시각 또는 종료 시각을 서버 장치(100)에 송신할 수 있다. 즉, 송신 장치(200)가 송신하는 송신 데이터(50)의 데이터(54)는 워크(10)의 ID와 시작 시각 또는 종료 시각을 포함한다.
보다 구체적으로는 송신 장치(200-1)는 공정 1의 처리 시작 포인트에 배치되어 있고, 송신 장치(200-2)는 공정 1의 처리 종료 포인트에 배치되어 있다. 마찬가지로 송신 장치(200-3)는 공정 2의 처리 시작 포인트에 배치되어 있고, 송신 장치(200-4)는 공정 2의 처리 종료 포인트에 배치되어 있다.
이와 같이 송신 장치(200)의 각각은 워크(10)가 통과한 때에 워크(10)에 부여되어 있는 2차원 코드(12)를 광학적으로 판독하여 당해 2차원 코드(12)를 광학적으로 판독한 시각을 서버 장치(100)에 송신한다. 이때, 송신 장치(200)의 각각은 배치되어 있는 공정을 특정하기 위한 정보를 토픽(52)으로서 송신 데이터(50)에 포함한다.
보다 구체적으로는 송신 장치(200-1)는 워크(10)가 통과하면(공정 1에서의 워크(10)에 대한 처리가 시작되면), 워크(10)에 부여되어 있는 2차원 코드(12)를 광학적으로 판독하여 취득된 워크(10)의 ID와, 워크(10)의 ID를 판독한 시각인 시작 시각을 데이터(54-1)로서 생성한다. 그리고, 송신 장치(200-1)는 「공정 1」을 토픽(52-1)으로서 데이터(54-1)에 부가하여 송신 데이터(50-1)를 생성하고 서버 장치(100)에 송신한다.
서버 장치(100)(데이터 관리 모듈(152))는 송신 장치(200-1)로부터 송신 데이터(50-1)를 수신하면 송신 데이터(50-1)에 포함되는 토픽(52-1)의 값인 「공정 1」에 대응하는 테이블(162-1)을 특정하고 송신 데이터(50-1)에 포함되는 데이터(54-1)(ID 및 시작 시각)를 격납한다. 이때, 데이터(54-1)의 ID의 값인 「001」과 같은 값의 ID(164)가 부여된 레코드가 존재하지 않기 때문에 서버 장치(100)는 새로운 레코드를 추가한다.
이와 같이 서버 장치(100)(데이터 관리 모듈(152))는 송신 데이터(50)에 포함되는 ID(56)(식별 정보)와 같은 ID에 대응되어진 값이 데이터베이스(160)에 격납되지 않은 경우에는 ID(56)에 대응되어진 값을 격납하기 위한 새로운 레코드를 추가한다.
이어서, 송신 장치(200-2)는 워크(10)가 통과하면(공정 1에서의 워크(10)에 대한 처리가 종료되면), 워크(10)에 부여되어 있는 2차원 코드(12)를 광학적으로 판독하여 취득된 워크(10)의 ID와, 워크(10)의 ID를 판독한 시각인 종료 시각을 데이터(54-2)로서 생성한다. 그리고, 송신 장치(200-2)는 「공정 1」을 토픽(52-2)으로서 데이터(54-2)에 부가하여 송신 데이터(50-2)를 생성하고 서버 장치(100)에 송신한다.
서버 장치(100)(데이터 관리 모듈(152))는 송신 장치(200-2)로부터 송신 데이터(50-2)를 수신하면 송신 데이터(50-2)에 포함되는 토픽(52-2)의 값인 「공정 1」에 대응하는 테이블(162-1)을 특정하고 송신 데이터(50-2)에 포함되는 데이터(54-2)(ID 및 종료 시각)를 격납한다. 이때, 데이터(54-1)의 ID의 값인 「001」과 같은 값의 ID(164)가 부여된 레코드가 이미 존재하고 있기 때문에 서버 장치(100)는 기존의 레코드에 종료 시각을 격납한다.
또한, 서버 장치(100)(데이터 관리 모듈(152)의 연산 기능(154))는 시작 시각 및 종료 시각의 양방이 격납된 레코드에 관해 시작 시각과 종료 시각과의 차를 작업 시간으로서 산출한다. 그리고, 서버 장치(100)는 산출한 작업 시간을 대응하는 레코드에 격납한다.
데이터 관리 모듈(152)의 연산 기능(154)은 워크(10)의 각각에 관해 시작 시각 및 종료 시각으로부터 작업 시간을 산출하는 처리를 담당한다. 또한, 연산 기능(154)에 의한 작업 시간의 산출은 대응하는 시작 시각 및 종료 시각이 갖추어져 있으면 어느 때라도 좋다. 예를 들면 시작 시각과 종료 시각이 갖추어진 직후에 작업 시간을 산출하도록 해도 좋고, 미리 정해진 주기마다 테이블(162)에 포함되는 레코드중 시작 시각과 종료 시각이 갖추어진 레코드를 추출하고 추출한 레코드에 관해 작업 시간을 산출하도록 해도 좋다.
워크(10)는 공정 1에서의 처리가 종료되면 공정 2에 보내진다. 송신 장치(200-3)는 워크(10)가 통과하면(공정 2에서의 워크(10)에 대한 처리가 시작되면), 워크(10)에 부여되어 있는 2차원 코드(12)를 광학적으로 판독하여 취득된 워크(10)의 ID와, 워크(10)의 ID를 판독한 시각인 시작 시각을 데이터(54-3)로서 생성한다. 그리고, 송신 장치(200-3)는 「공정 2」를 토픽(52-3)으로서 데이터(54-3)에 부가하여 송신 데이터(50-3)를 생성하고 서버 장치(100)에 송신한다.
이어서, 송신 장치(200-4)는 워크(10)가 통과하면(공정 2에서의 워크(10)에 대한 처리가 종료되면), 워크(10)에 부여되어 있는 2차원 코드(12)를 광학적으로 판독하여 취득된 워크(10)의 ID와, 워크(10)의 ID를 판독한 시각인 종료 시각을 데이터(54-4)로서 생성한다. 그리고, 송신 장치(200-4)는 「공정 2」를 토픽(52-4)로서 데이터(54-4)에 부가하여 송신 데이터(50-4)를 생성하고 서버 장치(100)에 송신한다.
서버 장치(100)(데이터 관리 모듈(152))는 송신 장치(200-3) 및 송신 장치(200-4)로부터 송신 데이터(50-3) 및 송신 데이터(50-4)를 각각 수신하면 「공정 2」에 대응하는 테이블(162-2)을 특정하고 송신 데이터(50-3, 50-4)에 포함되는 데이터(54-2, 54-4)를 격납한다. 또한, 서버 장치(100)(데이터 관리 모듈(152)의 연산 기능(154))는 송신 데이터(50-3) 및 송신 데이터(50-4)에 대해서도 시작 시각과 종료 시각과의 차를 작업 시간으로서 산출한다.
상술한 바와 같이 데이터 관리 모듈(152)의 연산 기능(154)은 같은 ID에 대응시켜지는 복수의 값(예를 들면 「시작 시각」 및 「종료 시각」)에 관해 미리 정해진 연산을 실행하여 새로운 값(예를 들면 「작업 시간」)을 추가한다.
도 7은 도 6에 도시하는 정보 처리 시스템(1)에서의 데이터베이스(160)의 데이터 구조에 생기는 시간적 변화의 한 예를 설명하기 위한 모식도이다. 도 7에는 같은 워크(10)가 공정 1 및 공정 2에서 순차적으로 처리된 경우의 데이터베이스(160)의 데이터 구조에 생기는 시간적 변화의 한 예를 나타낸다.
우선, 초기 상태에서는 서버 장치(100)의 데이터베이스(160)는 아무런 테이블(162)도 존재하지 않는다고 한다. 워크(10)에 대한 공정 1에서의 처리가 시작되면 서버 장치(100)는 송신 데이터(50-1)를 수신한다. 송신 데이터(50-1)는 토픽(52-1)으로서 「공정 1」의 정보를 포함하고 있다.
서버 장치(100)의 데이터 관리 모듈(152)은 「공정 1」에 대응하는 테이블이 존재하지 않기 때문에 새로운 테이블을 생성한다. 보다 구체적으로는 데이터 관리 모듈(152)은 송신 데이터(50-1)에 포함되는 토픽(52-1)에 의거하여 「공정 1」이 부여된 테이블을 생성한다(도 7의 (1)). 생성된 테이블에는 필수의 정보인 ID를 격납하는 칼럼이 초기 설정되어도 좋다.
이와 같이 서버 장치(100)의 데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 토픽(52)에 대응되어진 데이터의 격납처인 테이블이 존재하지 않는 경우에 당해 토픽에 대응되어진 테이블을 새롭게 생성한다.
이어서, 데이터 관리 모듈(152)은 송신 데이터(50-1)에 포함되는 데이터명인 「시작 시각」에 대응하는 칼럼이 존재하지 않기 때문에 새로운 칼럼을 추가한다(도 7의 (2)). 이와 같이 서버 장치(100)의 데이터 관리 모듈(152)은 송신 데이터(50)에 포함되는 값의 데이터명을 격납하는 칼럼이 존재하지 않는 경우에는 당해 데이터명의 값을 격납하기 위한 새로운 칼럼을 추가한다.
그리고, 데이터 관리 모듈(152)은 송신 데이터(50-1)에 포함되는 ID의 값 및 시작 시각의 값을 대상의 레코드에 격납한다(도 7의 (3)).
그 후, 서버 장치(100)가 송신 데이터(50-2)를 수신하면 송신 데이터(50-2)에 포함되는 데이터명인 「종료 시각」에 대응하는 칼럼이 존재하지 않기 때문에 데이터 관리 모듈(152)은 새로운 칼럼을 추가한다(도 7의 (4)).
이어서, 데이터 관리 모듈(152)은 송신 데이터(50-2)에 포함되는 ID의 값에 대응하는 레코드를 특정하고 송신 데이터(50-2)에 포함되는 종료 시각의 값을 대상의 레코드에 격납한다. 또한, 데이터 관리 모듈(152)은 시작 시각의 값 및 종료 시각의 값으로부터 작업 시간을 산출한다. 데이터 관리 모듈(152)은 「작업 시간」에 대응하는 칼럼이 존재하지 않기 때문에 새로운 칼럼을 추가한다. 최종적으로, 데이터 관리 모듈(152)은 산출한 작업 시간 값을 대상의 레코드에 격납한다(도 7의 (5)).
그 후, 서버 장치(100)는 송신 데이터(50-3) 및 송신 데이터(50-4)를 순차적으로 수신하면 상술과 마찬가지의 처리를 실행한다.
구체적으로는 워크(10)에 대한 공정 2에서의 처리가 시작되면 서버 장치(100)는 송신 데이터(50-3)를 수신한다. 송신 데이터(50-3)는 토픽(52-3)으로서 「공정 2」의 정보를 포함하고 있다.
서버 장치(100)의 데이터 관리 모듈(152)은 송신 데이터(50-3)에 포함되는 토픽(52-3)에 의거하여 「공정 2」가 부여된 테이블을 생성한다(도 7의 (6)). 이어서, 데이터 관리 모듈(152)은 송신 데이터(50-3)에 포함되는 데이터명인 「시작 시각」에 대응하는 칼럼이 존재하지 않기 때문에 새로운 칼럼을 추가한다(도 7의 (7)). 그리고, 데이터 관리 모듈(152)은 송신 데이터(50-3)에 포함되는 ID의 값 및 시작 시각의 값을 대상의 레코드에 격납한다(도 7의 (8)).
그 후, 서버 장치(100)가 송신 데이터(50-4)를 수신하면 송신 데이터(50-4)에 포함되는 데이터명인 「종료 시각」에 대응하는 칼럼이 존재하지 않기 때문에 데이터 관리 모듈(152)은 새로운 칼럼을 추가한다(도 7의 (9)).
이어서, 데이터 관리 모듈(152)은 송신 데이터(50-4)에 포함되는 ID의 값에 대응하는 레코드를 특정하고 송신 데이터(50-4)에 포함되는 종료 시각의 값을 대상의 레코드에 격납한다. 또한, 데이터 관리 모듈(152)은 시작 시각의 값 및 종료 시각의 값으로부터 작업 시간을 산출한다. 데이터 관리 모듈(152)은 「작업 시간」에 대응하는 칼럼이 존재하지 않기 때문에 새로운 칼럼을 추가한다. 최종적으로, 데이터 관리 모듈(152)은 산출한 작업 시간 값을 대상의 레코드에 격납한다(도 7의 (10)).
서버 장치(100)의 데이터 관리 모듈(152)은 송신 데이터(50)를 수신할 때마다 상술한 바와 같은 처리를 실행한다. 또한, 새로운 테이블의 생성 및/또는 새로운 칼럼의 추가는 새로운 토픽(52)을 포함하는 송신 데이터(50)를 수신한 경우에만 실행되게 된다.
도 8은 본 실시의 형태에 따르는 정보 처리 시스템(1)의 수집 처리에 관한 서버 장치(100)가 실행하는 처리 순서를 도시하는 플로우차트이다. 도 8에 도시하는 각 스텝은 전형적으로는 서버 장치(100)의 프로세서(102)가 정보 처리 프로그램(114)을 실행함으로써 실현된다.
도 8을 참조하면 서버 장치(100)는 토픽마다 구분된 데이터베이스(160)를 관리한다(스텝 S100). 그리고, 서버 장치(100)는 어느 하나의 송신 장치(200)로부터 송신 데이터(50)를 수신했는지의 여부를 판단한다(스텝 S102). 즉, 서버 장치(100)는 송신 장치(200)가 송신 데이터(50)를 서버 장치(100)에 송신했는지의 여부를 판단한다. 송신 데이터(50)를 수신하지 않았으면(스텝 S102에서 NO) 스텝 S102의 처리가 반복된다.
송신 데이터(50)를 수신했으면(스텝 S102에서 YES) 서버 장치(100)는 수신한 송신 데이터(50)에 포함되는 토픽(52)에 대응하는 테이블(162)이 존재하는지의 여부를 판단한다(스텝 S104).
수신한 송신 데이터(50)에 포함되는 토픽(52)에 대응하는 테이블(162)이 존재하지 않으면(스텝 S104에서 NO), 서버 장치(100)는 수신한 송신 데이터(50)에 포함되는 토픽(52)에 대응하는 새로운 테이블(162)을 생성한다(스텝 S106).
이와 같이 서버 장치(100)는 송신 데이터(50)에 포함되는 토픽(52)에 의거하여 데이터의 격납처를 특정한다.
수신한 송신 데이터(50)에 포함되는 토픽(52)에 대응하는 테이블(162)이 존재하고 있으면(스텝 S104에서 YES) 또는 새로운 테이블(162)을 생성한 후(스텝 S106의 실행 후), 서버 장치(100)는 수신한 송신 데이터(50)에 포함되는 ID(56)와 같은 값의 ID(164)가 부여된 레코드가 존재하는지의 여부를 판단한다(스텝 S108).
수신한 송신 데이터(50)에 포함되는 ID(56)와 같은 값의 ID(164)가 부여된 레코드가 존재하지 않으면(스텝 S108에서 NO) 서버 장치(100)는 수신한 송신 데이터(50)에 포함되는 ID(56)를 ID(164)로서 부여한 레코드를 생성한다(스텝 S110).
이어서, 서버 장치(100)는 수신한 송신 데이터(50)에 포함되는 데이터(54)의 데이터명(시작 시각 및/또는 종료 시각)을 특정한다(스텝 S112). 그리고, 서버 장치(100)는 특정한 데이터명이 격납처의 테이블(162)에 존재하는지의 여부를 판단한다(스텝 S114).
특정한 데이터명이 격납처의 테이블(162)에 존재하지 않으면(스텝 S114에서 NO) 서버 장치(100)는 존재하지 않는 데이터명에 대응하는 새로운 칼럼을 추가한다(스텝 S116).
특정한 데이터명이 격납처의 테이블(162)에 존재하고 있으면(스텝 S114에서 YES), 또는 테이블(162)에 새로운 칼럼을 추가한 후(스텝 S116의 실행 후), 서버 장치(100)는 수신한 송신 데이터(50)에 포함되는 데이터(54)에 포함되는 값(58)을 ID(56)와 같은 값의 ID(164)가 부여된 레코드의 대응하는 칼럼에 격납한다(스텝 S118). 이와 같이 서버 장치(100)는 송신 데이터(50)에 포함되는 데이터(54)를 특정한 데이터의 격납처에 격납한다. 이때, 서버 장치(100)는 송신 데이터(50)에 포함되는 ID(56)와 같은 ID(164)에 대응되어진 값이 이미 데이터베이스(160)에 격납되어 있는 경우에는 데이터베이스(160)에 이미 격납되어 있는 ID(164)에 대응시켜서 송신 데이터(50)에 포함되는 데이터(54)에 포함되는 하나 또는 복수의 값(58)을 격납하게 된다.
이어서, 서버 장치(100)는 ID(56)와 같은 값의 ID(164)가 부여된 레코드에서 시작 시각과 종료 시각이 갖추어졌는지의 여부를 판단한다(스텝 S120). ID(56)와 같은 값의 ID(164)가 부여된 레코드에서 시작 시각과 종료 시각이 갖추어져 있으면(스텝 S120에서 YES) 서버 장치(100)는 시작 시각 및 종료 시각으로부터 작업 시간을 산출한다(스텝 S122).
ID(56)와 같은 값의 ID(164)가 부여된 레코드에서 시작 시각과 종료 시각이 갖추어져 있지 않으면(스텝 S120에서 NO) 스텝 S122의 처리는 스킵된다.
이와 같이 공정 1 및 공정 2의 각각에서 워크(10)에 대한 작업에 필요로 하는 시간(작업 시간)를 수집할 수 있다. 워크(10)는 순차적으로 처리되기 때문에 모든 워크(10)에 관해 시작 시각, 종료 시각 및 작업 시간을 축적함으로써 공정마다 필요로 하는 작업 시간의 평균치나 편차 등을 분석하기 위한 데이터로서 이용할 수 있다.
설명의 편의상, 2개의 공정으로 이루어지는 예를 설명했지만, 하나 또는 복수의 공정이 추가된 경우라도 유연하게 대응할 수 있다. 예를 들면 공정 3이 추가된 경우에는 추가된 공정 3에 송신 장치(200)를 새롭게 배치함과 함께, 당해 새롭게 추가된 송신 장치(200)에 대해 토픽(52)으로서 「공정 3」을 설정한다. 이에 의해, 서버 장치(100)는 토픽(52)의 새로운 값에 대응하는 테이블(162)을 생성한다.
도 6에 도시하는 바와 같이 동일한 워크(10)에 관한 데이터(시작 시각 및 종료 시각)는 다른 송신 장치(200)가 각각 다른 타이밍에 서버 장치(100)에 송신된다. 이와 같이 시간적으로 분산된 복수의 데이터가 송신되는 경우라도 토픽(52) 및 ID(56)를 이용함으로써 워크(10)마다 필요한 데이터를 집약할 수 있다.
<E. 토픽 및 데이터명의 관리>
상술한 바와 같이 본 실시의 형태에 따르는 정보 처리 시스템(1)은 토픽에 의거하여 복수의 송신 장치(200)로부터의 데이터를 수집한다. 또한, 같은 ID에 대해 복수 종류의 데이터를 순차적으로 수집한다. 그 때문에 송신 장치(200)가 데이터를 송신할 때에 지정하는 토픽 및 데이터명의 관리가 중요하게 되어 온다.
예를 들면 도 6에 도시하는 바와 같은 정보 처리 시스템(1)을 구축함에 있어서, 송신 장치(200)의 데이터 송신 모듈(250)에는 토픽 및 데이터명이 설정된다. 도 6에 도시하는 바와 같이 송신 장치(200-1) 및 송신 장치(200-2)에 대해 동일한 토픽(52)(도 6에 도시하는 예에서는 「공정 1」) 및 ID(도 6에 도시하는 예에서는 워크(10)에 부여되어 있는 2차원 코드(12)로부터 판독되는 값)를 설정함과 함께, 송신 장치(200-1)에 대해서는 데이터명으로서 「시작 시각」을 설정하고 송신 장치(200-1)에 대해서는 데이터명으로서 「종료 시각」을 설정함으로써 서버 장치(100)에서의 데이터의 집약 및 연산을 실현한다.
한편으로, 복수의 송신 장치(200)가 각각 독립하여 데이터를 송신하는 방식을 채용하기 때문에 대응시켜야 할 것이 아닌 복수의 송신 장치(200) 사이에서 의도하지 않게 동일한 토픽이 설정되어 버릴 가능성이 있다. 그 때문에 토픽을 설정할 때에는 중복의 유무 등을 확인하는 것이 바람직하다. 마찬가지로 데이터명을 설정할 때에도 중복의 유무 등을 확인하는 것이 바람직하다.
보다 구체적으로는 데이터 송신 모듈(250)에 대해 토픽 및/또는 데이터명을 설정할 때, 데이터 송신 모듈(250)이 서버 장치(100)에 대해 설정하고자 하는 토픽 및/또는 데이터명이 이미 다른 데이터 송신 모듈(250)에 의해 사용되고 있는지를 문의한다. 설정하고자 하는 토픽 및/또는 데이터명이 이미 다른 데이터 송신 모듈(250)에 의해 사용되고 있는 경우에는 유저에 대해 통지를 행함으로써 설정의 잘못 등을 방지할 수 있다.
도 9는 본 실시의 형태에 따르는 정보 처리 시스템(1)의 관리 처리를 설명하기 위한 모식도이다. 도 9를 참조하면 서버 장치(100)의 데이터 관리 모듈(152)은 등록 관리 기능(156)을 갖고 있다. 데이터 관리 모듈(152)의 등록 관리 기능(156)은 송신 장치(200)에 설정된 토픽 및/또는 데이터명을 기록하기 위한 설정 테이블(170)을 갖고 있다. 데이터 관리 모듈(152)의 등록 관리 기능(156)은 송신 데이터(50)의 송신원인 송신 장치(200)에 토픽 및/또는 데이터명이 설정되면 당해 설정 내용을 설정 테이블(170)에 등록한다.
보다 구체적으로는 송신 장치(200-1)의 데이터 송신 모듈(250-1)은 토픽 및/또는 데이터명의 설정을 접수하기 위한 인터페이스를 유저에게 제공한다. 도 9에는 설정 윈도우(260)의 예를 나타낸다. 유저는 설정 윈도우(260)의 입력 창(262)에 대해 설정을 희망하는 토픽의 값(예를 들면 「공정 1」)을 입력한다. 그러면 송신 장치(200-1)의 데이터 송신 모듈(250-1)은 유저가 설정한 내용을 서버 장치(100)에 송신한다.
데이터 관리 모듈(152)의 등록 관리 기능(156)은 송신 장치(200-1)의 데이터 송신 모듈(250-1)로부터의 설정 내용을 설정 테이블(170)에 등록한다. 이와 같이 데이터 관리 모듈(152)의 등록 관리 기능(156)이 송신 장치(200-1)로부터 송신되는 토픽 및/또는 데이터명을 관리함으로써 중복의 유무 등 문의에 응답할 수 있다. 설명의 편의상, 도 9에는 토픽을 설정하는 설정 윈도우(260)를 나타내지만, 데이터명을 설정할 수 있도록 해도 좋다.
그 후, 유저가 송신 장치(200-1)에 대해 토픽을 설정하는 경우를 상정한다. 이 경우에도 송신 장치(200-1)의 데이터 송신 모듈(250-1)은 설정 윈도우(260)를 유저에게 제시하고 유저는 설정 윈도우(260)의 입력 창(262)에 대해 설정을 희망하는 토픽의 값(예를 들면 「공정 1」)을 입력한다. 그러면 송신 장치(200-2)의 데이터 송신 모듈(250-2)은 유저가 설정한 내용을 서버 장치(100)에 송신한다.
데이터 관리 모듈(152)의 등록 관리 기능(156)은 설정 테이블(170)을 참조하여 송신 장치(200-2)의 데이터 송신 모듈(250-2)로부터의 설정 내용과 동일한 내용이 등록되어 있는지의 여부를 판단한다. 데이터 관리 모듈(152)의 등록 관리 기능(156)은 데이터 송신 모듈(250-2)로부터의 설정 내용과 동일한 내용이 등록 완료인지의 여부를 송신 장치(200-2)의 데이터 송신 모듈(250-2)에 응답한다.
송신 장치(200-2)의 데이터 송신 모듈(250-2)은 유저가 설정한 내용이 이미 등록되어 있으면 그 취지를 통지한다. 예를 들면 설정 내용이 이미 등록되어 있는 취지를 통지하는 통지 윈도우(264)를 표시해도 좋다.
이와 같이 데이터 관리 모듈(152)의 등록 관리 기능(156)은 데이터 송신 모듈(250)(송신 장치(200))에 설정된 토픽과 동일한 토픽이 데이터베이스(160)에 이미 존재하는지의 여부를 판단한다. 또는 데이터 관리 모듈(152)의 등록 관리 기능(156)은 데이터 송신 모듈(250)(송신 장치(200))이 송신하는 송신 데이터(50)에 포함되는 하나 또는 복수의 값(58)의 데이터명과 동일한 데이터명이 데이터베이스(160)에 이미 존재하는지의 여부를 판단해도 좋다.
이와 같은 관리 기능을 실장함으로써 토픽 및/또는 데이터명에 관한 설정의 잘못 등을 방지할 수 있다.
도 10은 본 실시의 형태에 따르는 정보 처리 시스템(1)의 관리 처리에 관한 처리 순서를 도시하는 시퀀스도이다.
도 10을 참조하면 송신 장치(200)(데이터 송신 모듈(250))는 유저로부터 토픽 및/또는 데이터명에 관한 설정을 접수하면(시퀀스 SQ200) 접수한 설정 내용을 서버 장치(100)(데이터 관리 모듈(152)의 등록 관리 기능(156))에 송신한다(시퀀스 SQ202).
서버 장치(100)는 설정 테이블(170)을 참조하여 송신 장치(200)로부터의 설정 내용과 동일한 내용이 등록되어 있는지의 여부를 판단한다(시퀀스 SQ204). 송신 장치(200)로부터의 설정 내용과 동일한 내용이 등록되어 있지 않으면 서버 장치(100)는 송신 장치(200)로부터의 설정 내용을 설정 테이블(170)에 등록하고(시퀀스 SQ206) 등록 완료를 송신 장치(200)에 통지한다(시퀀스 SQ208).
송신 장치(200)로부터의 설정 내용과 동일한 내용이 등록되어 있으면 서버 장치(100)는 설정 내용이 중복되어 있는 취지를 송신 장치(200)에 통지한다(시퀀스 SQ210). 송신 장치(200)는 설정 내용이 이미 등록되어 있는 것을 유저에게 통지한다(시퀀스 SQ212).
송신 장치(200)는 유저로부터 설정 내용의 등록의 속행을 지시되면(시퀀스 SQ214), 등록의 속행을 서버 장치(100)에 통지한다(시퀀스 SQ216). 서버 장치(100)는 송신 장치(200)로부터의 등록의 속행의 통지에 따라 송신 장치(200)로부터의 설정 내용을 설정 테이블(170)에 등록한다(시퀀스 SQ218).
<F. 집계 기능>
다음에 본 실시의 형태에 따르는 정보 처리 시스템(1)의 집계 기능의 한 예에 관해 설명한다.
경영자나 관리자 등이 생산 현장의 KPI(Key Performance Indicators) 등을 감시하고 싶은 경우에는 복수의 라인 전체의 생산성, 품질, 설비 가동률, 사용 에너지 등을 부감(俯瞰)하여 집계할 필요가 있다. 이와 같은 복수 라인의 생산 상황을 용이하게 집계할 수 있는 구조가 유익하다. 이하, 이와 같은 집계 기능의 한 예에 관해 설명한다.
도 11은 본 실시의 형태에 따르는 정보 처리 시스템(1)의 집계 처리를 설명하기 위한 모식도이다. 도 11에는 각 라인의 불량수를 서브 토픽에 대응되어진 데이터로서 수집함과 함께, 라인 전체의 불량수의 합계를 친(親) 토픽으로서 지정함으로써 집계하는 예를 나타낸다. 한 예로서 「라인 1」, 「라인 2」, 「라인 3」이라는 3개의 라인이 「플로어 2」에 존재하는 경우를 나타낸다.
도 11을 참조하면 각 라인을 제어하는 제어 장치(PLC: Programmable Logic Controller)가 송신 장치(200-5, 200-6, 200-7)로서 기능한다. 송신 장치(200-5, 200-6, 200-7)의 각각은 담당하는 라인에 발생한 불량수를 카운트하고 카운트한 불량수를 데이터(54-5, 54-6, 54-7)로서 포함하는 송신 데이터(50-5, 50-6, 50-7)를 서버 장치(100)에 송신한다.
송신 데이터(50-5, 50-6, 50-7)에 포함되는 토픽(52-5, 52-6, 52-7)의 각각은 대상의 플로어 및 라인을 계층 구조로 지정하는 것으로 되어 있다. 보다 구체적으로는 송신 데이터(50-5)의 토픽(52-5)은 「플로어 2/라인 1」이고, 송신 데이터(50-6)의 토픽(52-6)은 「플로어 2/라인 2」이고, 송신 데이터(50-7)의 토픽(52-7)은 「플로어 2/라인 3」이다.
서버 장치(100)의 데이터베이스(160)는 각각의 토픽(52)에 대응한 테이블(162-3, 162-4, 162-5)을 격납하고 있다. 테이블(162-3, 162-4, 162-5)에는 각각 「플로어 2/라인 1」, 「플로어 2/라인 2」, 「플로어 2/라인 3」이 토픽으로서 부여되어 있다. 데이터 관리 모듈(152)은 송신 장치(200-5, 200-6, 200-7)로부터 수신하는 송신 데이터(50-5, 50-6, 50-7)를 포함되는 토픽(52)에 대응하는 테이블(162)에 격납한다. 도 11에 도시하는 예에서는 「불량수」의 칼럼에 데이터(54)에 포함되는 불량수의 값이 격납된다.
서버 장치(100)의 데이터 관리 모듈(152)은 집계 기능(158)을 갖고 있다. 데이터 관리 모듈(152)의 집계 기능(158)은 집계 요구(184)에 응하여 하나 또는 복수의 테이블(162)에 격납되어 있는 데이터를 검색하여 집계한다. 특히, 집계 기능(158)은 토픽의 계층 구조에 의거하여 대상이 되는 데이터를 추출함과 함께, 추출한 데이터에 대해 지정된 집계 처리를 실행함으로써 집계 결과를 생성한다.
예를 들면 정보 처리 장치(300)가 서버 장치(100)에 대해 집계 요구(184)를 송신했다고 한다. 또한, 정보 처리 장치(300)는 집계 요구(184)의 내용을 설정하기 위한 설정 윈도우를 표시해도 좋다.
보다 구체적으로는 집계 요구(184)는 토픽(1841)과, 키(1842)와, 집계 방법(1843)를 포함한다.
토픽(1841)에는 「플로어 2/+」가 지정되어 있다. 여기서, 「+」는 와일드 카드를 의미한다. 이와 같이 집계 요구(184)는 대상 토픽을 지정하기 위한 와일드 카드를 이용한 기술(記述)을 포함하고 있어도 좋다. 키(1842)에는 「불량수」가 지정되어 있고, 집계 방법(1843)에는 「합계」가 지정되어 있다.
데이터 관리 모듈(152)의 집계 기능(158)은 데이터베이스(160)에 격납되어 있는 테이블(162) 중 지정된 토픽(1841)인 「플로어 2/+」에 합치하는 테이블을 추출한다. 즉, 「플로어 2/+」는 「플로어」로 시작하는 토픽이 부여되어 있는 모든 테이블(162)을 의미하기 때문에 테이블(162-3, 162-4, 162-5)이 대상으로서 추출된다.
그리고, 데이터 관리 모듈(152)의 집계 기능(158)은 추출한 테이블(162) 중에서 지정된 키(1842)인 「불량수」의 칼럼에 격납되어 있는 값을 각각 추출한다.
최종적으로, 데이터 관리 모듈(152)의 집계 기능(158)은 지정된 집계 방법(1843)인 「합계」에 따라 추출한 각각의 값의 합계를 산출한다. 그리고, 데이터 관리 모듈(152)의 집계 기능(158)은 산출한 불량수의 합계를 집계 결과로서 정보 처리 장치(300)에 응답한다. 정보 처리 장치(300)에는 집계 결과(372)를 포함하는 결과 윈도우(370)가 표시된다.
이와 같이 데이터 관리 모듈(152)의 집계 기능(158)은 집계 요구(184)에 응하여 집계 요구(184)에 의해 지정된 토픽(1841)에 관련시켜진 복수의 값에 대해 집계 요구(184)에 의해 지정된 집계 처리를 실행한다.
이와 같이 계층 구조의 토픽(52)을 이용함으로써 복수의 데이터 소스(예를 들면 라인)에 대해 집계 처리를 용이하게 실현할 수 있다.
또한, 서버 장치(100)는 집계 요구(184)의 수신에 응답하여 집계 처리를 실행하도록 해도 좋다. 즉, 데이터 관리 모듈(152)의 집계 기능(158)은 집계 요구(184)를 수신하면 당해 수신한 집계 요구(184)에 따라 집계 처리를 실행해도 좋다.
한편으로, 데이터 관리 모듈(152)의 집계 기능(158)은 미리 정해진 집계 처리를 정기적으로 실행하고 얻어진 집계 결과를 다른 토픽이 부여된 테이블에 격납하도록 해도 좋다. 예를 들면 1일분의 데이터에 대해 야간의 배치 처리에서 집계함으로써 집계 요구(184)를 수신할 때마다 집계 처리를 실행할 필요가 없어지고, 처리 부하를 저감할 수 있음과 함께, 집계 결과의 응답을 고속화할 수 있다.
도 12는 본 실시의 형태에 따르는 정보 처리 시스템(1)의 집계 처리에 관한 서버 장치(100)가 실행하는 처리 순서를 도시하는 플로우차트이다. 도 12에 도시하는 각 스텝은 전형적으로는 서버 장치(100)의 프로세서(102)가 정보 처리 프로그램(114)을 실행함으로써 실현된다.
도 12를 참조하면 서버 장치(100)는 집계 요구(184)를 수신했는지의 여부를 판단한다(스텝 S300). 집계 요구(184)를 수신하지 않았으면(스텝 S300에서 NO), 스텝 S300의 처리가 반복된다.
집계 요구(184)를 수신했으면(스텝 S300에서 YES), 서버 장치(100)는 집계 요구(184)에 포함되는 토픽(1841)에 의거하여 대상의 테이블(162)을 추출한다(스텝 S302). 그리고, 서버 장치(100)는 추출한 하나 또는 복수의 테이블(162) 중 집계 요구(184)에 포함되는 키(1842)에 의해 지정된 칼럼에 격납되어 있는 값을 추출한다(스텝 S304). 또한, 서버 장치(100)는 집계 요구(184)에 포함되는 집계 방법(1843)에 따라 추출한 값에 관해 집계 처리를 실행하여 집계 결과를 생성한다(스텝 S306). 그리고, 서버 장치(100)는 생성한 집계 결과를 집계 요구(184)의 송신원에 응답한다(스텝 S308).
<G. 이점>
생산 현장에서는 다양한 장치 및 센서가 분산 배치되어 있고, 또한 많은 작업자가 생산 리소스로서 분산 배치되어 있다. 이들이 조합되어 생산 시스템 및 조직이 구성된다. 복수의 생산 시스템 및 조직이 연휴함으로써 생산활동이 행해진다. 생산 현장에서의 생산활동은 「사물」을 만들어냄과 함께, 많은 「데이터」도 만들어낸다.
분산 배치된 생산 리소스로부터 데이터는 만들어지기 때문에 만들어지는 데이터도 공간적 및 시간적으로 분산되게 된다. 생산 개선의 이용을 위해, 이와 같은 시간적 및 공간적으로 분산된 데이터를 수집하려고 하면 서로 관련되는 데이터를 집약함과 함께, 집계 등의 처리가 필요해진다.
또한, 생산 리소스(장치, 센서, 작업원 등)는 생산의 상황에 응하여 수시로 변경되는 일이 많기 때문에 이와 같은 변경에 대해서도 대응이 필요해진다.
본 실시의 형태에 따르는 정보 처리 시스템은 토픽 및 ID를 이용하여 생산 현장에서 취득되는 데이터를 효율적으로 수집할 수 있다. 또한, 토픽 및 ID를 적절히 설정 또는 적절히 변경함으로써 생산 리소스의 변경에 대해서도 유연하게 대응할 수 있다.
본 발명의 실시의 형태에 관해 설명했는데 금회 개시된 실시의 형태는 모든 점에서 예시이고 제한적인 것이 아니라고 생각해야 할 것이다. 본 발명의 범위는 청구의 범위에 의해 나타나고, 청구의 범위와 균등한 의미 및 범위 내에서의 모든 변경이 포함되는 것이 의도된다.

Claims (13)

  1. 정보 처리 시스템으로서,
    하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터를 송신하는 송신부와,
    토픽마다 구분된 데이터베이스와,
    상기 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정함과 함께, 상기 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 데이터 관리부를 구비하고,
    상기 데이터 관리부는, 상기 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 상기 데이터베이스에 격납되어 있는 경우에는 상기 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜 상기 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납하는 것을 특징으로 하는 정보 처리 시스템.
  2. 제1항에 있어서,
    상기 데이터 관리부는 상기 송신 데이터에 포함되는 토픽에 대응되어진 데이터의 격납처가 존재하지 않는 경우에 당해 토픽에 대응되어진 데이터의 격납처를 새롭게 생성하는 것을 특징으로 하는 정보 처리 시스템.
  3. 제1항에 있어서,
    상기 데이터 관리부는 상기 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 상기 데이터베이스에 격납되지 않은 경우에는 당해 식별 정보에 대응되어진 값을 격납하기 위한 새로운 레코드를 추가하는 것을 특징으로 하는 정보 처리 시스템.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 데이터 관리부는 상기 송신 데이터에 포함되는 값의 데이터명을 격납하는 칼럼이 존재하지 않는 경우에는 당해 데이터명의 값을 격납하기 위한 새로운 칼럼을 추가하는 것을 특징으로 하는 정보 처리 시스템.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 데이터 관리부는 동일한 식별 정보에 대응되어진 복수의 값에 관해 미리 정해진 연산을 실행하여 새로운 값을 추가하는 것을 특징으로 하는 정보 처리 시스템.
  6. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 데이터 관리부는 상기 송신부에 설정된 토픽과 동일한 토픽이 상기 데이터베이스에 이미 존재하는지의 여부를 판단하는 것을 특징으로 하는 정보 처리 시스템.
  7. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 데이터 관리부는 상기 송신부가 송신하는 송신 데이터에 포함되는 하나 또는 복수의 값의 데이터명과 동일한 데이터명이 상기 데이터베이스에 이미 존재하는지의 여부를 판단하는 것을 특징으로 하는 정보 처리 시스템.
  8. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 토픽은 계층 구조로 기술되는 것을 특징으로 하는 정보 처리 시스템.
  9. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 데이터 관리부는 집계 요구에 따라 당해 집계 요구에 의해 지정된 토픽에 관련시켜진 복수의 값에 대해 당해 집계 요구에 의해 지정된 집계 처리를 실행하는 것을 특징으로 하는 정보 처리 시스템.
  10. 제9항에 있어서,
    상기 집계 요구는 대상 토픽을 지정하기 위한 와일드 카드를 이용한 기술을 포함하는 것을 특징으로 하는 정보 처리 시스템.
  11. 제9항에 있어서,
    상기 데이터 관리부는 상기 집계 요구를 수신하면 당해 수신한 집계 요구에 따라 상기 집계 처리를 실행하는 것을 특징으로 하는 정보 처리 시스템.
  12. 토픽마다 구분된 데이터베이스를 관리하는 스텝과,
    하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터를 송신하는 스텝과,
    상기 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정하는 스텝과,
    상기 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 스텝을 구비하며,
    상기 격납하는 스텝은, 상기 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 상기 데이터베이스에 격납되어 있는 경우에는 상기 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜 상기 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납하는 스텝을 포함하는 것을 특징으로 하는 정보 처리 방법.
  13. 정보 처리 프로그램을 격납한 기록 매체로서 상기 정보 처리 프로그램은 컴퓨터에 토픽마다 구분된 데이터베이스를 관리하는 스텝과,
    하나 또는 복수의 값 및 당해 하나 또는 복수의 값에 대응되어진 식별 정보를 포함하는 데이터와, 당해 데이터의 속성을 나타내는 토픽을 포함하는 송신 데이터에 응답하여 상기 송신 데이터에 포함되는 토픽에 의거하여 데이터의 격납처를 특정하는 스텝과,
    상기 송신 데이터에 포함되는 데이터를 당해 특정한 데이터의 격납처에 격납하는 스텝을 실행시키고,
    상기 격납하는 스텝은, 상기 송신 데이터에 포함되는 식별 정보와 동일한 식별 정보에 대응되어진 값이 이미 상기 데이터베이스에 격납되어 있는 경우에는 상기 데이터베이스에 이미 격납되어 있는 식별 정보에 대응시켜서 상기 송신 데이터에 포함되는 데이터에 포함되는 하나 또는 복수의 값을 격납하는 스텝을 포함하는 것을 특징으로 하는 정보 처리 프로그램을 격납한 기록 매체.
KR1020220135300A 2021-11-18 2022-10-20 정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체 KR20230073093A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021187662A JP2023074641A (ja) 2021-11-18 2021-11-18 情報処理システム、情報処理方法および情報処理プログラム
JPJP-P-2021-187662 2021-11-18

Publications (1)

Publication Number Publication Date
KR20230073093A true KR20230073093A (ko) 2023-05-25

Family

ID=83995173

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220135300A KR20230073093A (ko) 2021-11-18 2022-10-20 정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체

Country Status (5)

Country Link
US (1) US20230156085A1 (ko)
EP (1) EP4184343A1 (ko)
JP (1) JP2023074641A (ko)
KR (1) KR20230073093A (ko)
CN (1) CN116136794A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102640115B1 (ko) * 2023-05-19 2024-02-23 쿠팡 주식회사 정보를 제공하는 전자 장치의 동작 방법 및 이를 지원하는 전자 장치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015168091A1 (en) 2014-04-28 2015-11-05 Convida Wireless, Llc Search engine optimization for resource directory
US10754869B2 (en) * 2016-06-03 2020-08-25 Hcl Technologies Limited Managing data format of data received from devices in an internet of things network
US11296935B2 (en) 2016-12-30 2022-04-05 Intel Corporation Service provision to IoT devices
JP7065498B2 (ja) 2018-02-03 2022-05-12 アレグロスマート株式会社 データオーケストレーションプラットフォーム管理
AU2018223056A1 (en) * 2018-08-31 2020-03-19 Jaxsta Enterprise Pty Ltd Data deduplication and data merging
US10775976B1 (en) * 2018-10-01 2020-09-15 Splunk Inc. Visual previews for programming an iterative publish-subscribe message processing system
US10877972B1 (en) * 2020-07-27 2020-12-29 Ja1, Inc. Systems and methods for high efficiency data logging

Also Published As

Publication number Publication date
JP2023074641A (ja) 2023-05-30
US20230156085A1 (en) 2023-05-18
EP4184343A1 (en) 2023-05-24
CN116136794A (zh) 2023-05-19
TW202321941A (zh) 2023-06-01

Similar Documents

Publication Publication Date Title
US20240104147A1 (en) Real-time monitoring and reporting systems and methods for information access platform
US10319087B2 (en) Control system, control device, image processing device, and control method
US10164847B2 (en) Data transfer monitor system, data transfer monitor method and base system
US11315084B2 (en) Method and system for aggregating diagnostic analyzer related information
US20210319412A1 (en) Method and system to digitally track and monitor an automotive refinish repair process
JPWO2018189845A1 (ja) 作業管理システム及び作業管理方法
US11797950B2 (en) Method and system to digitally track and monitor an automotive refinish repair process
US20190108063A1 (en) Device and method for acquiring values of counters associated with a computational task
KR20230073093A (ko) 정보 처리 시스템, 정보 처리 방법 및 정보 처리 프로그램을 격납한 기록 매체
JP5268589B2 (ja) 情報処理装置及び情報処理装置の運用方法
CN110059070B (zh) 将数据从数据源收集到制造运营管理数据仓库
KR101973328B1 (ko) 하둡 기반 공작기계 환경 데이터의 상관관계 분석 및 시각화 방법
JP6070799B1 (ja) 通信情報算出装置、通信情報算出方法、通信情報算出プログラム、及び、通信管理システム
KR102169420B1 (ko) 행동 특징량 해석 시스템 및 행동 특징량 해석 방법
EP3835970A1 (en) A method of visualizing a time series relation
KR20230073094A (ko) 정보 처리 시스템 및 정보 처리 방법
US10455001B2 (en) Support device
US20210232697A1 (en) Computer system and data access control method
JP2020166504A (ja) データ提供システムおよびデータアクセス方法
JP2023029171A (ja) ログ管理システム、ログ管理装置、ログ管理方法、及びプログラム
JP2021077250A (ja) 対象物情報管理装置および対象物情報管理方法
CN104834662A (zh) 管理方法、管理设备和管理***
JP2015176179A (ja) 機器管理システム、装置、および方法